Merge branch 'master' into mono4-continuations_fix
authorKelly Washington <kelly@lindenlab.com>
Fri, 8 Jul 2016 16:20:07 +0000 (16:20 +0000)
committerKelly Washington <kelly@lindenlab.com>
Fri, 8 Jul 2016 16:20:07 +0000 (16:20 +0000)
1219 files changed:
Makefile.am
README.md
acceptance-tests/Makefile.am
acceptance-tests/SUBMODULES.json
acceptance-tests/versions.mk
acceptance-tests/versions.py [deleted file]
autogen.sh
build-libs.bat [new file with mode: 0644]
build-libs.sh [new file with mode: 0755]
configure.ac
eglib/configure.ac
eglib/src/eglib-config.h.in
eglib/src/eglib-config.hw
eglib/src/glib.h
eglib/src/gunicode.c
external/ikvm
external/nunit-lite
libgc/win32_threads.c
llvm/.gitignore [new file with mode: 0644]
llvm/Makefile.am [new file with mode: 0644]
llvm/SUBMODULES.json [new file with mode: 0644]
m4/nls.m4
man/mkbundle.1
man/mono.1
mcs/.gitignore
mcs/build/README.makefiles
mcs/build/executable.make
mcs/build/library.make
mcs/build/profiles/basic.make
mcs/build/profiles/build.make
mcs/build/profiles/mobile.make
mcs/build/profiles/mobile_static.make
mcs/build/profiles/monodroid.make
mcs/build/profiles/monotouch_runtime.make
mcs/build/profiles/net_4_x.make
mcs/build/profiles/xammac.make
mcs/build/rules.make
mcs/build/tests.make
mcs/class/Accessibility/Accessibility-net_4_x.csproj
mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj
mcs/class/Cscompmgd/Cscompmgd-net_4_x.csproj
mcs/class/CustomMarshalers/CustomMarshalers-net_4_x.csproj
mcs/class/Facades/Microsoft.Win32.Primitives/Facades_Microsoft.Win32.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/Microsoft.Win32.Registry.AccessControl/Facades_Microsoft.Win32.Registry.AccessControl-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/Microsoft.Win32.Registry/Facades_Microsoft.Win32.Registry-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.AppContext/Facades_System.AppContext-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Collections.Concurrent/Facades_System.Collections.Concurrent-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Collections.NonGeneric/Facades_System.Collections.NonGeneric-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Collections.Specialized/Facades_System.Collections.Specialized-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Collections/Facades_System.Collections-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ComponentModel.Annotations/Facades_System.ComponentModel.Annotations-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ComponentModel.EventBasedAsync/Facades_System.ComponentModel.EventBasedAsync-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ComponentModel.Primitives/Facades_System.ComponentModel.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ComponentModel.TypeConverter/Facades_System.ComponentModel.TypeConverter-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ComponentModel/Facades_System.ComponentModel-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Console/Facades_System.Console-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Data.Common/Facades_System.Data.Common-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Data.SqlClient/Facades_System.Data.SqlClient-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Contracts/Facades_System.Diagnostics.Contracts-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Debug/Facades_System.Diagnostics.Debug-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.FileVersionInfo/Facades_System.Diagnostics.FileVersionInfo-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.PerformanceCounter/Facades_System.Diagnostics.PerformanceCounter-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Process/Facades_System.Diagnostics.Process-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.StackTrace/Facades_System.Diagnostics.StackTrace-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.TextWriterTraceListener/Facades_System.Diagnostics.TextWriterTraceListener-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Tools/Facades_System.Diagnostics.Tools-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.TraceEvent/Facades_System.Diagnostics.TraceEvent-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.TraceSource/Facades_System.Diagnostics.TraceSource-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Tracing/Facades_System.Diagnostics.Tracing-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Diagnostics.Tracing/TypeForwarders.cs
mcs/class/Facades/System.Dynamic.Runtime/Facades_System.Dynamic.Runtime-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Globalization.Calendars/Facades_System.Globalization.Calendars-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Globalization.Extensions/Facades_System.Globalization.Extensions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Globalization/Facades_System.Globalization-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.Compression.ZipFile/Facades_System.IO.Compression.ZipFile-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.FileSystem.AccessControl/Facades_System.IO.FileSystem.AccessControl-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.FileSystem.DriveInfo/Facades_System.IO.FileSystem.DriveInfo-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.FileSystem.Primitives/Facades_System.IO.FileSystem.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.FileSystem.Watcher/Facades_System.IO.FileSystem.Watcher-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.FileSystem/Facades_System.IO.FileSystem-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.IsolatedStorage/Facades_System.IO.IsolatedStorage-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.MemoryMappedFiles/Facades_System.IO.MemoryMappedFiles-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.Pipes/Facades_System.IO.Pipes-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO.UnmanagedMemoryStream/Facades_System.IO.UnmanagedMemoryStream-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.IO/Facades_System.IO-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Linq.Expressions/Facades_System.Linq.Expressions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Linq.Parallel/Facades_System.Linq.Parallel-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Linq.Queryable/Facades_System.Linq.Queryable-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Linq/Facades_System.Linq-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.AuthenticationManager/Facades_System.Net.AuthenticationManager-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Cache/Facades_System.Net.Cache-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Http.WebRequestHandler/Facades_System.Net.Http.WebRequestHandler-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.HttpListener/Facades_System.Net.HttpListener-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Mail/Facades_System.Net.Mail-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.NameResolution/Facades_System.Net.NameResolution-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.NetworkInformation/Facades_System.Net.NetworkInformation-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Primitives/Facades_System.Net.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Requests/Facades_System.Net.Requests-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Security/Facades_System.Net.Security-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.ServicePoint/Facades_System.Net.ServicePoint-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Sockets/Facades_System.Net.Sockets-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.Utilities/Facades_System.Net.Utilities-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.WebHeaderCollection/Facades_System.Net.WebHeaderCollection-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.WebSockets.Client/Facades_System.Net.WebSockets.Client-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Net.WebSockets/Facades_System.Net.WebSockets-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ObjectModel/Facades_System.ObjectModel-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Private.CoreLib.InteropServices/Facades_System.Private.CoreLib.InteropServices-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Private.CoreLib.Threading/Facades_System.Private.CoreLib.Threading-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.ILGeneration/Facades_System.Reflection.Emit.ILGeneration-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit.Lightweight/Facades_System.Reflection.Emit.Lightweight-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Emit/Facades_System.Reflection.Emit-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Extensions/Facades_System.Reflection.Extensions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.Primitives/Facades_System.Reflection.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection.TypeExtensions/Facades_System.Reflection.TypeExtensions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Reflection/Facades_System.Reflection-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Resources.ReaderWriter/Facades_System.Resources.ReaderWriter-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Resources.ResourceManager/Facades_System.Resources.ResourceManager-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.CompilerServices.VisualC/Facades_System.Runtime.CompilerServices.VisualC-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Extensions/Facades_System.Runtime.Extensions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Handles/Facades_System.Runtime.Handles-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.InteropServices.WindowsRuntime/Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.InteropServices/Facades_System.Runtime.InteropServices-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Numerics/Facades_System.Runtime.Numerics-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Serialization.Json/Facades_System.Runtime.Serialization.Json-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Serialization.Primitives/Facades_System.Runtime.Serialization.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime.Serialization.Xml/Facades_System.Runtime.Serialization.Xml-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Runtime/Facades_System.Runtime-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.AccessControl/Facades_System.Security.AccessControl-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Claims/Facades_System.Security.Claims-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.DeriveBytes/Facades_System.Security.Cryptography.DeriveBytes-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Encoding/Facades_System.Security.Cryptography.Encoding-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Encryption.Aes/Facades_System.Security.Cryptography.Encryption.Aes-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman/Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Encryption.ECDsa/Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Encryption/Facades_System.Security.Cryptography.Encryption-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Hashing.Algorithms/Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.Hashing/Facades_System.Security.Cryptography.Hashing-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.ProtectedData/Facades_System.Security.Cryptography.ProtectedData-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.RSA/Facades_System.Security.Cryptography.RSA-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.RandomNumberGenerator/Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Cryptography.X509Certificates/Facades_System.Security.Cryptography.X509Certificates-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Principal.Windows/Facades_System.Security.Principal.Windows-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.Principal/Facades_System.Security.Principal-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Security.SecureString/Facades_System.Security.SecureString-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceModel.Duplex/Facades_System.ServiceModel.Duplex-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceModel.Http/Facades_System.ServiceModel.Http-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceModel.NetTcp/Facades_System.ServiceModel.NetTcp-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceModel.Primitives/Facades_System.ServiceModel.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceModel.Security/Facades_System.ServiceModel.Security-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.ServiceProcess.ServiceController/Facades_System.ServiceProcess.ServiceController-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Text.Encoding.Extensions/Facades_System.Text.Encoding.Extensions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Text.Encoding/Facades_System.Text.Encoding-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Text.RegularExpressions/Facades_System.Text.RegularExpressions-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.AccessControl/Facades_System.Threading.AccessControl-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.Overlapped/Facades_System.Threading.Overlapped-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.Tasks.Parallel/Facades_System.Threading.Tasks.Parallel-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.Tasks/Facades_System.Threading.Tasks-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.Thread/Facades_System.Threading.Thread-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.ThreadPool/Facades_System.Threading.ThreadPool-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading.Timer/Facades_System.Threading.Timer-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Threading/Facades_System.Threading-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.ReaderWriter/Facades_System.Xml.ReaderWriter-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.XDocument/Facades_System.Xml.XDocument-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.XPath.XDocument/Facades_System.Xml.XPath.XDocument-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.XPath/Facades_System.Xml.XPath-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.XmlDocument/Facades_System.Xml.XmlDocument-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.XmlSerializer/Facades_System.Xml.XmlSerializer-net_4_x.csproj [new file with mode: 0644]
mcs/class/Facades/System.Xml.Xsl.Primitives/Facades_System.Xml.Xsl.Primitives-net_4_x.csproj [new file with mode: 0644]
mcs/class/I18N/CJK/I18N.CJK-net_4_x.csproj
mcs/class/I18N/Common/I18N-net_4_x.csproj
mcs/class/I18N/MidEast/I18N.MidEast-net_4_x.csproj
mcs/class/I18N/Other/I18N.Other-net_4_x.csproj
mcs/class/I18N/Rare/I18N.Rare-net_4_x.csproj
mcs/class/I18N/West/I18N.West-net_4_x.csproj
mcs/class/IBM.Data.DB2/IBM.Data.DB2-net_4_x.csproj
mcs/class/ICSharpCode.SharpZipLib/ICSharpCode.SharpZipLib-net_4_x.csproj
mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_x.csproj
mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework-net_4_x.csproj
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks-net_4_x.csproj
mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/ResolveAssemblyReference.cs
mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities-net_4_x.csproj
mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/ProcessWrapper.cs
mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj
mcs/class/Microsoft.CSharp/Microsoft.CSharp-net_4_x.csproj
mcs/class/Microsoft.VisualC/Microsoft.VisualC-net_4_x.csproj
mcs/class/Microsoft.Web.Infrastructure/Assembly/AssemblyInfo.cs
mcs/class/Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj
mcs/class/Mono.C5/Mono.C5-net_4_x.csproj
mcs/class/Mono.CSharp/Mono.CSharp-net_4_x.csproj
mcs/class/Mono.CSharp/Test/Evaluator/ExpressionsTest.cs
mcs/class/Mono.Cairo/Mono.Cairo-net_4_x.csproj
mcs/class/Mono.Cecil.Mdb/Mono.Cecil.Mdb-net_4_x.csproj
mcs/class/Mono.Cecil/Mono.Cecil-net_4_x.csproj
mcs/class/Mono.CodeContracts/Mono.CodeContracts-net_4_x.csproj
mcs/class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj
mcs/class/Mono.Data.Sqlite/Makefile
mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj
mcs/class/Mono.Data.Sqlite/Test/SqliteDataReaderTest.cs
mcs/class/Mono.Data.Sqlite/Test/SqliteParameterUnitTests.cs
mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.sources [new file with mode: 0644]
mcs/class/Mono.Data.Sqlite/resources/SR.resx
mcs/class/Mono.Data.Tds/Mono.Data.Tds-net_4_x.csproj
mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft-net_4_x.csproj
mcs/class/Mono.Debugger.Soft/Test/dtest-app.cs
mcs/class/Mono.Debugger.Soft/Test/dtest.cs
mcs/class/Mono.Http/Mono.Http-net_4_x.csproj
mcs/class/Mono.Management/Mono.Management-net_4_x.csproj
mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ-net_4_x.csproj
mcs/class/Mono.Messaging/Mono.Messaging-net_4_x.csproj
mcs/class/Mono.Options/Mono.Options-net_4_x.csproj
mcs/class/Mono.Parallel/Mono.Parallel-net_4_x.csproj
mcs/class/Mono.Posix/Mono.Posix-build.csproj [deleted file]
mcs/class/Mono.Posix/Mono.Posix-net_4_x.csproj
mcs/class/Mono.Posix/Test/Mono.Unix/UnixEncodingTest.cs
mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.sources [new file with mode: 0644]
mcs/class/Mono.Security.Providers.DotNet/Mono.Security.Providers.DotNet-net_4_x.csproj
mcs/class/Mono.Security.Providers.NewSystemSource/Mono.Security.Providers.NewSystemSource-net_4_x.csproj
mcs/class/Mono.Security.Providers.NewTls/Mono.Security.Providers.NewTls-net_4_x.csproj
mcs/class/Mono.Security.Providers.OldTls/Mono.Security.Providers.OldTls-net_4_x.csproj
mcs/class/Mono.Security.Win32/Mono.Security.Win32-net_4_x.csproj
mcs/class/Mono.Security.Win32/Test/Mono.Security.Cryptography/MD2Test.cs
mcs/class/Mono.Security.Win32/Test/Mono.Security.Cryptography/MD4Test.cs
mcs/class/Mono.Security.Win32/Test/Mono.Security.Cryptography/MD5Test.cs
mcs/class/Mono.Security.Win32/Test/Mono.Security.Cryptography/SHA1Test.cs
mcs/class/Mono.Security/Mono.Security-basic.csproj [deleted file]
mcs/class/Mono.Security/Mono.Security-build.csproj [deleted file]
mcs/class/Mono.Security/Mono.Security-net_4_x.csproj
mcs/class/Mono.Security/Mono.Security.Cryptography/RSAManaged.cs
mcs/class/Mono.Security/Mono.Security.Protocol.Tls/CipherSuiteFactory.cs
mcs/class/Mono.Security/Test/Mono.Math/BigIntegerSetTest.cs
mcs/class/Mono.Security/Test/Mono.Math/PrimeTestingTest.cs
mcs/class/Mono.Security/Test/Mono.Math/SearchGeneratorTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Authenticode/PrivateKeyTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Cryptography/CryptoConvertTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Cryptography/DiffieHellmanManagedTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Cryptography/PKCS8Test.cs
mcs/class/Mono.Security/Test/Mono.Security.Protocol.Ntlm/ChallengeResponseTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Protocol.Ntlm/MessageBaseTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Protocol.Ntlm/Type1MessageTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Protocol.Ntlm/Type2MessageTest.cs
mcs/class/Mono.Security/Test/Mono.Security.Protocol.Ntlm/Type3MessageTest.cs
mcs/class/Mono.Security/Test/Mono.Security/StrongNameTest.cs
mcs/class/Mono.Security/Test/tools/tlstest/tlstest.cs
mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.build-failure-exclude.sources [new file with mode: 0644]
mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.sources [new file with mode: 0644]
mcs/class/Mono.Simd/Mono.Simd-net_4_x.csproj
mcs/class/Mono.Tasklets/Mono.Tasklets-net_4_x.csproj
mcs/class/Mono.WebBrowser/Mono.WebBrowser-net_4_x.csproj
mcs/class/Mono.XBuild.Tasks/Mono.XBuild.Tasks-net_4_x.csproj
mcs/class/Novell.Directory.Ldap/Makefile
mcs/class/Novell.Directory.Ldap/Novell.Directory.Ldap-net_4_x.csproj
mcs/class/PEAPI/PEAPI-net_4_x.csproj
mcs/class/RabbitMQ.Client/src/apigen/Apigen.cs
mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj
mcs/class/RabbitMQ.Client/src/client/RabbitMQ.Client-net_4_x.csproj
mcs/class/SMDiagnostics/SMDiagnostics-net_4_x.csproj
mcs/class/System.ComponentModel.Composition.4.5/Makefile
mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj
mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations-net_4_x.csproj
mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.sources [new file with mode: 0644]
mcs/class/System.Configuration.Install/System.Configuration.Install-net_4_x.csproj
mcs/class/System.Configuration/System.Configuration-net_4_x.csproj
mcs/class/System.Core/System.Core-basic.csproj [deleted file]
mcs/class/System.Core/System.Core-build.csproj [deleted file]
mcs/class/System.Core/System.Core-net_4_x.csproj
mcs/class/System.Core/System.Core-plaincore-build.csproj [deleted file]
mcs/class/System.Core/System.Core-plaincore-net_4_x.csproj
mcs/class/System.Core/Test/System.IO.MemoryMappedFiles/MemoryMappedFileTest.cs
mcs/class/System.Core/mobile_static_System.Core_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System.Core/mobile_static_System.Core_test.dll.excludes [deleted file]
mcs/class/System.Core/monodroid_System.Core_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System.Core/monodroid_System.Core_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/System.Core/monodroid_System.Core_test.dll.sources [new file with mode: 0644]
mcs/class/System.Data.DataSetExtensions/System.Data.DataSetExtensions-net_4_x.csproj
mcs/class/System.Data.Entity/System.Data.Entity-net_4_x.csproj
mcs/class/System.Data.Linq/System.Data.Linq-net_4_x.csproj
mcs/class/System.Data.OracleClient/System.Data.OracleClient-net_4_x.csproj
mcs/class/System.Data.Services.Client/Makefile
mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj
mcs/class/System.Data.Services/System.Data.Services-net_4_x.csproj
mcs/class/System.Data/System.Data-net_4_x.csproj
mcs/class/System.Data/Test/System.Data/ConstraintCollectionTest2.cs
mcs/class/System.Data/Test/System.Data/DataRowTest.cs
mcs/class/System.Data/Test/System.Data/DataRowViewTest.cs
mcs/class/System.Data/Test/System.Data/DataTableCollectionTest.cs
mcs/class/System.Data/Test/System.Data/DataViewManagerTest.cs
mcs/class/System.Data/Test/System.Data/DataViewTest.cs
mcs/class/System.Data/Test/System.Data/ForeignKeyConstraintTest.cs
mcs/class/System.Data/Test/System.Xml/XmlDataDocumentTest2.cs
mcs/class/System.Data/mobile_static_System.Data_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System.Data/mobile_static_System.Data_test.dll.excludes [deleted file]
mcs/class/System.Deployment/System.Deployment-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.Design/Makefile
mcs/class/System.Design/System.Design-net_4_x.csproj
mcs/class/System.Design/System.Design-plaindesign-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.DirectoryServices.Protocols/System.DirectoryServices.Protocols-net_4_x.csproj
mcs/class/System.DirectoryServices/System.DirectoryServices-net_4_x.csproj
mcs/class/System.Drawing.Design/System.Drawing.Design-net_4_x.csproj
mcs/class/System.Drawing/System.Drawing-net_4_x.csproj
mcs/class/System.Drawing/Test/System.Drawing.Imaging/PngCodecTest.cs
mcs/class/System.Dynamic/System.Dynamic-net_4_x.csproj
mcs/class/System.EnterpriseServices/System.EnterpriseServices-net_4_x.csproj
mcs/class/System.IO.Compression.FileSystem/System.IO.Compression.FileSystem-net_4_x.csproj
mcs/class/System.IO.Compression.FileSystem/Test/System.IO.Compression.FileSystem/ZipTest.cs
mcs/class/System.IO.Compression.FileSystem/ZipFileExtensions.cs
mcs/class/System.IO.Compression/SharpCompress/Archive/Zip/ZipArchiveEntry.cs
mcs/class/System.IO.Compression/SharpCompress/Archive/Zip/ZipWritableArchiveEntry.cs
mcs/class/System.IO.Compression/SharpCompress/Common/Zip/ZipEntry.cs
mcs/class/System.IO.Compression/SharpCompress/IO/ReadOnlySubStream.cs
mcs/class/System.IO.Compression/SharpCompress/Writer/Zip/ZipCentralDirectoryEntry.cs
mcs/class/System.IO.Compression/System.IO.Compression-net_4_x.csproj
mcs/class/System.IO.Compression/Test/System.IO.Compression/ZipTest.cs
mcs/class/System.IO.Compression/ZipArchive.cs
mcs/class/System.IO.Compression/ZipArchiveEntry.cs
mcs/class/System.IO.Compression/test.nupkg [new file with mode: 0644]
mcs/class/System.IdentityModel.Selectors/System.IdentityModel.Selectors-net_4_x.csproj
mcs/class/System.IdentityModel/System.IdentityModel-net_4_x.csproj
mcs/class/System.Json.Microsoft/Makefile
mcs/class/System.Json.Microsoft/System.Json.Microsoft-net_4_x.csproj
mcs/class/System.Json/System.Json-net_4_x.csproj
mcs/class/System.Management/System.Management-net_4_x.csproj
mcs/class/System.Messaging/System.Messaging-net_4_x.csproj
mcs/class/System.Net.Http.Formatting/Makefile
mcs/class/System.Net.Http.Formatting/System.Net.Http.Formatting-net_4_x.csproj
mcs/class/System.Net.Http.WebRequest/System.Net.Http.WebRequest-net_4_x.csproj
mcs/class/System.Net.Http/CFNetworkHandler.cs
mcs/class/System.Net.Http/System.Net.Http-net_4_x.csproj
mcs/class/System.Net.Http/System.Net.Http/HttpClientHandler.cs
mcs/class/System.Net.Http/Test/System.Net.Http/HttpClientTest.cs
mcs/class/System.Net/System.Net-net_4_x.csproj
mcs/class/System.Numerics.Vectors/System.Numerics.Vectors-net_4_x.csproj
mcs/class/System.Numerics/System.Numerics-net_4_x.csproj
mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj
mcs/class/System.Reactive.Debugger/System.Reactive.Debugger-net_4_x.csproj
mcs/class/System.Reactive.Experimental/System.Reactive.Experimental-net_4_x.csproj
mcs/class/System.Reactive.Interfaces/System.Reactive.Interfaces-net_4_x.csproj
mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj
mcs/class/System.Reactive.Observable.Aliases/System.Reactive.Observable.Aliases-net_4_x.csproj
mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj
mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj
mcs/class/System.Reactive.Runtime.Remoting/System.Reactive.Runtime.Remoting-net_4_x.csproj
mcs/class/System.Reactive.Windows.Forms/System.Reactive.Windows.Forms-net_4_x.csproj
mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj
mcs/class/System.Runtime.Caching/System.Runtime.Caching-net_4_x.csproj
mcs/class/System.Runtime.DurableInstancing/System.Runtime.DurableInstancing-net_4_x.csproj
mcs/class/System.Runtime.Remoting/System.Runtime.Remoting-net_4_x.csproj
mcs/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap-net_4_x.csproj
mcs/class/System.Runtime.Serialization.Formatters.Soap/Test/InternalSoapValuesTest.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/Test/SerializationTest.cs
mcs/class/System.Runtime.Serialization.Formatters.Soap/Test/SoapFormatterTest.cs
mcs/class/System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj
mcs/class/System.Security/System.Security-net_4_x.csproj
mcs/class/System.ServiceModel.Activation/System.ServiceModel.Activation-net_4_x.csproj
mcs/class/System.ServiceModel.Discovery/System.ServiceModel.Discovery-net_4_x.csproj
mcs/class/System.ServiceModel.Internals/System.ServiceModel.Internals-net_4_x.csproj
mcs/class/System.ServiceModel.Routing/System.ServiceModel.Routing-net_4_x.csproj
mcs/class/System.ServiceModel.Web/System.ServiceModel.Web-net_4_x.csproj
mcs/class/System.ServiceModel/System.ServiceModel-net_4_x.csproj
mcs/class/System.ServiceModel/System.ServiceModel-plainservice-net_4_x.csproj
mcs/class/System.ServiceProcess/System.ServiceProcess-net_4_x.csproj
mcs/class/System.Threading.Tasks.Dataflow/System.Threading.Tasks.Dataflow-net_4_x.csproj
mcs/class/System.Transactions/System.Transactions-net_4_x.csproj
mcs/class/System.Transactions/System.Transactions.dll.sources
mcs/class/System.Transactions/System.Transactions/TransactionScope.cs
mcs/class/System.Transactions/System.Transactions/TransactionScopeAsyncFlowOption.cs [new file with mode: 0644]
mcs/class/System.Web.Abstractions/System.Web.Abstractions-net_4_x.csproj
mcs/class/System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj
mcs/class/System.Web.DynamicData/System.Web.DynamicData-net_4_x.csproj
mcs/class/System.Web.Extensions.Design/System.Web.Extensions.Design-net_4_x.csproj
mcs/class/System.Web.Extensions/System.Web.Extensions-net_4_x.csproj
mcs/class/System.Web.Http.SelfHost/Makefile
mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost-net_4_x.csproj
mcs/class/System.Web.Http.WebHost/Makefile
mcs/class/System.Web.Http.WebHost/System.Web.Http.WebHost-net_4_x.csproj
mcs/class/System.Web.Http/Makefile
mcs/class/System.Web.Http/System.Web.Http-net_4_x.csproj
mcs/class/System.Web.Mobile/System.Web.Mobile-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.Web.Mvc3/Makefile
mcs/class/System.Web.Mvc3/System.Web.Mvc3-net_4_x.csproj
mcs/class/System.Web.Razor/Makefile
mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj
mcs/class/System.Web.RegularExpressions/System.Web.RegularExpressions-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.Web.Routing/System.Web.Routing-net_4_x.csproj
mcs/class/System.Web.Services/System.Web.Services-net_4_x.csproj
mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.excludes [deleted file]
mcs/class/System.Web.WebPages.Deployment/Makefile
mcs/class/System.Web.WebPages.Deployment/System.Web.WebPages.Deployment-net_4_x.csproj
mcs/class/System.Web.WebPages.Razor/Makefile
mcs/class/System.Web.WebPages.Razor/System.Web.WebPages.Razor-net_4_x.csproj
mcs/class/System.Web.WebPages/Makefile
mcs/class/System.Web.WebPages/System.Web.WebPages-net_4_x.csproj
mcs/class/System.Web/Makefile
mcs/class/System.Web/System.Web-net_4_x.csproj
mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj
mcs/class/System.Web/System.Web.Security/FormsAuthentication.cs
mcs/class/System.Web/System.Web.UI.WebControls/WebControl.cs
mcs/class/System.Web/System.Web.dll.sources
mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization-net_4_x.csproj
mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj
mcs/class/System.Windows.Forms/System.Windows.Forms/Application.cs
mcs/class/System.Windows.Forms/System.Windows.Forms/XplatUIX11.cs
mcs/class/System.Windows/System.Windows-net_4_x.csproj
mcs/class/System.Workflow.Activities/System.Workflow.Activities-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.Workflow.ComponentModel/System.Workflow.ComponentModel-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.Workflow.Runtime/System.Workflow.Runtime-net_4_x.csproj [new file with mode: 0644]
mcs/class/System.XML/System.Xml-bare-build.csproj [deleted file]
mcs/class/System.XML/System.Xml-bare-net_4_x.csproj
mcs/class/System.XML/System.Xml-basic.csproj [deleted file]
mcs/class/System.XML/System.Xml-build.csproj [deleted file]
mcs/class/System.XML/System.Xml-net_4_x.csproj
mcs/class/System.XML/Test/System.Xml/XmlSecureResolverTests.cs
mcs/class/System.Xaml/System.Xaml-net_4_x.csproj
mcs/class/System.Xml.Linq/System.Xml.Linq-net_4_x.csproj
mcs/class/System.Xml.Serialization/System.Xml.Serialization-net_4_x.csproj
mcs/class/System/Makefile
mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs
mcs/class/System/Mono.Net.Security/MonoSslStreamImpl.cs
mcs/class/System/Mono.Net.Security/SystemCertificateValidator.cs
mcs/class/System/ReferenceSources/AutoWebProxyScriptEngine.cs [new file with mode: 0644]
mcs/class/System/ReferenceSources/CAPI.cs [new file with mode: 0644]
mcs/class/System/ReferenceSources/HttpApi.cs [new file with mode: 0644]
mcs/class/System/ReferenceSources/Logging.cs
mcs/class/System/ReferenceSources/NativeMethods.cs
mcs/class/System/ReferenceSources/RequestCacheProtocol.cs [new file with mode: 0644]
mcs/class/System/ReferenceSources/SR2.cs
mcs/class/System/ReferenceSources/SettingsSectionInternal.cs
mcs/class/System/ReferenceSources/SystemNetworkCredential.cs [deleted file]
mcs/class/System/ReferenceSources/WebHeaderCollectionType.cs [deleted file]
mcs/class/System/System-bare-build.csproj [deleted file]
mcs/class/System/System-bare-net_4_x.csproj
mcs/class/System/System-basic.csproj [deleted file]
mcs/class/System/System-build.csproj [deleted file]
mcs/class/System/System-net_4_x.csproj
mcs/class/System/System-secxml-build.csproj [deleted file]
mcs/class/System/System-secxml-net_4_x.csproj
mcs/class/System/System.Configuration/IdnElement.cs
mcs/class/System/System.Net.Configuration/WebRequestModuleHandler.cs
mcs/class/System/System.Net.NetworkInformation/DuplicateAddressDetectionState.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformation.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformationCollection.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/IPAddressCollection.cs
mcs/class/System/System.Net.NetworkInformation/IPAddressInformation.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/IPAddressInformationCollection.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/IPGlobalProperties.cs
mcs/class/System/System.Net.NetworkInformation/IPGlobalStatistics.cs
mcs/class/System/System.Net.NetworkInformation/IPInterfaceProperties.cs
mcs/class/System/System.Net.NetworkInformation/IPStatus.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/IPv4InterfaceProperties.cs
mcs/class/System/System.Net.NetworkInformation/IPv6InterfaceProperties.cs
mcs/class/System/System.Net.NetworkInformation/IcmpV4Statistics.cs
mcs/class/System/System.Net.NetworkInformation/IcmpV6Statistics.cs
mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformation.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformationCollection.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetBiosNodeType.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkAddressChangedEventHandler.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityChangedEventHandler.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityEventArgs.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkChange.cs
mcs/class/System/System.Net.NetworkInformation/NetworkInformationAccess.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkInformationException.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermission.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermissionAttribute.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkInterface.cs
mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceComponent.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceType.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/OperationalStatus.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/PhysicalAddress.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/Ping.cs
mcs/class/System/System.Net.NetworkInformation/PingException.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/PingOptions.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/PingReply.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/PrefixOrigin.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/SuffixOrigin.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/TcpConnectionInformation.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/TcpState.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/TcpStatistics.cs
mcs/class/System/System.Net.NetworkInformation/UdpStatistics.cs
mcs/class/System/System.Net.NetworkInformation/UnicastIPAddressInformation.cs
mcs/class/System/System.Net.NetworkInformation/UnicastIPAddressInformationCollection.cs [deleted file]
mcs/class/System/System.Net.NetworkInformation/Win32NetworkInterfaceMarshal.cs
mcs/class/System/System.Net.Security/EncryptionPolicy.cs
mcs/class/System/System.Net.Sockets/SafeSocketHandle.cs
mcs/class/System/System.Net.Sockets/Socket.cs
mcs/class/System/System.Net/AuthenticationManager.cs
mcs/class/System/System.Net/AuthenticationSchemeSelector.cs [deleted file]
mcs/class/System/System.Net/AuthenticationSchemes.cs [deleted file]
mcs/class/System/System.Net/Authorization.cs [deleted file]
mcs/class/System/System.Net/ConnectionModes.cs [deleted file]
mcs/class/System/System.Net/CredentialCache.cs [deleted file]
mcs/class/System/System.Net/DnsEndPoint.cs [deleted file]
mcs/class/System/System.Net/DownloadProgressChangedEventHandler.cs [deleted file]
mcs/class/System/System.Net/EndPoint.cs [deleted file]
mcs/class/System/System.Net/EndPointListener.cs
mcs/class/System/System.Net/FileWebRequest.cs [deleted file]
mcs/class/System/System.Net/FileWebRequestCreator.cs [deleted file]
mcs/class/System/System.Net/FileWebResponse.cs [deleted file]
mcs/class/System/System.Net/FtpStatusCode.cs [deleted file]
mcs/class/System/System.Net/FtpWebResponse.cs
mcs/class/System/System.Net/GlobalProxySelection.cs [deleted file]
mcs/class/System/System.Net/HttpListenerException.cs [deleted file]
mcs/class/System/System.Net/HttpListenerRequest.cs
mcs/class/System/System.Net/HttpListenerResponse.cs
mcs/class/System/System.Net/HttpRequestHeader.cs [deleted file]
mcs/class/System/System.Net/HttpResponseHeader.cs [deleted file]
mcs/class/System/System.Net/HttpStatusCode.cs [deleted file]
mcs/class/System/System.Net/HttpVersion.cs [deleted file]
mcs/class/System/System.Net/HttpWebRequest.cs
mcs/class/System/System.Net/HttpWebResponse.cs
mcs/class/System/System.Net/IAuthenticationModule.cs [deleted file]
mcs/class/System/System.Net/ICertificatePolicy.cs [deleted file]
mcs/class/System/System.Net/ICredentialLookup.cs [deleted file]
mcs/class/System/System.Net/ICredentialsByHost.cs [deleted file]
mcs/class/System/System.Net/IPAddress.cs [deleted file]
mcs/class/System/System.Net/IPEndPoint.cs [deleted file]
mcs/class/System/System.Net/IPHostEntry.cs [deleted file]
mcs/class/System/System.Net/IPv6Address.cs
mcs/class/System/System.Net/IWebProxy.cs [deleted file]
mcs/class/System/System.Net/IWebRequestCreate.cs [deleted file]
mcs/class/System/System.Net/NetworkAccess.cs [deleted file]
mcs/class/System/System.Net/ProtocolViolationException.cs [deleted file]
mcs/class/System/System.Net/SecurityProtocolType.cs [deleted file]
mcs/class/System/System.Net/ServicePoint.cs
mcs/class/System/System.Net/ServicePointManager.cs
mcs/class/System/System.Net/ServicePointManager.extra.cs
mcs/class/System/System.Net/SocketAddress.cs [deleted file]
mcs/class/System/System.Net/TransportContext.cs [deleted file]
mcs/class/System/System.Net/TransportType.cs [deleted file]
mcs/class/System/System.Net/UploadProgressChangedEventHandler.cs [deleted file]
mcs/class/System/System.Net/WebConnection.cs
mcs/class/System/System.Net/WebConnectionStream.cs
mcs/class/System/System.Net/WebException.cs [deleted file]
mcs/class/System/System.Net/WebExceptionStatus.cs [deleted file]
mcs/class/System/System.Net/WebHeaderCollection.cs [deleted file]
mcs/class/System/System.Net/WebProxy.cs [deleted file]
mcs/class/System/System.Net/WebRequest.cs [deleted file]
mcs/class/System/System.Net/WebRequestMethods.cs [deleted file]
mcs/class/System/System.Net/WebResponse.cs [deleted file]
mcs/class/System/System.Security.AccessControl/SemaphoreSecurity.cs
mcs/class/System/System.Security.Cryptography.X509Certificates/OSX509Certificates.cs
mcs/class/System/System.Security.Cryptography.X509Certificates/X509ChainPolicy.cs
mcs/class/System/System.Security.Cryptography.X509Certificates/X509EnhancedKeyUsageExtension.cs
mcs/class/System/System.Security.Cryptography/AsnEncodedData.cs
mcs/class/System/System.Security.Cryptography/Oid.cs [deleted file]
mcs/class/System/System.Security.Cryptography/OidCollection.cs [deleted file]
mcs/class/System/System.Security.Cryptography/OidEnumerator.cs [deleted file]
mcs/class/System/System.Security.Cryptography/OidGroup.cs [deleted file]
mcs/class/System/System.Threading/Semaphore.cs [deleted file]
mcs/class/System/System.dll.sources
mcs/class/System/System/DefaultUriParser.cs [deleted file]
mcs/class/System/System/FileStyleUriParser.cs [deleted file]
mcs/class/System/System/FtpStyleUriParser.cs [deleted file]
mcs/class/System/System/GenericUriParser.cs [deleted file]
mcs/class/System/System/GenericUriParserOptions.cs [deleted file]
mcs/class/System/System/GopherStyleUriParser.cs [deleted file]
mcs/class/System/System/HttpStyleUriParser.cs [deleted file]
mcs/class/System/System/IUriData.cs [deleted file]
mcs/class/System/System/LdapStyleUriParser.cs [deleted file]
mcs/class/System/System/NetPipeStyleUriParser.cs [deleted file]
mcs/class/System/System/NetTcpStyleUriParser.cs [deleted file]
mcs/class/System/System/NewsStyleUriParser.cs [deleted file]
mcs/class/System/System/Uri.cs [deleted file]
mcs/class/System/System/UriBuilder.cs [deleted file]
mcs/class/System/System/UriData.cs [deleted file]
mcs/class/System/System/UriElements.cs [deleted file]
mcs/class/System/System/UriHelper.cs [deleted file]
mcs/class/System/System/UriParseComponents.cs [deleted file]
mcs/class/System/System/UriParser.cs [deleted file]
mcs/class/System/Test/Microsoft.CSharp/CSharpCodeProviderTest.cs
mcs/class/System/Test/System.ComponentModel.Design.Serialization/InstanceDescriptorTest.cs
mcs/class/System/Test/System.Net.NetworkInformation/PingTest.cs
mcs/class/System/Test/System.Net.Security/SslStreamTest.cs
mcs/class/System/Test/System.Net.Sockets/SocketAsyncTest.cs
mcs/class/System/Test/System.Net.Sockets/SocketTest.cs
mcs/class/System/Test/System.Net/DnsTest.cs
mcs/class/System/Test/System.Net/FileWebRequestTest.cs
mcs/class/System/Test/System.Net/HttpListener2Test.cs
mcs/class/System/Test/System.Net/HttpListenerRequestTest.cs
mcs/class/System/Test/System.Net/HttpWebRequestTest.cs
mcs/class/System/Test/System.Net/IPAddressTest.cs
mcs/class/System/Test/System.Net/ServicePointTest.cs
mcs/class/System/Test/System.Net/WebProxyTest.cs
mcs/class/System/Test/System.Security.Cryptography/OidTest.cs
mcs/class/System/Test/System.Threading/SemaphoreTest.cs
mcs/class/System/Test/System.Timers/TimerTest.cs
mcs/class/System/Test/System/UriBuilderTest.cs
mcs/class/System/Test/System/UriParserTest.cs
mcs/class/System/Test/System/UriTest.cs
mcs/class/System/mobile_System.dll.sources
mcs/class/System/mobile_static_System_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System/mobile_static_System_test.dll.excludes [deleted file]
mcs/class/System/monodroid_System_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/System/monodroid_System_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/System/monodroid_System_test.dll.sources [new file with mode: 0644]
mcs/class/SystemWebTestShim/SystemWebTestShim-net_4_x.csproj
mcs/class/WebMatrix.Data/WebMatrix.Data-net_4_x.csproj
mcs/class/WindowsBase/Makefile
mcs/class/WindowsBase/System.IO.Packaging/Package.cs
mcs/class/WindowsBase/System.IO.Packaging/ZipPackage.cs
mcs/class/WindowsBase/Test/System.IO.Packaging/PackageRelationshipTests.cs
mcs/class/WindowsBase/Test/System.IO.Packaging/PackageTest.cs
mcs/class/WindowsBase/WindowsBase-net_4_x.csproj
mcs/class/WindowsBase/ZipSharp/ZipFileInfo.cs
mcs/class/WindowsBase/ZipSharp/ZipTime.cs
mcs/class/corlib/Mono/RuntimeHandles.cs [new file with mode: 0644]
mcs/class/corlib/Mono/RuntimeStructs.cs [new file with mode: 0644]
mcs/class/corlib/ReferenceSources/RuntimeType.cs
mcs/class/corlib/System.Reflection.Emit/AssemblyBuilder.cs
mcs/class/corlib/System.Reflection/Assembly.cs
mcs/class/corlib/System.Reflection/MonoAssembly.cs
mcs/class/corlib/System.Reflection/MonoMethod.cs
mcs/class/corlib/System.Runtime.InteropServices/ArrayWithOffset.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/AssemblyRegistrationFlags.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/BStrWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/COMException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/CallingConvention.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/CharSet.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ComMemberType.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/CriticalHandle.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/CurrencyWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/DispatchWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ErrorWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ExternalException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/HandleRef.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ICustomAdapter.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ICustomFactory.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ICustomMarshaler.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/IRegistrationServices.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/InvalidComObjectException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/InvalidOleVariantTypeException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/LayoutKind.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/Marshal.cs
mcs/class/corlib/System.Runtime.InteropServices/MarshalDirectiveException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/ObjectCreationDelegate.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/SEHException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/SafeArrayRankMismatchException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/SafeArrayTypeMismatchException.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs
mcs/class/corlib/System.Runtime.InteropServices/UnknownWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.InteropServices/VariantWrapper.cs [deleted file]
mcs/class/corlib/System.Runtime.Remoting.Messaging/MonoMethodMessage.cs
mcs/class/corlib/System.Runtime.Remoting.Proxies/RealProxy.cs
mcs/class/corlib/System.Runtime.Remoting/RemotingServices.cs
mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Helper.Apple.cs
mcs/class/corlib/System.Security.Cryptography.X509Certificates/X509Helper.cs
mcs/class/corlib/System.Security.Policy/Evidence.cs
mcs/class/corlib/System.Security.Policy/PolicyLevel.cs
mcs/class/corlib/System.Security/CodeAccessPermission.cs
mcs/class/corlib/System.Threading/Monitor.cs
mcs/class/corlib/System.Threading/Thread.cs
mcs/class/corlib/System/Environment.cs
mcs/class/corlib/System/MonoCustomAttrs.cs
mcs/class/corlib/System/MonoType.cs
mcs/class/corlib/System/RuntimeTypeHandle.cs
mcs/class/corlib/System/TimeZoneInfo.cs
mcs/class/corlib/Test/Mono.Math/ArithmeticBigTest.cs
mcs/class/corlib/Test/Mono.Math/PrimeTestingTest.cs
mcs/class/corlib/Test/System.Collections/SortedListTest.cs
mcs/class/corlib/Test/System.IO/FileStreamTest.cs
mcs/class/corlib/Test/System.Reflection/AssemblyTest.cs
mcs/class/corlib/Test/System.Security/CodeAccessPermissionTest.cs
mcs/class/corlib/Test/System.Threading/CountdownEventTests.cs
mcs/class/corlib/Test/System.Threading/ExecutionContextCas.cs
mcs/class/corlib/Test/System.Threading/MonitorTest.cs
mcs/class/corlib/Test/System.Threading/ThreadTest.cs
mcs/class/corlib/Test/System/AppDomainTest.cs
mcs/class/corlib/Test/System/ConvertTest.cs
mcs/class/corlib/Test/System/EnvironmentTest.cs
mcs/class/corlib/Test/System/StringTest.cs
mcs/class/corlib/Test/System/TimeZoneInfoTest.cs
mcs/class/corlib/Test/System/TimeZoneTest.cs
mcs/class/corlib/Test/System/TypeTest.cs
mcs/class/corlib/corlib-basic.csproj [deleted file]
mcs/class/corlib/corlib-build.csproj [deleted file]
mcs/class/corlib/corlib-net_4_x.csproj
mcs/class/corlib/corlib.dll.sources
mcs/class/corlib/corlib_cmp.dll.excludes [deleted file]
mcs/class/corlib/mobile_static_corlib_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/corlib/mobile_static_corlib_test.dll.excludes [deleted file]
mcs/class/corlib/monodroid_corlib_test.dll.exclude.sources [new file with mode: 0644]
mcs/class/corlib/monodroid_corlib_test.dll.new-exclude.sources [new file with mode: 0644]
mcs/class/corlib/monodroid_corlib_test.dll.sources [new file with mode: 0644]
mcs/class/doc/NUnitGuidelines
mcs/class/monodoc/monodoc-net_4_x.csproj
mcs/class/reference-assemblies/Makefile
mcs/class/referencesource/System.Data.Linq/misc/SecurityUtils.cs
mcs/class/referencesource/System.Data.SqlXml/System/Xml/Xsl/XsltOld/Compiler.cs
mcs/class/referencesource/System.Data/System/Data/Common/AdapterUtil.cs
mcs/class/referencesource/System.Data/System/Data/XMLSchema.cs
mcs/class/referencesource/System.Runtime.Serialization/System/Runtime/Serialization/ClassDataContract.cs
mcs/class/referencesource/System.Runtime.Serialization/System/Runtime/Serialization/Globals.cs
mcs/class/referencesource/System.Runtime.Serialization/System/Runtime/Serialization/XmlObjectSerializerContext.cs
mcs/class/referencesource/System.Runtime.Serialization/System/Runtime/Serialization/XmlObjectSerializerWriteContext.cs
mcs/class/referencesource/System.ServiceModel.Internals/System/Runtime/PartialTrustHelpers.cs
mcs/class/referencesource/System.Xml/System/Xml/XmlSecureResolver.cs
mcs/class/referencesource/System.Xml/System/Xml/XmlSecureResolverAsync.cs
mcs/class/referencesource/System.Xml/System/Xml/Xslt/XslTransform.cs
mcs/class/referencesource/System/compmod/system/componentmodel/DebugReflectPropertyDescriptor.cs
mcs/class/referencesource/System/compmod/system/componentmodel/DebugTypeDescriptor.cs
mcs/class/referencesource/System/compmod/system/componentmodel/IntSecurity.cs
mcs/class/referencesource/System/compmod/system/componentmodel/ReflectPropertyDescriptor.cs
mcs/class/referencesource/System/compmod/system/componentmodel/ReflectTypeDescriptionProvider.cs
mcs/class/referencesource/System/compmod/system/componentmodel/TypeDescriptor.cs
mcs/class/referencesource/System/compmod/system/componentmodel/Win32Exception.cs
mcs/class/referencesource/System/compmod/system/componentmodel/design/DesigntimeLicenseContext.cs
mcs/class/referencesource/System/compmod/system/diagnostics/Trace.cs
mcs/class/referencesource/System/compmod/system/diagnostics/TraceEventCache.cs
mcs/class/referencesource/System/compmod/system/diagnostics/TraceInternal.cs
mcs/class/referencesource/System/misc/SecurityUtils.cs
mcs/class/referencesource/System/net/System/Net/AuthenticationManager.cs
mcs/class/referencesource/System/net/System/Net/AuthenticationSchemeSelector.cs
mcs/class/referencesource/System/net/System/Net/Authorization.cs
mcs/class/referencesource/System/net/System/Net/Cache/RequestCacheManager.cs
mcs/class/referencesource/System/net/System/Net/Configuration/DefaultProxySection.cs
mcs/class/referencesource/System/net/System/Net/CredentialCache.cs
mcs/class/referencesource/System/net/System/Net/IPAddress.cs
mcs/class/referencesource/System/net/System/Net/Internal.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/IPGlobalProperties.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/NetworkAddressChange.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/NetworkInterface.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/PingOptions.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/PingReply.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/SystemGatewayIPAddressInformation.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/SystemIPAddressInformation.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/SystemIPGlobalProperties.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/SystemTcpConnection.cs
mcs/class/referencesource/System/net/System/Net/NetworkInformation/SystemUnicastIPAddressInformation.cs
mcs/class/referencesource/System/net/System/Net/ServicePoint.cs
mcs/class/referencesource/System/net/System/Net/ServicePointManager.cs
mcs/class/referencesource/System/net/System/Net/WebHeaderCollection.cs
mcs/class/referencesource/System/net/System/Net/WebRequest.cs
mcs/class/referencesource/System/net/System/Net/_Connection.cs
mcs/class/referencesource/System/net/System/Net/_SafeNetHandles.cs
mcs/class/referencesource/System/net/System/Net/_SecureChannel.cs
mcs/class/referencesource/System/net/System/Net/_Semaphore.cs
mcs/class/referencesource/System/net/System/Net/_SpnDictionary.cs
mcs/class/referencesource/System/net/System/Net/_TimerThread.cs
mcs/class/referencesource/System/net/System/Net/filewebrequest.cs
mcs/class/referencesource/System/net/System/Net/webclient.cs
mcs/class/referencesource/System/net/System/Net/webproxy.cs
mcs/class/referencesource/System/net/System/URI.cs
mcs/class/referencesource/System/net/System/UriExt.cs
mcs/class/referencesource/System/net/System/UriScheme.cs
mcs/class/referencesource/System/net/System/_UncName.cs
mcs/class/referencesource/System/regex/system/text/regularexpressions/Regex.cs
mcs/class/referencesource/System/regex/system/text/regularexpressions/RegexCompiler.cs
mcs/class/referencesource/System/regex/system/text/regularexpressions/RegexGroup.cs
mcs/class/referencesource/System/regex/system/text/regularexpressions/RegexMatch.cs
mcs/class/referencesource/System/regex/system/text/regularexpressions/compiledregexrunnerfactory.cs
mcs/class/referencesource/System/security/system/security/cryptography/x509/x509utils.cs
mcs/class/referencesource/System/sys/system/IO/ports/InternalResources.cs
mcs/class/referencesource/System/sys/system/collections/concurrent/ConcurrentBag.cs
mcs/class/referencesource/System/sys/system/threading/semaphore.cs
mcs/class/referencesource/mscorlib/system/exception.cs
mcs/class/referencesource/mscorlib/system/io/__error.cs
mcs/class/referencesource/mscorlib/system/io/fileinfo.cs
mcs/class/referencesource/mscorlib/system/io/filesysteminfo.cs
mcs/class/referencesource/mscorlib/system/io/unmanagedmemorystream.cs
mcs/class/referencesource/mscorlib/system/resources/filebasedresourcegroveler.cs
mcs/class/referencesource/mscorlib/system/resources/resourcewriter.cs
mcs/class/referencesource/mscorlib/system/rttype.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/arraywithoffset.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/criticalhandle.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/dispatchwrapper.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/errorwrapper.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/runtimeenvironment.cs
mcs/class/referencesource/mscorlib/system/runtime/interopservices/safehandle.cs
mcs/class/referencesource/mscorlib/system/runtime/serialization/formatters/binary/binaryobjectreader.cs
mcs/class/referencesource/mscorlib/system/threading/monitor.cs
mcs/errors/cs0121-24.cs [deleted file]
mcs/errors/cs0121-28.cs [new file with mode: 0644]
mcs/ilasm/ilasm-net_4_x.csproj [new file with mode: 0644]
mcs/jay/jay.vcxproj
mcs/mcs/assembly.cs
mcs/mcs/class.cs
mcs/mcs/convert.cs
mcs/mcs/cs-tokenizer.cs
mcs/mcs/ecore.cs
mcs/mcs/ikvm.cs
mcs/mcs/import.cs
mcs/mcs/mcs-net_4_5.csproj [deleted file]
mcs/mcs/mcs-net_4_x.csproj
mcs/mcs/mcs.csproj
mcs/mcs/reflection.cs
mcs/nunit24/ClientUtilities/util/nunit.util-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/ConsoleRunner/nunit-console-exe/nunit-console-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/ConsoleRunner/nunit-console/nunit-console-runner-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitCore/core/Makefile
mcs/nunit24/NUnitCore/core/nunit.core-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitExtensions/core/nunit.core.extensions-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitExtensions/framework/nunit.framework.extensions-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitFramework/framework/Makefile
mcs/nunit24/NUnitFramework/framework/NUnit.Framework-net_4_x.csproj [new file with mode: 0644]
mcs/nunit24/NUnitMocks/mocks/nunit.mocks-net_4_x.csproj [new file with mode: 0644]
mcs/tests/gtest-optional-38.cs [new file with mode: 0644]
mcs/tests/gtest-optional-39.cs [new file with mode: 0644]
mcs/tests/test-935.cs [new file with mode: 0644]
mcs/tests/test-936-lib.il [new file with mode: 0644]
mcs/tests/test-936.cs [new file with mode: 0644]
mcs/tests/test-937.cs [new file with mode: 0644]
mcs/tests/test-debug-30-ref.xml [new file with mode: 0644]
mcs/tests/test-debug-30.cs [new file with mode: 0644]
mcs/tests/test-interpolation-10.cs [new file with mode: 0644]
mcs/tests/ver-il-net_4_x.xml
mcs/tools/al/al-net_4_x.csproj [new file with mode: 0644]
mcs/tools/browsercaps-updater/browsercaps-updater-net_4_x.csproj [new file with mode: 0644]
mcs/tools/cccheck/cccheck-net_4_x.csproj [new file with mode: 0644]
mcs/tools/ccrewrite/ccrewrite-net_4_x.csproj [new file with mode: 0644]
mcs/tools/cil-stringreplacer/cil-stringreplacer-net_4_x.csproj [new file with mode: 0644]
mcs/tools/cil-strip/mono-cil-strip-net_4_x.csproj [new file with mode: 0644]
mcs/tools/commoncryptogenerator/commoncryptogenerator-net_4_x.csproj [new file with mode: 0644]
mcs/tools/compiler-tester/compiler-tester-net_4_x.csproj [new file with mode: 0644]
mcs/tools/corcompare/mono-api-info-net_4_x.csproj [new file with mode: 0644]
mcs/tools/corcompare/mono-api-info.cs
mcs/tools/csharp/csharp-net_4_x.csproj [new file with mode: 0644]
mcs/tools/culevel/culevel-net_4_x.csproj [new file with mode: 0644]
mcs/tools/disco/disco-net_4_x.csproj [new file with mode: 0644]
mcs/tools/dtd2rng/dtd2rng-net_4_x.csproj [new file with mode: 0644]
mcs/tools/dtd2xsd/dtd2xsd-net_4_x.csproj [new file with mode: 0644]
mcs/tools/gacutil/gacutil-net_4_x.csproj [new file with mode: 0644]
mcs/tools/genxs/genxs-net_4_x.csproj [new file with mode: 0644]
mcs/tools/ictool/ictool-net_4_x.csproj [new file with mode: 0644]
mcs/tools/ikdasm/ikdasm-net_4_x.csproj [new file with mode: 0644]
mcs/tools/installutil/installutil-net_4_x.csproj [new file with mode: 0644]
mcs/tools/installvst/installvst-net_4_x.csproj [new file with mode: 0644]
mcs/tools/lc/lc-net_4_x.csproj [new file with mode: 0644]
mcs/tools/linker-analyzer/linkeranalyzer-net_4_x.csproj [new file with mode: 0644]
mcs/tools/linker/Descriptors/mscorlib.xml
mcs/tools/linker/monolinker-net_4_x.csproj [new file with mode: 0644]
mcs/tools/macpack/macpack-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mconfig/Makefile
mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in [deleted file]
mcs/tools/mconfig/mconfig-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mconfig/mconfig.cs
mcs/tools/mdbrebase/Makefile
mcs/tools/mdbrebase/mdbrebase-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mdoc/Makefile
mcs/tools/mdoc/Mono.Documentation/monodocer.cs
mcs/tools/mdoc/Test/DocTest-DropNS-classic.cs
mcs/tools/mdoc/Test/DocTest-DropNS-unified.cs
mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/MyFramework.MyNamespace/MyClass.xml
mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/MyFramework.MyNamespace/MyClassExtensions.xml [new file with mode: 0644]
mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml
mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/MyFramework.MyNamespace/MyClass.xml
mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/MyFramework.MyNamespace/MyClassExtensions.xml [new file with mode: 0644]
mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/MyFramework.MyOtherNamespace/MyOtherClass.xml
mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml
mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/MyClass.xml
mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/MyClassExtensions.xml [new file with mode: 0644]
mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/TypeOnlyInClassic.xml
mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/WillDelete.xml.remove
mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml
mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/MyFramework.MyNamespace/MyClass.xml
mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/MyFramework.MyNamespace/MyClassExtensions.xml [new file with mode: 0644]
mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml
mcs/tools/mdoc/Test/en.expected-dropns-multi/MyFramework.MyNamespace/MyClassExtensions.xml [new file with mode: 0644]
mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml
mcs/tools/mdoc/mdoc-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mkbundle/mkbundle-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mkbundle/mkbundle.cs
mcs/tools/mod/mod-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-api-html/mono-api-html-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-configuration-crypto/cli/mono-configuration-crypto-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-configuration-crypto/lib/Assembly/AssemblyInfo.cs
mcs/tools/mono-configuration-crypto/lib/Makefile
mcs/tools/mono-configuration-crypto/lib/Mono.Configuration.Crypto-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-service/mono-service-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-shlib-cop/mono-shlib-cop-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-symbolicate/mono-symbolicate-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-xmltool/mono-xmltool-net_4_x.csproj [new file with mode: 0644]
mcs/tools/mono-xsd/xsd-net_4_x.csproj [new file with mode: 0644]
mcs/tools/monop/monop-net_4_x.csproj [new file with mode: 0644]
mcs/tools/nunitreport/nunitreport-net_4_x.csproj [new file with mode: 0644]
mcs/tools/pdb2mdb/pdb2mdb-net_4_x.csproj [new file with mode: 0644]
mcs/tools/resgen/resgen-net_4_x.csproj [new file with mode: 0644]
mcs/tools/security/mozroots.cs
mcs/tools/sgen/sgen-net_4_x.csproj [new file with mode: 0644]
mcs/tools/soapsuds/soapsuds-net_4_x.csproj [new file with mode: 0644]
mcs/tools/sqlmetal/sqlmetal-net_4_x.csproj [new file with mode: 0644]
mcs/tools/sqlsharp/sqlsharp-net_4_x.csproj [new file with mode: 0644]
mcs/tools/svcutil/svcutil-net_4_x.csproj [new file with mode: 0644]
mcs/tools/tuner/Mono.Tuner-net_4_x.csproj [new file with mode: 0644]
mcs/tools/wsdl/wsdl-net_4_x.csproj [new file with mode: 0644]
mcs/tools/xbuild/data/14.0/Microsoft.Common.targets
mcs/tools/xbuild/data/14.0/Microsoft.Common.tasks
mono/arch/amd64/amd64-codegen.h
mono/arch/arm/arm-codegen.h
mono/arch/x86/x86-codegen.h
mono/cil/cil-opcodes.xml
mono/cil/opcode.def
mono/dis/main.c
mono/io-layer/events.c
mono/io-layer/handles-private.h
mono/io-layer/handles.c
mono/io-layer/io.c
mono/io-layer/mutex-private.h
mono/io-layer/mutexes.c
mono/io-layer/processes.c
mono/io-layer/semaphores.c
mono/io-layer/sockets.c
mono/io-layer/thread-private.h
mono/io-layer/threads.h
mono/io-layer/wait.c
mono/io-layer/wapi-private.h
mono/io-layer/wthreads.c
mono/metadata/.gitignore
mono/metadata/Makefile.am
mono/metadata/appdomain.c
mono/metadata/assembly.c
mono/metadata/attach.c
mono/metadata/boehm-gc.c
mono/metadata/class-internals.h
mono/metadata/class.c
mono/metadata/cominterop.c
mono/metadata/cominterop.h
mono/metadata/console-unix.c
mono/metadata/coree.c
mono/metadata/debug-helpers.c
mono/metadata/debug-mono-ppdb.c
mono/metadata/domain-internals.h
mono/metadata/domain.c
mono/metadata/exception-internals.h
mono/metadata/exception.c
mono/metadata/exception.h
mono/metadata/file-io.c
mono/metadata/file-io.h
mono/metadata/file-mmap-posix.c
mono/metadata/filewatcher.c
mono/metadata/gc-internals.h
mono/metadata/gc.c
mono/metadata/handle.c
mono/metadata/handle.h
mono/metadata/icall-def.h
mono/metadata/icall.c
mono/metadata/image.c
mono/metadata/locales.c
mono/metadata/marshal.c
mono/metadata/marshal.h
mono/metadata/metadata-internals.h
mono/metadata/metadata.c
mono/metadata/metadata.h
mono/metadata/monitor.c
mono/metadata/monitor.h
mono/metadata/mono-hash.c
mono/metadata/mono-mlist.c
mono/metadata/mono-mlist.h
mono/metadata/mono-perfcounters.c
mono/metadata/mono-route.c
mono/metadata/null-gc.c
mono/metadata/object-internals.h
mono/metadata/object-offsets.h
mono/metadata/object.c
mono/metadata/object.h
mono/metadata/opcodes.h
mono/metadata/pedump.c [deleted file]
mono/metadata/process.c
mono/metadata/reflection.c
mono/metadata/remoting.c
mono/metadata/runtime.c
mono/metadata/security-core-clr.c
mono/metadata/sgen-bridge.c
mono/metadata/sgen-client-mono.h
mono/metadata/sgen-mono.c
mono/metadata/sgen-new-bridge.c
mono/metadata/sgen-old-bridge.c
mono/metadata/sgen-os-mach.c
mono/metadata/sgen-os-posix.c
mono/metadata/sgen-os-win32.c
mono/metadata/sgen-stw.c
mono/metadata/sgen-tarjan-bridge.c
mono/metadata/socket-io.c
mono/metadata/socket-io.h
mono/metadata/string-icalls.c
mono/metadata/threadpool-ms-io.c
mono/metadata/threadpool-ms.c
mono/metadata/threadpool-ms.h
mono/metadata/threads-types.h
mono/metadata/threads.c
mono/metadata/threads.h
mono/metadata/wrapper-types.h
mono/mini/Makefile.am.in
mono/mini/abcremoval.c
mono/mini/abcremoval.h
mono/mini/aot-compiler.c
mono/mini/aot-runtime.c
mono/mini/aot-tests.cs
mono/mini/branch-opts.c
mono/mini/cfgdump.c
mono/mini/cpu-amd64.md
mono/mini/cpu-arm.md
mono/mini/cpu-x86.md
mono/mini/debugger-agent.c
mono/mini/decompose.c
mono/mini/driver.c
mono/mini/exceptions-amd64.c
mono/mini/exceptions-arm.c
mono/mini/exceptions-x86.c
mono/mini/image-writer.c
mono/mini/image-writer.h
mono/mini/ir-emit.h
mono/mini/jit-icalls.c
mono/mini/jit-icalls.h
mono/mini/jit.h
mono/mini/local-propagation.c
mono/mini/main.c
mono/mini/method-to-ir.c
mono/mini/mini-amd64-gsharedvt.c
mono/mini/mini-amd64-gsharedvt.h
mono/mini/mini-amd64.c
mono/mini/mini-amd64.h
mono/mini/mini-arm-gsharedvt.c
mono/mini/mini-arm.c
mono/mini/mini-arm.h
mono/mini/mini-codegen.c
mono/mini/mini-exceptions.c
mono/mini/mini-generic-sharing.c
mono/mini/mini-ia64.c
mono/mini/mini-llvm.c
mono/mini/mini-mips.c
mono/mini/mini-native-types.c
mono/mini/mini-ops.h
mono/mini/mini-posix.c
mono/mini/mini-ppc.c
mono/mini/mini-runtime.c
mono/mini/mini-s390x.c
mono/mini/mini-sparc.c
mono/mini/mini-trampolines.c
mono/mini/mini-windows.c
mono/mini/mini-x86.c
mono/mini/mini-x86.h
mono/mini/mini.c
mono/mini/mini.h
mono/mini/trace.c
mono/mini/tramp-amd64-gsharedvt.c
mono/mini/tramp-amd64.c
mono/mini/tramp-arm-gsharedvt.c
mono/mini/tramp-arm.c
mono/mini/tramp-x86.c
mono/profiler/Makefile.am
mono/profiler/mono-profiler-iomap.c
mono/profiler/proflog.c
mono/sgen/sgen-alloc.c
mono/sgen/sgen-archdep.h
mono/sgen/sgen-array-list.c
mono/sgen/sgen-array-list.h
mono/sgen/sgen-cardtable.c
mono/sgen/sgen-client.h
mono/sgen/sgen-debug.c
mono/sgen/sgen-descriptor.c
mono/sgen/sgen-descriptor.h
mono/sgen/sgen-gc.c
mono/sgen/sgen-gc.h
mono/sgen/sgen-internal.c
mono/sgen/sgen-los.c
mono/sgen/sgen-marksweep-drain-gray-stack.h
mono/sgen/sgen-marksweep.c
mono/sgen/sgen-memory-governor.c
mono/sgen/sgen-memory-governor.h
mono/sgen/sgen-pinning-stats.c
mono/sgen/sgen-pinning.c
mono/sgen/sgen-protocol-def.h
mono/sgen/sgen-protocol.c
mono/sgen/sgen-protocol.h
mono/sgen/sgen-simple-nursery.c
mono/sgen/sgen-split-nursery.c
mono/tests/Makefile.am
mono/tests/libtest.c
mono/tests/priority.cs [new file with mode: 0644]
mono/tests/sgen-new-threads-dont-join-stw-2.cs [new file with mode: 0644]
mono/tests/sleep.cs
mono/tests/test-runner.cs
mono/tests/tests-config.in
mono/unit-tests/test-mono-handle.c
mono/utils/Makefile.am
mono/utils/checked-build.c
mono/utils/checked-build.h
mono/utils/lock-free-alloc.c
mono/utils/mono-codeman.c
mono/utils/mono-codeman.h
mono/utils/mono-context.h
mono/utils/mono-coop-mutex.h
mono/utils/mono-coop-semaphore.h
mono/utils/mono-error-internals.h
mono/utils/mono-error.c
mono/utils/mono-error.h
mono/utils/mono-hwcap-arm.c
mono/utils/mono-io-portability.c
mono/utils/mono-log-common.c [new file with mode: 0644]
mono/utils/mono-log-posix.c [new file with mode: 0644]
mono/utils/mono-log-windows.c [new file with mode: 0644]
mono/utils/mono-logger.c
mono/utils/mono-logger.h
mono/utils/mono-proclib.c
mono/utils/mono-threads-api.h
mono/utils/mono-threads-coop.c
mono/utils/mono-threads-coop.h
mono/utils/mono-threads-mach.c
mono/utils/mono-threads-posix-signals.c
mono/utils/mono-threads-posix.c
mono/utils/mono-threads-state-machine.c
mono/utils/mono-threads-windows.c
mono/utils/mono-threads.c
mono/utils/mono-threads.h
mono/utils/mono-time.c
mono/utils/mono-time.h
mono/utils/mono-tls.h
mono/utils/networking-posix.c
msvc/.gitignore
msvc/build-all.vcxproj [new file with mode: 0644]
msvc/build-all.vcxproj.filters [new file with mode: 0644]
msvc/build-init.vcxproj [new file with mode: 0644]
msvc/build-init.vcxproj.filters [new file with mode: 0644]
msvc/build-install.vcxproj [new file with mode: 0644]
msvc/build-install.vcxproj.filters [new file with mode: 0644]
msvc/build-package.vcxproj [new file with mode: 0644]
msvc/build-package.vcxproj.filters [new file with mode: 0644]
msvc/compare-config-content.ps1 [new file with mode: 0644]
msvc/compare-config-files.ps1 [new file with mode: 0644]
msvc/create-windef.pl
msvc/eglib.vcxproj
msvc/eglib.vcxproj.filters [new file with mode: 0644]
msvc/genmdesc.vcxproj
msvc/genmdesc.vcxproj.filters [new file with mode: 0644]
msvc/install.bat [new file with mode: 0644]
msvc/libgc.vcxproj
msvc/libgc.vcxproj.filters [new file with mode: 0644]
msvc/libgcmonosgen.vcxproj [new file with mode: 0644]
msvc/libgcmonosgen.vcxproj.filters [new file with mode: 0644]
msvc/libmono.bat [new file with mode: 0644]
msvc/libmono.vcxproj
msvc/libmono.vcxproj.filters [new file with mode: 0644]
msvc/libmonoruntime.vcxproj
msvc/libmonoruntime.vcxproj.filters [new file with mode: 0644]
msvc/libmonoutils.vcxproj
msvc/libmonoutils.vcxproj.filters [new file with mode: 0644]
msvc/libtest.vcxproj
msvc/libtest.vcxproj.filters [new file with mode: 0644]
msvc/mono-mini-regression-aot-test.vcxproj [new file with mode: 0644]
msvc/mono-mini-regression-aot-test.vcxproj.filters [new file with mode: 0644]
msvc/mono-mini-regression-test-aot.props [new file with mode: 0644]
msvc/mono-mini-regression-test.props [new file with mode: 0644]
msvc/mono-mini-regression-test.vcxproj [new file with mode: 0644]
msvc/mono-mini-regression-test.vcxproj.filters [new file with mode: 0644]
msvc/mono-regression-test-Win32.props [new file with mode: 0644]
msvc/mono-regression-test-x64.props [new file with mode: 0644]
msvc/mono-regression-test.props [new file with mode: 0644]
msvc/mono.def
msvc/mono.props
msvc/mono.sln
msvc/mono.vcxproj
msvc/mono.vcxproj.filters [new file with mode: 0644]
msvc/monodis.vcxproj
msvc/monodis.vcxproj.filters [new file with mode: 0644]
msvc/monograph.vcxproj
msvc/monograph.vcxproj.filters [new file with mode: 0644]
msvc/monoposixhelper.vcxproj
msvc/monoposixhelper.vcxproj.filters [new file with mode: 0644]
msvc/monosgen.def
msvc/package.bat [new file with mode: 0644]
msvc/pedump.vcxproj
msvc/pedump.vcxproj.filters [new file with mode: 0644]
msvc/profiler-vtune.vcxproj
msvc/profiler-vtune.vcxproj.filters [new file with mode: 0644]
msvc/scripts/Commons.Xml.Relaxng.pre [new file with mode: 0644]
msvc/scripts/Microsoft.Build.pre [new file with mode: 0644]
msvc/scripts/RabbitMQ.Client.Apigen.post [new file with mode: 0644]
msvc/scripts/System.Web.pre [new file with mode: 0644]
msvc/scripts/TODO [deleted file]
msvc/scripts/TODO.md [new file with mode: 0644]
msvc/scripts/csproj.tmpl
msvc/scripts/genproj.cs
msvc/scripts/ilasm.pre [new file with mode: 0644]
msvc/scripts/mcs.pre
msvc/scripts/monodoc.pre [new file with mode: 0644]
msvc/scripts/net_4_x.sln [deleted file]
msvc/scripts/order.xml
msvc/scripts/prepare.cs
msvc/test-invoke.vcxproj
msvc/test-invoke.vcxproj.filters [new file with mode: 0644]
msvc/test-metadata.vcxproj
msvc/test-metadata.vcxproj.filters [new file with mode: 0644]
msvc/test_eglib.vcxproj
msvc/test_eglib.vcxproj.filters [new file with mode: 0644]
msvc/teste.vcxproj
msvc/teste.vcxproj.filters [new file with mode: 0644]
msvc/winsetup.bat
net_4_x.sln [new file with mode: 0644]
scripts/Makefile.am
scripts/ci/run-jenkins.sh
scripts/ci/run-test-default.sh [new file with mode: 0755]
scripts/ci/run-test-mobile_static.sh [new file with mode: 0755]
scripts/submodules/versions.mk [new file with mode: 0644]
scripts/submodules/versions.py [new file with mode: 0755]
tools/Makefile.am
tools/monograph/Makefile.am
tools/offsets-tool/Makefile
tools/offsets-tool/MonoAotOffsetsDumper.cs
tools/pedump/.gitignore [new file with mode: 0644]
tools/pedump/Makefile.am [new file with mode: 0644]
tools/pedump/pedump.c [new file with mode: 0644]
tools/sgen/.gitignore
tools/sgen/Makefile.am
tools/sgen/gcpausevis.py
tools/sgen/sgen-entry-stream.c [new file with mode: 0644]
tools/sgen/sgen-entry-stream.h [new file with mode: 0644]
tools/sgen/sgen-grep-binprot-main.c [new file with mode: 0644]
tools/sgen/sgen-grep-binprot.c
tools/sgen/sgen-grep-binprot.h [new file with mode: 0644]
winconfig.h

index d48ca3110e8e7693c7110ccce764547772724328..9c6dc7e971457668dc80b31fa3d5d152d9b3f363 100644 (file)
@@ -4,18 +4,17 @@ AM_CFLAGS = $(WERROR_CFLAGS)
 
 MONOTOUCH_SUBDIRS = $(libgc_dir) eglib/src mono
 
+# Some tools might not build when cross-compiling
 if CROSS_COMPILING
-SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir) acceptance-tests
-# Keep in sync with SUBDIRS
-## 'tools' is not normally built
-DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs acceptance-tests
+tools_dir =
 else
-SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples msvc $(docs_dir) acceptance-tests
-# Keep in sync with SUBDIRS
-## 'tools' is not normally built
-DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs acceptance-tests
+tools_dir = tools
 endif
 
+SUBDIRS = po $(libgc_dir) eglib mono $(ikvm_native_dir) support data runtime scripts man samples $(tools_dir) msvc $(docs_dir) acceptance-tests llvm
+# Keep in sync with SUBDIRS
+DIST_SUBDIRS = m4 po $(libgc_dir) eglib mono ikvm-native support data runtime scripts man samples tools msvc docs acceptance-tests llvm
+
 all: update_submodules
 
 SUBMODULE_ERROR='Could not recursively update all git submodules. You may experience compilation problems if some submodules are out of date'
@@ -32,7 +31,8 @@ EXTRA_DIST= \
        mono-uninstalled.pc.in  \
        winconfig.h             \
        code_of_conduct.md      \
-       external
+       external                \
+       mcs/class/referencesource
 
 DISTCHECK_CONFIGURE_FLAGS = EXTERNAL_MCS=false EXTERNAL_RUNTIME=false
 
@@ -67,6 +67,10 @@ get-monolite-latest:
        cd $(mcslib) && { (wget -O- $(monolite_url) || curl $(monolite_url)) | gzip -d | tar xf - ; }
        cd $(mcslib) && mv -f monolite-* monolite
 
+.PHONY: check-ci
+check-ci:
+       MONO_LLVMONLY=$(MONO_LLVMONLY) $(srcdir)/scripts/ci/run-test-$(TEST_PROFILE).sh
+
 .PHONY: validate do-build-mono-mcs mcs-do-clean mcs-do-tests
 validate: do-build-mono-mcs
        $(MAKE) mcs-do-tests
@@ -152,6 +156,7 @@ package-inputs:
                 read libou;  echo "      <library_output>$$libou</library_output>"; \
                 read fx_ver; echo "      <fx_version>$$fx_ver</fx_version>"; \
                 read profile; echo "      <profile>$$profile</profile>"; \
+                read resxt;  echo "      <resources>$$resxt</resources>"; \
                 read resp;   echo "      <response>$$resp</response>"; \
                 echo "    </project>") >> msvc/scripts/order.xml; \
        done
@@ -163,3 +168,7 @@ update-llvm-version:
        REV=`$(LLVM_DIR)/bin/llvm-config --version` && sed -e "s,expected_llvm_version=.*,expected_llvm_version=\"$$REV\"," < configure.ac > tmp && mv tmp configure.ac && echo "Version set to $$REV."
 
 
+update-solution-files:
+       make update-csproj
+       make package-inputs
+       (cd msvc/scripts; make genproj.exe; mono genproj.exe)
index 5aad9440a06112eb34bb89a82f8bd46fb2910640..2b583e599be14ae9ab3139c7a11d55e7a1ab574a 100644 (file)
--- a/README.md
+++ b/README.md
@@ -19,28 +19,30 @@ The Mono project is part of the [.NET Foundation](http://www.dotnetfoundation.or
 
 Officially supported architectures:
 
-| debian-amd64            | debian-i386            | debian-armel            | debian-armhf            | windows-amd64             |
-|-------------------------|------------------------|-------------------------|-------------------------|---------------------------|
-| [![debian-amd64][1]][2] | [![debian-i386][3]][4] | [![debian-armel][5]][6] | [![debian-armhf][7]][8] | [![windows-amd64][9]][10] |
+| ubuntu-1404-amd64            | ubuntu-1404-i386            | debian-8-armel            | debian-8-armhf            | debian-8-arm64              | windows-amd64              |
+|------------------------------|-----------------------------|---------------------------|---------------------------|-----------------------------|----------------------------|
+| [![ubuntu-1404-amd64][1]][2] | [![ubuntu-1404-i386][3]][4] | [![debian-8-armel][5]][6] | [![debian-8-armhf][7]][8] | [![debian-8-arm64][9]][10]  | [![windows-amd64][11]][12] |
 
 Community supported architectures:
 
 | centos-s390x              |
 |---------------------------|
-| [![centos-s390x][11]][12] |
-
-[1]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/badge/icon
-[2]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-amd64/
-[3]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/badge/icon
-[4]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-i386/
-[5]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/badge/icon
-[6]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armel/
-[7]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/badge/icon
-[8]: http://jenkins.mono-project.com/job/test-mono-mainline/label=debian-armhf/
-[9]: https://ci.appveyor.com/api/projects/status/1e61ebdfpbiei58v/branch/master?svg=true
-[10]: https://ci.appveyor.com/project/ajlennon/mono-817/branch/master
-[11]: https://jenkins.mono-project.com/job/z/label=centos-s390x/badge/icon
-[12]: https://jenkins.mono-project.com/job/z/label=centos-s390x
+| [![centos-s390x][13]][14] |
+
+[1]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-amd64/badge/icon
+[2]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-amd64
+[3]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-i386/badge/icon
+[4]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=ubuntu-1404-i386/
+[5]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armel/badge/icon
+[6]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armel/
+[7]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armhf/badge/icon
+[8]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-armhf/
+[9]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-arm64/badge/icon
+[10]: https://jenkins.mono-project.com/job/test-mono-mainline-linux/label=debian-8-arm64/
+[11]: https://ci.appveyor.com/api/projects/status/1e61ebdfpbiei58v/branch/master?svg=true
+[12]: https://ci.appveyor.com/project/ajlennon/mono-817/branch/master
+[13]: https://jenkins.mono-project.com/job/z/label=centos-s390x/badge/icon
+[14]: https://jenkins.mono-project.com/job/z/label=centos-s390x
 
 Compilation and Installation
 ============================
@@ -517,7 +519,24 @@ See the LICENSE file for licensing information, and the PATENTS.TXT
 file for information about Microsoft's patent grant.
 
 Mono Trademark Use Policy
-=======
+=========================
 
 The use of trademarks and logos for Mono can be found [here] (http://www.dotnetfoundation.org/legal/mono-tm). 
 
+Maintaining the Class Library Solution Files
+============================================
+
+Mono now ships with a solution file that can be used to build the
+assemblies from an IDE.  Either by opening the topmost `net_4_x.sln`
+file, or to by loading one of the individual `csproj` files located in
+each directory.
+
+These are maintained by extracting the configuration information from
+our Makefiles, which as of May 2016 remain the canonical location for
+configuration information.
+
+When changes are made to the Makefiles, a user would need to run the
+following command to re-generate the solution files at the top level:
+
+       $ make update-solution-files
+
index 1b1612f9fb1713372babffcb76dc15a9b7f8f0e1..522cb36c9ea47999dfd6dbe7474f11567a1aa1b8 100644 (file)
@@ -4,7 +4,7 @@ CORECLR_PATH=$(ACCEPTANCE_TESTS_PATH)/coreclr
 MSTESTSUITE_PATH=$(ACCEPTANCE_TESTS_PATH)/ms-test-suite
 
 CLEANFILES = *.dll *.exe *.mdb
-EXTRA_DIST=README.md SUBMODULES.json versions.mk versions.py roslyn.mk coreclr.mk ms-test-suite.mk
+EXTRA_DIST=README.md SUBMODULES.json versions.mk roslyn.mk coreclr.mk ms-test-suite.mk
 
 CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
 
index 2e83f9ea795adc63dd194c6b713d067287d871d4..7fcac6c3e9d9cbc50ff1256f936c19d96c01f72b 100644 (file)
@@ -10,7 +10,7 @@
   {
     "name": "coreclr", 
     "url": "git://github.com/mono/coreclr.git", 
-    "rev": "b05c242a59eab1c4ea2803960c8065167308546d", 
+    "rev": "c7da48acf72c40c0c0ed1a80ebfacea21bb3a271", 
     "remote-branch": "origin/mono", 
     "branch": "mono", 
     "directory": "coreclr"
@@ -18,7 +18,7 @@
   {
     "name": "ms-test-suite", 
     "url": "git@github.com:xamarin/ms-test-suite.git", 
-    "rev": "4a95604fdf2c0523e68eaad64a17d22eebb051b3", 
+    "rev": "840653918efed24f00f5e166094f06354cae7255", 
     "remote-branch": "origin/master", 
     "branch": "master", 
     "directory": "ms-test-suite"
index 9cf7d89bbea89f5c5cd3f6fb3067f484fc53eb3c..491b67e11ce18921c10b7d20e73767d5eb3db52a 100644 (file)
 .PHONY: validate-versions reset-versions
 
-CONFIG=SUBMODULES.json
-
-# usage $(call ValidateVersionTemplate (name,MAKEFILE VAR,repo name))
-# usage $(call ValidateVersionTemplate (mono,MONO,mono))
-
-define ValidateVersionTemplate
-#$(eval REPOSITORY_$(2):=$(shell test -z $(3) && echo $(1) || echo "$(3)"))
-#$(eval DIRECTORY_$(2):=$(shell python versions.py get-dir $(1)))
-#$(eval DIRECTORY_$(2):=$(shell test -z $(DIRECTORY_$(2)) && echo $(1) || echo $(DIRECTORY_$(2))))
-#$(eval MODULE_$(2):=$(shell python versions.py get-url $(1)))
-#$(eval NEEDED_$(2)_VERSION:=$(shell python versions.py get-rev $(1)))
-#$(eval $(2)_BRANCH_AND_REMOTE:=$(shell python versions.py get-remote-branch $(1)))
-
-#$(eval $(2)_VERSION:=$$$$(shell cd $($(2)_PATH) 2>/dev/null && git rev-parse HEAD ))
-
-#$(eval NEEDED_$(2)_BRANCH:=$(word 2, $(subst /, ,$($(2)_BRANCH_AND_REMOTE))))
-#$(eval NEEDED_$(2)_REMOTE:=$(word 1, $(subst /, ,$($(2)_BRANCH_AND_REMOTE))))
-#$(eval $(2)_BRANCH:=$$$$(shell cd $($(2)_PATH) 2>/dev/null && git symbolic-ref --short HEAD 2>/dev/null))
-
-validate-$(1)::
-       @if test x$$(IGNORE_$(2)_VERSION) = "x"; then \
-           if test ! -d $($(2)_PATH); then \
-                       if test x$$(RESET_VERSIONS) != "x"; then \
-                               $(MAKE) reset-$(1) || exit 1; \
-                       else \
-                               echo "Your $(1) checkout is missing, please run 'make reset-$(1)'"; \
-                               touch .validate-versions-failure; \
-                       fi; \
-           else \
-                       if test "x$($(2)_VERSION)" != "x$(NEEDED_$(2)_VERSION)" ; then \
-                               if test x$$(RESET_VERSIONS) != "x"; then \
-                                       $(MAKE) reset-$(1) || exit 1; \
-                               else \
-                                   echo "Your $(1) version is out of date, please run 'make reset-$(1)' (found $($(2)_VERSION), expected $(NEEDED_$(2)_VERSION))"; \
-                                   test -z "$(BUILD_REVISION)" || $(MAKE) test-$(1); \
-                               touch .validate-versions-failure; \
-                               fi; \
-               elif test "x$($(2)_BRANCH)" != "x$(NEEDED_$(2)_BRANCH)" ; then \
-                               if test x$$(RESET_VERSIONS) != "x"; then \
-                                       test -z "$(BUILD_REVISION)" || $(MAKE) test-$(1); \
-                                       $(MAKE) reset-$(1) || exit 1; \
-                               else \
-                                   echo "Your $(1) branch is out of date, please run 'make reset-$(1)' (found $($(2)_BRANCH), expected $(NEEDED_$(2)_BRANCH))"; \
-                               touch .validate-versions-failure; \
-                               fi; \
-              fi; \
-           fi; \
-       fi
-
-test-$(1)::
-       @echo $(1)
-       @echo "   REPOSITORY_$(2)=$(REPOSITORY_$(2))"
-       @echo "   DIRECTORY_$(2)=$(DIRECTORY_$(2))"
-       @echo "   MODULE_$(2)=$(MODULE_$(2))"
-       @echo "   NEEDED_$(2)_VERSION=$(NEEDED_$(2)_VERSION)"
-       @echo "   $(2)_VERSION=$($(2)_VERSION)"
-       @echo "   $(2)_BRANCH_AND_REMOTE=$($(2)_BRANCH_AND_REMOTE)"
-       @echo "   NEEDED_$(2)_BRANCH=$(NEEDED_$(2)_BRANCH)"
-       @echo "   NEEDED_$(2)_REMOTE=$(NEEDED_$(2)_REMOTE)"
-       @echo "   $(2)_BRANCH=$($(2)_BRANCH)"
-       @echo "   $(2)_PATH=$($(2)_PATH) => $(abspath $($(2)_PATH))"
-
-reset-$(1)::
-       @if test -d $($(2)_PATH); then \
-               if ! (cd $($(2)_PATH) && git show $(NEEDED_$(2)_VERSION) >/dev/null 2>&1 && git log -1 $(NEEDED_$(2)_REMOTE) >/dev/null 2>&1) ; then \
-                       echo "*** git fetch `basename $$($(2)_PATH)`" && (cd $($(2)_PATH) && git fetch); \
-               fi;  \
-       else \
-               echo "*** git clone $(MODULE_$(2)) --recursive $(DIRECTORY_$(2))" && (cd `dirname $($(2)_PATH)` && git clone $(MODULE_$(2)) --recursive $(DIRECTORY_$(2)) || exit 1 ); \
-       fi
-       @if test x$$(IGNORE_$(2)_VERSION) = "x"; then \
-               echo "*** [$(1)] git checkout -f" $(NEEDED_$(2)_BRANCH) && (cd $($(2)_PATH) ; git checkout -f $(NEEDED_$(2)_BRANCH) || git checkout -f -b $($(2)_BRANCH_AND_REMOTE)); \
-               echo "*** [$(1)] git reset --hard $(NEEDED_$(2)_VERSION)" && (cd $($(2)_PATH) && git reset --hard $(NEEDED_$(2)_VERSION)); \
-       fi
-       @echo "*** [$(1)] git submodule update --init --recursive" && (cd $($(2)_PATH) && git submodule update --init --recursive)
-
-print-$(1)::
-       @printf "*** %-16s %-45s %s (%s)\n" "$(DIRECTORY_$(2))" "$(MODULE_$(2))" "$(NEEDED_$(2)_VERSION)" "$(NEEDED_$(2)_BRANCH)"
-
-.PHONY: validate-$(1) reset-$(1) print-$(1)
-
-reset-versions:: reset-$(1)
-validate-versions:: Validate-$(1)
-print-versions:: print-$(1)
-
-endef
+include $(top_srcdir)/scripts/submodules/versions.mk
 
 $(eval $(call ValidateVersionTemplate,roslyn,ROSLYN))
 $(eval $(call ValidateVersionTemplate,coreclr,CORECLR))
 $(eval $(call ValidateVersionTemplate,ms-test-suite,MSTESTSUITE))
 
-reset-versions::
-
-validate-versions::
-       @if test -e .validate-versions-failure; then  \
-               rm .validate-versions-failure; \
-               echo One or more modules needs update;  \
-               exit 1; \
-       else \
-               echo All dependent modules up to date;  \
-       fi
-
-reset:
-       @$(MAKE) validate-versions RESET_VERSIONS=1
-
-__bump-version-%:
-       @if [ "$(REV)" = "" ]; then echo "Usage: make bump-version-$* REV=<ref>"; exit 1; fi
-       python versions.py set-rev $* $(REV)
-       @if [ "$(COMMIT)" = "1" ]; then echo "[acceptance-tests] Bump $* to pick up $(REV)." | git commit -F - $(CONFIG); fi
-
-__bump-branch-%:
-       @if [ "$(BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
-       @if [ "$(REMOTE_BRANCH)" == "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
-       python versions.py set-branch $* $(BRANCH)
-       python versions.py set-remote-branch $* $(REMOTE_BRANCH)
-       @if [ "$(COMMIT)" = "1" ]; then echo "[acceptance-tests] Bump $* to switch to $(BRANCH) $(REMOTE BRANCH)." | git commit -F - $(CONFIG); fi
-
-__bump-current-version-%:
-       REV=$(shell cd $(ACCEPTANCE_TESTS_PATH)/$* && git log -1 --pretty=format:%H); \
-       python versions.py set-rev $* $$REV; \
-       if [ "$(COMMIT)" = "1" ]; then echo "[acceptance-tests] Bump $* to pick up $$REV:" | git commit -F - $(CONFIG); fi
-
 # Bump the given submodule to the revision given by the REV make variable
 # If COMMIT is 1, commit the change
 bump-roslyn: __bump-version-roslyn
diff --git a/acceptance-tests/versions.py b/acceptance-tests/versions.py
deleted file mode 100755 (executable)
index 35ded0c..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-#!/usr/bin/env python
-
-import sys
-import json
-
-def find_module(submodules, name):
-    for item in submodules:
-        if item["name"] == name:
-            return item
-
-    print("Not found")
-    sys.exit(1)
-
-
-if len(sys.argv) < 2:
-    print("Usage: versions.py <command>")
-    sys.exit(1)
-
-CONFIG_FILE = "SUBMODULES.json"
-command = sys.argv[1]
-
-submodules = json.load(open(CONFIG_FILE))
-
-if command == "get-rev":
-    mod = find_module(submodules, sys.argv[2])
-    print(mod["rev"])
-elif command == "get-url":
-    mod = find_module(submodules, sys.argv[2])
-    print(mod["url"])
-elif command == "get-dir":
-    mod = find_module(submodules, sys.argv[2])
-    print(mod["directory"])
-elif command == "get-remote-branch":
-    mod = find_module(submodules, sys.argv[2])
-    print(mod["remote-branch"])
-elif command == "set-rev":
-    mod = find_module(submodules, sys.argv[2])
-    mod["rev"] = sys.argv[3]
-    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
-elif command == "set-branch":
-    mod = find_module(submodules, sys.argv[2])
-    mod["branch"] = sys.argv[3]
-    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
-elif command == "set-remote-branch":
-    mod = find_module(submodules, sys.argv[2])
-    mod["remote-branch"] = sys.argv[3]
-    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
-elif command == "cat":
-    print(json.dumps(submodules, indent = 2))
-else:
-    print("Unknown command "" + command + "".")
-    sys.exit(1)
index 4b139ba5e4acb0d0e2a00a3902f5d49826ad7ff5..2fe9281e8dd4029b883d0512759afa962128e57b 100755 (executable)
@@ -160,8 +160,11 @@ if test -d $srcdir/eglib; then
   echo Done running eglib/autogen.sh ...
 fi
 
+if test x$MONO_EXTRA_CONFIGURE_FLAGS != x; then
+       echo "MONO_EXTRA_CONFIGURE_FLAGS is $MONO_EXTRA_CONFIGURE_FLAGS"
+fi
 
-conf_flags="--enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c
+conf_flags="$MONO_EXTRA_CONFIGURE_FLAGS --enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c
 
 if test x$NOCONFIGURE = x; then
   echo Running $srcdir/configure $conf_flags "$@" ...
diff --git a/build-libs.bat b/build-libs.bat
new file mode 100644 (file)
index 0000000..342a6b8
--- /dev/null
@@ -0,0 +1,7 @@
+@echo off
+cd mcs\jay
+vcbuild jay.vcxproj
+cd msvc\scripts
+csc prepare.cs
+prepare.exe ..\..\mcs core
+msbuild net_4_x.sln
diff --git a/build-libs.sh b/build-libs.sh
new file mode 100755 (executable)
index 0000000..f7583ab
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/sh
+(cd mcs/jay; make)
+(cd msvc/scripts/; make prepare.exe; mono prepare.exe ../../mcs core)
+msbuild net_4_x.sln
index 966bd50391504aa8e884de27ef4bbf2fe058645e..0930a431abaebcf0602fcbe87ccb18c85f26865b 100644 (file)
@@ -1,7 +1,8 @@
 # Process this file with autoconf to produce a configure script.
 #AC_PREREQ([2.62])
 
-AC_INIT(mono, [4.5.1],
+# when bumping version number below, keep it in sync with man/mono.1 too
+AC_INIT(mono, [4.5.2],
         [http://bugzilla.xamarin.com/enter_bug.cgi?classification=Mono])
 
 AC_CONFIG_SRCDIR([README.md])
@@ -726,6 +727,178 @@ AC_ARG_ENABLE(system-aot, [  --enable-system-aot  Enable the Ahead-Of-Time compi
 
 DISABLED_FEATURES=none
 
+#
+# Set the build profiles and options before things which use them
+#
+
+AC_ARG_WITH(profile4_x,      [  --with-profile4=yes,no          If you want to install the 4.x FX (defaults to yes)],                 [], [with_profile4_x=default])
+AC_ARG_WITH(monodroid,       [  --with-monodroid=yes,no         If you want to build the MonoDroid assemblies (defaults to no)],      [], [with_monodroid=default])
+AC_ARG_WITH(monotouch,       [  --with-monotouch=yes,no         If you want to build the Xamarin.iOS assemblies (defaults to no)],    [], [with_monotouch=default])
+AC_ARG_WITH(monotouch_watch, [  --with-monotouch_watch=yes,no   If you want to build the Xamarin.WatchOS assemblies (defaults to no)],[], [with_monotouch_watch=default])
+AC_ARG_WITH(monotouch_tv,    [  --with-monotouch_tv=yes,no      If you want to build the Xamarin.TVOS assemblies (defaults to no)],   [], [with_monotouch_tv=default])
+AC_ARG_WITH(bitcode,         [  --with-bitcode=yes,no           If bitcode is enabled (defaults to no)],                              [], [with_bitcode=default])
+AC_ARG_WITH(xammac,          [  --with-xammac=yes,no            If you want to build the Xamarin.Mac assemblies (defaults to no)],    [], [with_xammac=default])
+AC_ARG_WITH(mobile_static,   [  --with-mobile_static=yes,no     If you want to build the mobile_static assemblies (defaults to no)],  [], [with_mobile_static=default])
+
+AC_ARG_WITH(runtime_preset, [  --with-runtime_preset=net_4_x,all,mobile_static,bitcode_mobile_static   Which default profile to build (defaults to net_4_x)],  [], [with_runtime_preset=net_4_x])
+
+dnl
+dnl Profile defaults
+dnl
+TEST_PROFILE=default
+enable_llvm_default=no
+
+if test x$cross_compiling = xyes -o x$enable_mcs_build = xno; then
+   DISABLE_MCS_DOCS_default=yes
+   with_profile4_x_default=no
+   with_monodroid_default=no
+   with_monotouch_default=no
+   with_monotouch_watch_default=no
+   with_monotouch_tv_default=no
+   with_xammac_default=no
+   with_mobile_static_default=no
+   with_bitcode_default=no
+   with_cooperative_gc_default=no
+elif test x$with_runtime_preset = xnet_4_x; then
+   with_cooperative_gc_default=no
+   with_profile4_x_default=yes
+   with_monodroid_default=no
+   with_monotouch_default=no
+   with_monotouch_watch_default=no
+   with_monotouch_tv_default=no
+   with_xammac_default=no
+   with_mobile_static_default=no
+   with_bitcode_default=no
+elif test x$with_runtime_preset = xall; then
+   with_cooperative_gc_default=no
+   with_profile4_x_default=yes
+   with_monodroid_default=yes
+   with_monotouch_default=yes
+   with_monotouch_watch_default=yes
+   with_monotouch_tv_default=yes
+   with_xammac_default=yes
+   with_mobile_static_default=yes
+   with_bitcode_default=no
+elif test x$with_runtime_preset = xmobile_static; then
+   DISABLE_MCS_DOCS_default=yes
+   with_cooperative_gc_default=no
+   with_profile4_x_default=no
+   with_monodroid_default=no
+   with_monotouch_default=no
+   with_monotouch_watch_default=no
+   with_monotouch_tv_default=no
+   with_xammac_default=no
+   with_mobile_static_default=yes
+   with_bitcode_default=no
+   with_cooperative_gc_default=no
+   TEST_PROFILE=mobile_static 
+elif test x$with_runtime_preset = xbitcode_mobile_static; then
+   DISABLE_MCS_DOCS_default=yes
+   with_profile4_x_default=no
+   with_monodroid_default=no
+   with_monotouch_default=no
+   with_monotouch_watch_default=no
+   with_monotouch_tv_default=no
+   with_xammac_default=no
+   with_mobile_static_default=yes
+   with_bitcode_default=yes
+   with_cooperative_gc_default=yes
+   TEST_PROFILE=mobile_static 
+   enable_llvm_default=yes
+   MONO_LLVMONLY=yes
+else
+   with_profile4_x_default=yes
+   with_monodroid_default=no
+   with_monotouch_default=no
+   with_monotouch_watch_default=no
+   with_monotouch_tv_default=no
+   with_bitcode_default=no
+   with_xammac_default=no
+   with_mobile_static_default=no
+   with_cooperative_gc_default=no
+fi
+
+AC_SUBST(TEST_PROFILE)
+
+if test "x$with_profile4_x" = "xdefault"; then
+   with_profile4_x=$with_profile4_x_default
+fi
+if test "x$with_monodroid" = "xdefault"; then
+   with_monodroid=$with_monodroid_default
+fi
+if test "x$with_monotouch" = "xdefault"; then
+   with_monotouch=$with_monotouch_default
+fi
+if test "x$with_monotouch_watch" = "xdefault"; then
+   with_monotouch_watch=$with_monotouch_watch_default
+fi
+if test "x$with_monotouch_tv" = "xdefault"; then
+   with_monotouch_tv=$with_monotouch_tv_default
+fi
+if test "x$with_bitcode" = "xdefault"; then
+   with_bitcode=$with_bitcode_default
+fi
+if test "x$with_xammac" = "xdefault"; then
+   with_xammac=$with_xammac_default
+fi
+if test "x$with_mobile_static" = "xdefault"; then
+   with_mobile_static=$with_mobile_static_default
+fi
+
+AM_CONDITIONAL(INSTALL_4_x, [test "x$with_profile4_x" = "xyes"])
+AM_CONDITIONAL(INSTALL_MONODROID, [test "x$with_monodroid" != "xno"])
+AM_CONDITIONAL(INSTALL_MONOTOUCH, [test "x$with_monotouch" != "xno"])
+AM_CONDITIONAL(INSTALL_MONOTOUCH_WATCH, [test "x$with_monotouch_watch" != "xno"])
+AM_CONDITIONAL(INSTALL_MONOTOUCH_TV, [test "x$with_monotouch_tv" != "xno"])
+AM_CONDITIONAL(BITCODE, test "x$with_bitcode" = "xyes")
+AM_CONDITIONAL(INSTALL_XAMMAC, [test "x$with_xammac" != "xno"])
+AM_CONDITIONAL(INSTALL_MOBILE_STATIC, [test "x$with_mobile_static" != "xno"])
+
+AC_SUBST(MONO_LLVMONLY)
+
+AC_SUBST(BITCODE)
+
+default_profile=net_4_x
+if test -z "$INSTALL_MONODROID_TRUE"; then :
+   default_profile=monodroid
+fi
+if test -z "$INSTALL_MONOTOUCH_TRUE"; then :
+   default_profile=monotouch
+fi
+if test -z "$INSTALL_XAMMAC_TRUE"; then :
+   default_profile=xammac
+fi
+if test -z "$INSTALL_MOBILE_STATIC_TRUE"; then :
+   default_profile=mobile_static
+fi
+if test -z "$INSTALL_4_x_TRUE"; then :
+   default_profile=net_4_x
+fi
+DEFAULT_PROFILE=$default_profile
+AC_SUBST(DEFAULT_PROFILE)
+
+#
+# End build profile configuration
+#
+
+if test x$USE_NLS = xprofile_default; then
+
+if test x$host_darwin = xyes; then
+# We make the default value for USE_NLS
+# "no" on OSX because it isn't available on most
+# default OSX installs. The most common configurations will
+# all disable it, so this saves us typing.
+  USE_NLS=no
+  AC_SUBST([USE_NLS])
+  AC_MSG_RESULT([$USE_NLS])
+else
+  USE_NLS=yes
+  AC_SUBST([USE_NLS])
+  AC_MSG_RESULT([$USE_NLS])
+fi
+
+fi
+
 AC_ARG_ENABLE(minimal, [  --enable-minimal=LIST      drop support for LIST subsystems.
      LIST is a comma-separated list from: aot, profiler, decimal, pinvoke, debug, appdomains, verifier, 
      reflection_emit, reflection_emit_save, large_code, logging, com, ssa, generics, attach, jit, simd, soft_debug, perfcounters, normalization, assembly_remapping, shared_perfcounters, remoting,
@@ -967,71 +1140,75 @@ AC_ARG_WITH(libgc,   [  --with-gc=included,none  Controls the Boehm GC config, d
 AC_ARG_ENABLE(boehm, [  --disable-boehm            Disable the Boehm GC.], support_boehm=$enableval,support_boehm=${support_boehm:-yes})
 AM_CONDITIONAL(SUPPORT_BOEHM, test x$support_boehm = xyes)
 
-AC_ARG_ENABLE(parallel-mark, [  --enable-parallel-mark     Enables Boehm GC Parallel Marking], enable_parallel_mark=$enableval, enable_parallel_mark=$parallel_mark)
-if test x$enable_parallel_mark = xyes; then
-       libgc_configure_args="$libgc_configure_args --enable-parallel-mark"
-fi
+if test "x$support_boehm" = "xyes"; then
 
-gc_msg=""
-LIBGC_CPPFLAGS=
-LIBGC_LIBS=
-LIBGC_STATIC_LIBS=
-libgc_dir=
-case "x$libgc" in
-       xincluded)
-               if test "x$support_boehm" = "xyes"; then
-                       libgc_dir=libgc
-               fi
+       AC_ARG_ENABLE(parallel-mark, [  --enable-parallel-mark     Enables Boehm GC Parallel Marking], enable_parallel_mark=$enableval, enable_parallel_mark=$parallel_mark)
+       if test x$enable_parallel_mark = xyes; then
+               libgc_configure_args="$libgc_configure_args --enable-parallel-mark"
+       fi
 
-               LIBGC_CPPFLAGS='-I$(top_srcdir)/libgc/include'
-               LIBGC_LIBS='$(top_builddir)/libgc/libmonogc.la'
-               LIBGC_STATIC_LIBS='$(top_builddir)/libgc/libmonogc-static.la'
+       gc_msg=""
+       LIBGC_CPPFLAGS=
+       LIBGC_LIBS=
+       LIBGC_STATIC_LIBS=
+       libgc_dir=
+       case "x$libgc" in
+               xincluded)
+                       if test "x$support_boehm" = "xyes"; then
+                               libgc_dir=libgc
+                       fi
 
-               BOEHM_DEFINES="-DHAVE_BOEHM_GC"
+                       LIBGC_CPPFLAGS='-I$(top_srcdir)/libgc/include'
+                       LIBGC_LIBS='$(top_builddir)/libgc/libmonogc.la'
+                       LIBGC_STATIC_LIBS='$(top_builddir)/libgc/libmonogc-static.la'
 
-               if test x$target_win32 = xyes; then
-                       BOEHM_DEFINES="$BOEHM_DEFINES -DGC_NOT_DLL"
-                       CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DGC_BUILD -DGC_NOT_DLL"
-               fi
+                       BOEHM_DEFINES="-DHAVE_BOEHM_GC"
 
-               gc_msg="Included Boehm GC with typed GC"
-               if test x$enable_parallel_mark = xyes; then
-                       AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "Included Boehm (with typed GC and Parallel Mark)", [GC description])
-                       gc_msg="$gc_msg and parallel mark"
-               else
-                       AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "Included Boehm (with typed GC)", [GC description])
-               fi
-               ;;
+                       if test x$target_win32 = xyes; then
+                               BOEHM_DEFINES="$BOEHM_DEFINES -DGC_NOT_DLL"
+                               CFLAGS_FOR_LIBGC="$CFLAGS_FOR_LIBGC -DGC_BUILD -DGC_NOT_DLL"
+                       fi
 
-       xboehm|xbohem|xyes)
-               AC_MSG_WARN("External Boehm is no longer supported")
-               ;;
+                       gc_msg="Included Boehm GC with typed GC"
+                       if test x$enable_parallel_mark = xyes; then
+                               AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "Included Boehm (with typed GC and Parallel Mark)", [GC description])
+                               gc_msg="$gc_msg and parallel mark"
+                       else
+                               AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "Included Boehm (with typed GC)", [GC description])
+                       fi
+                       ;;
 
-       xsgen)
-               AC_MSG_WARN("Use --with-sgen instead, --with-gc= controls Boehm configuration")
-               ;;
+               xboehm|xbohem|xyes)
+                       AC_MSG_WARN("External Boehm is no longer supported")
+                       ;;
 
-       xnone)
-               AC_MSG_WARN("Compiling mono without GC.")
-               AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "none", [GC description])
-               AC_DEFINE(HAVE_NULL_GC,1,[No GC support.])
-               gc_msg="none"
-               ;;
-       *)
-               AC_MSG_ERROR([Invalid argument to --with-gc.])
-               ;;
-esac
+               xsgen)
+                       AC_MSG_WARN("Use --with-sgen instead, --with-gc= controls Boehm configuration")
+                       ;;
 
-AC_ARG_WITH(large-heap, [  --with-large-heap=yes,no       Enable support for GC heaps larger than 3GB (defaults to no)], [large_heap=$withval], [large_heap=no])
-if test "x$large_heap" = "xyes"; then
-   CPPFLAGS="$CPPFLAGS -DLARGE_CONFIG"
-fi
+               xnone)
+                       AC_MSG_WARN("Compiling mono without GC.")
+                       AC_DEFINE_UNQUOTED(DEFAULT_GC_NAME, "none", [GC description])
+                       AC_DEFINE(HAVE_NULL_GC,1,[No GC support.])
+                       gc_msg="none"
+                       ;;
+               *)
+                       AC_MSG_ERROR([Invalid argument to --with-gc.])
+                       ;;
+       esac
+
+       AC_ARG_WITH(large-heap, [  --with-large-heap=yes,no       Enable support for GC heaps larger than 3GB (defaults to no)], [large_heap=$withval], [large_heap=no])
+       if test "x$large_heap" = "xyes"; then
+          CPPFLAGS="$CPPFLAGS -DLARGE_CONFIG"
+       fi
 
-AC_SUBST(LIBGC_CPPFLAGS)
-AC_SUBST(LIBGC_LIBS)
-AC_SUBST(LIBGC_STATIC_LIBS)
-AC_SUBST(libgc_dir)
-AC_SUBST(BOEHM_DEFINES)
+       AC_SUBST(LIBGC_CPPFLAGS)
+       AC_SUBST(LIBGC_LIBS)
+       AC_SUBST(LIBGC_STATIC_LIBS)
+       AC_SUBST(libgc_dir)
+       AC_SUBST(BOEHM_DEFINES)
+
+fi
 
 dnl
 dnl End of Boehm GC Configuration
@@ -2549,9 +2726,6 @@ if test "x$enable_nacl_codegen" = "xyes"; then
    MONO_NACL_ALIGN_MASK_OFF=1
    AC_DEFINE(TARGET_NACL, 1, [...])
    AC_DEFINE(__native_client_codegen__, 1, [...])
-else
-   MONO_NACL_ALIGN_MASK_OFF=0
-   AC_DEFINE(__default_codegen__, 1, [...])
 fi
 if test "x$enable_nacl_gc" = "xyes"; then
    if test "x$TARGET" = "xAMD64" -o "x$TARGET" = "xX86"; then
@@ -2575,13 +2749,17 @@ dnl **************
 dnl ***  LLVM  ***
 dnl **************
 
-AC_ARG_ENABLE(llvm,[  --enable-llvm    Enable the LLVM back-end], enable_llvm=$enableval, enable_llvm=no)
+AC_ARG_ENABLE(llvm,[  --enable-llvm    Enable the LLVM back-end], enable_llvm=$enableval, enable_llvm=default)
 AC_ARG_ENABLE(loadedllvm,[  --enable-loadedllvm        Load the LLVM back-end dynamically], enable_llvm=$enableval && enable_loadedllvm=$enableval, enable_loadedllvm=no)
 AC_ARG_ENABLE(llvm-version-check,[  --enable-llvm-version-check Check that the LLVM matches the version expected by mono], enable_llvm_version_check=$enableval, enable_llvm_version_check=no)
 AC_ARG_ENABLE(llvm-runtime,[  --enable-llvm-runtime    Enable runtime support for llvmonly code], enable_llvm_runtime=$enableval, enable_llvm_runtime=no)
 
 AC_ARG_WITH(llvm, [  --with-llvm=<llvm prefix>    Enable the LLVM back-end], enable_llvm=yes,)
 
+if test "x$enable_llvm" = "xdefault"; then
+   enable_llvm=$enable_llvm_default
+fi
+
 if test "x$enable_llvm" = "xyes"; then
    if test "x$with_llvm" != "x"; then
          LLVM_CONFIG=$with_llvm/bin/llvm-config
@@ -2873,6 +3051,7 @@ case "$host" in
                TARGET=ARM;
                TARGET_SYS=WATCHOS
                arch_target=arm;
+               arm_fpu=VFP_HARD
                ACCESS_UNALIGNED="no"
                CPPFLAGS="$CPPFLAGS -D__ARM_EABI__"
                ;;
@@ -2908,6 +3087,7 @@ case "$host" in
                TARGET=ARM64
                arch_target=arm64
                boehm_supported=false
+               AOT_SUPPORTED="yes"
                ;;
        s390x-*-linux*)
                TARGET=S390X;
@@ -2933,6 +3113,7 @@ if test "x$host" != "x$target"; then
                with_tls=pthread
                case "$target" in
                armv7k-*)
+                       arm_fpu=VFP_HARD
                        AC_DEFINE(TARGET_WATCHOS, 1, [...])
                        ;;
                esac            
@@ -3257,11 +3438,23 @@ dnl
 dnl Simple Generational checks (sgen)
 dnl
 SGEN_DEFINES=
-AC_ARG_WITH(sgen, [  --with-sgen=yes,no             Extra Generational GC, default=yes],[buildsgen=$with_sgen],[buildsgen=yes])
+AC_ARG_WITH(sgen,                    [  --with-sgen=yes,no             Extra Generational GC, default=yes],[buildsgen=$with_sgen],[buildsgen=yes])
+AC_ARG_WITH(sgen-default-concurrent, [  --with-sgen-default-concurrent=yes,no             Use Concurrent GC, default=no],[],[with_sgen_default_concurrent=no])
 if test x$buildsgen = xyes; then
    AC_DEFINE(HAVE_MOVING_COLLECTOR, 1, [Moving collector])
    SGEN_DEFINES="-DHAVE_SGEN_GC"
-   gc_msg="sgen and $gc_msg"
+
+       conc_gc_msg=""
+   if test x$with_sgen_default_concurrent != xno; then
+       AC_DEFINE(HAVE_CONC_GC_AS_DEFAULT, 1, [Defaults to concurrent GC])
+          conc_gc_msg=" (concurrent by default)"
+   fi
+
+   if test "x$gc_msg" = "x"; then
+      gc_msg="sgen$conc_gc_msg"
+   else
+      gc_msg="sgen$conc_gc_msg and $gc_msg"
+   fi
 fi
 AC_SUBST(SGEN_DEFINES)
 AM_CONDITIONAL(SUPPORT_SGEN, test x$buildsgen = xyes)
@@ -3447,6 +3640,10 @@ if test ${TARGET} = ARM; then
                ])
        fi
 
+       if test x$arm_fpu != x; then
+          fpu=$arm_fpu
+       fi
+
        AC_MSG_RESULT($fpu)
        CPPFLAGS="$CPPFLAGS -DARM_FPU_$fpu=1"
        unset fpu
@@ -3510,12 +3707,6 @@ if test ${TARGET} = ARM; then
        fi
 fi
 
-if test ${TARGET} = ARM; then
-       if test "x${with_jumptables}" = "xyes"; then
-                AC_DEFINE(USE_JUMP_TABLES, 1, Use jump tables in JIT)
-        fi
-fi
-
 if test ${TARGET} = unknown; then
        CPPFLAGS="$CPPFLAGS -DNO_PORT"
        AC_MSG_WARN("mono has not been ported to $host: some things may not work.")
@@ -3549,29 +3740,6 @@ case "x$libgc" in
                ;;
 esac
 
-AC_ARG_WITH(profile4_x,      [  --with-profile4=yes,no          If you want to install the 4.6 FX (defaults to yes)],                 [], [with_profile4_x=yes])
-AC_ARG_WITH(monodroid,       [  --with-monodroid=yes,no         If you want to build the MonoDroid assemblies (defaults to no)],      [], [with_monodroid=no])
-AC_ARG_WITH(monotouch,       [  --with-monotouch=yes,no         If you want to build the Xamarin.iOS assemblies (defaults to no)],    [], [with_monotouch=no])
-AC_ARG_WITH(monotouch_watch, [  --with-monotouch_watch=yes,no   If you want to build the Xamarin.WatchOS assemblies (defaults to no)],[], [with_monotouch_watch=no])
-AC_ARG_WITH(monotouch_tv,    [  --with-monotouch_tv=yes,no      If you want to build the Xamarin.TVOS assemblies (defaults to no)],   [], [with_monotouch_tv=no])
-AC_ARG_WITH(bitcode,         [  --with-bitcode=yes,no           If bitcode is enabled (defaults to no)],                              [], [with_bitcode=no])
-AC_ARG_WITH(xammac,          [  --with-xammac=yes,no            If you want to build the Xamarin.Mac assemblies (defaults to no)],    [], [with_xammac=no])
-AC_ARG_WITH(mobile_static,   [  --with-mobile_static=yes,no     If you want to build the mobile_static assemblies (defaults to no)],  [], [with_mobile_static=no])
-
-OPROFILE=no
-AC_ARG_WITH(oprofile,[  --with-oprofile=no,<oprofile install dir>   Enable oprofile support (defaults to no)],[
-       if test x$with_oprofile != xno; then
-           oprofile_include=$with_oprofile/include
-           if test ! -f $oprofile_include/opagent.h; then
-                 AC_MSG_ERROR([oprofile include file not found at $oprofile_include/opagent.h])
-               fi
-           OPROFILE=yes
-               OPROFILE_CFLAGS="-I$oprofile_include"
-           OPROFILE_LIBS="-L$with_oprofile/lib/oprofile -lopagent"
-           AC_DEFINE(HAVE_OPROFILE,1,[Have oprofile support])
-       fi
-])
-
 MALLOC_MEMPOOLS=no
 AC_ARG_WITH(malloc_mempools,[  --with-malloc-mempools=yes,no  Use malloc for each single mempool allocation (only for runtime debugging, defaults to no)],[
        if test x$with_malloc_mempools = xyes; then
@@ -3581,15 +3749,18 @@ AC_ARG_WITH(malloc_mempools,[  --with-malloc-mempools=yes,no  Use malloc for eac
 ])
 
 
-DISABLE_MCS_DOCS=no
+DISABLE_MCS_DOCS=default
 AC_ARG_WITH(mcs_docs,[  --with-mcs-docs=yes,no         If you want to build the documentation under mcs (defaults to yes)],[
        if test x$with_mcs_docs != xyes; then
                DISABLE_MCS_DOCS=yes
        fi
 ])
-if test x$with_profile4_x != xyes; then
+if test -n "$INSTALL_4_x_TRUE"; then :
        DISABLE_MCS_DOCS=yes
 fi
+if test "x$DISABLE_MCS_DOCS" = "xdefault"; then
+   DISABLE_MCS_DOCS=$DISABLE_MCS_DOCS_default
+fi
 
 AC_ARG_WITH(lazy_gc_thread_creation, [  --with-lazy-gc-thread-creation=yes|no      Enable lazy runtime thread creation, embedding host must do it explicitly (defaults to no)],[
        if test x$with_lazy_gc_thread_creation != xno ; then
@@ -3597,11 +3768,17 @@ AC_ARG_WITH(lazy_gc_thread_creation, [  --with-lazy-gc-thread-creation=yes|no
        fi
 ], [with_lazy_gc_thread_creation=no])
 
-AC_ARG_WITH(cooperative_gc, [  --with-cooperative-gc=yes|no      Enable cooperative stop-the-world garbage collection (sgen only) (defaults to no)],[
-       if test x$with_cooperative_gc != xno ; then
-               AC_DEFINE(USE_COOP_GC,1,[Enable cooperative stop-the-world garbage collection.])
-       fi
-], [with_cooperative_gc=no])
+AC_ARG_WITH(cooperative_gc, [  --with-cooperative-gc=yes|no      Enable cooperative stop-the-world garbage collection (sgen only) (defaults to no)], [], [with_cooperative_gc=default])
+
+if test x$with_cooperative_gc = xdefault; then
+       with_cooperative_gc=$with_cooperative_gc_default
+fi
+
+if test x$with_cooperative_gc != xno; then
+       AC_DEFINE(USE_COOP_GC,1,[Enable cooperative stop-the-world garbage collection.])
+fi
+
+AM_CONDITIONAL([ENABLE_COOP], [test x$with_cooperative_gc != xno])
 
 AC_ARG_ENABLE(checked_build, [  --enable-checked-build=LIST      To enable checked build (expensive asserts), configure with a comma-separated LIST of checked build modules and then include that same list in the environment variable MONO_CHECK_MODE at runtime. Recognized checked build modules: all, gc, metadata, thread],[
 
@@ -3657,20 +3834,6 @@ else
 fi
 AC_SUBST(LIBMONO_LA)
 
-dnl
-dnl Consistency settings
-dnl
-if test x$cross_compiling = xyes -o x$enable_mcs_build = xno; then
-   DISABLE_MCS_DOCS=yes
-   with_profile4_x=no
-   with_monodroid=no
-   with_monotouch=no
-   with_monotouch_watch=no
-   with_monotouch_tv=no
-   with_xammac=no
-   with_mobile_static=no
-fi
-
 if test x$DISABLE_MCS_DOCS = xyes; then
    docs_dir=""
 else
@@ -3681,21 +3844,8 @@ AC_SUBST(docs_dir)
 ## Maybe should also disable if mcsdir is invalid.  Let's punt the issue for now.
 AM_CONDITIONAL(BUILD_MCS, [test x$cross_compiling = xno && test x$enable_mcs_build != xno])
 
-AM_CONDITIONAL(HAVE_OPROFILE, test x$OPROFILE = xyes)
-AC_SUBST(OPROFILE_CFLAGS)
-AC_SUBST(OPROFILE_LIBS)
-
 libmono_ldflags="$libmono_ldflags $LIBS"
 
-AM_CONDITIONAL(INSTALL_4_x, [test "x$with_profile4_x" = xyes])
-AM_CONDITIONAL(INSTALL_MONODROID, [test "x$with_monodroid" != "xno"])
-AM_CONDITIONAL(INSTALL_MONOTOUCH, [test "x$with_monotouch" != "xno"])
-AM_CONDITIONAL(INSTALL_MONOTOUCH_WATCH, [test "x$with_monotouch_watch" != "xno"])
-AM_CONDITIONAL(INSTALL_MONOTOUCH_TV, [test "x$with_monotouch_tv" != "xno"])
-AM_CONDITIONAL(BITCODE, test "x$with_bitcode" = "xyes")
-AM_CONDITIONAL(INSTALL_XAMMAC, [test "x$with_xammac" != "xno"])
-AM_CONDITIONAL(INSTALL_MOBILE_STATIC, [test "x$with_mobile_static" != "xno"])
-
 AM_CONDITIONAL(MIPS_GCC, test ${TARGET}${ac_cv_prog_gcc} = MIPSyes)
 AM_CONDITIONAL(MIPS_SGI, test ${TARGET}${ac_cv_prog_gcc} = MIPSno)
 AM_CONDITIONAL(SPARC, test x$TARGET = xSPARC)
@@ -3750,22 +3900,6 @@ else
 fi
 AC_SUBST(mono_cfg_dir)
 
-default_profile=net_4_x
-if test -z "$INSTALL_MONODROID_TRUE"; then :
-   default_profile=monodroid
-fi
-if test -z "$INSTALL_MONOTOUCH_TRUE"; then :
-   default_profile=monotouch
-fi
-if test -z "$INSTALL_XAMMAC_TRUE"; then :
-   default_profile=xammac
-fi
-if test -z "$INSTALL_4_x_TRUE"; then :
-   default_profile=net_4_x
-fi
-DEFAULT_PROFILE=$default_profile
-AC_SUBST(DEFAULT_PROFILE)
-
 AC_CONFIG_FILES([po/mcs/Makefile.in])
 
 AC_CONFIG_FILES([runtime/mono-wrapper],[chmod +x runtime/mono-wrapper])
@@ -3932,6 +4066,7 @@ AC_OUTPUT([
 Makefile
 mono-uninstalled.pc
 acceptance-tests/Makefile
+llvm/Makefile
 scripts/mono-find-provides
 scripts/mono-find-requires
 mono/Makefile
@@ -3998,6 +4133,7 @@ tools/Makefile
 tools/locale-builder/Makefile
 tools/sgen/Makefile
 tools/monograph/Makefile
+tools/pedump/Makefile
 runtime/Makefile
 msvc/Makefile
 po/Makefile
@@ -4090,6 +4226,10 @@ fi
       echo "BCL_OPTIMIZE = 1" >> $srcdir/$mcsdir/build/config.make
     fi
 
+    if test "x$MONO_LLVMONLY" = "xyes" ; then
+      echo "MONO_LLVMONLY = 1" >> $srcdir/$mcsdir/build/config.make
+    fi
+
   fi
 
 )
@@ -4106,13 +4246,12 @@ echo "
        TLS:           $with_tls
        SIGALTSTACK:   $with_sigaltstack
        Engine:        $jit_status
-       oprofile:      $OPROFILE
        BigArrays:     $enable_big_arrays
        DTrace:        $enable_dtrace
        LLVM Back End: $enable_llvm (dynamically loaded: $enable_loadedllvm)
 
    Libraries:
-       .NET 4.6:        $with_profile4_x
+       .NET 4.x:        $with_profile4_x
        Xamarin.Android: $with_monodroid
        Xamarin.iOS:     $with_monotouch
        Xamarin.WatchOS: $with_monotouch_watch
index 2197c6f9c96605404f19ee9bc6b0b038f94986fb..7622701ef455e81d8ce977db10503d84da267ba9 100644 (file)
@@ -181,7 +181,7 @@ if test "x$have_iso_varargs" = "xyes"; then
 fi
 AC_SUBST(G_HAVE_ISO_VARARGS)
 
-AC_CHECK_HEADERS(getopt.h sys/select.h sys/time.h sys/wait.h pwd.h langinfo.h iconv.h localcharset.h sys/types.h sys/resource.h)
+AC_CHECK_HEADERS(getopt.h sys/select.h sys/time.h sys/wait.h pwd.h iconv.h localcharset.h sys/types.h sys/resource.h)
 AC_CHECK_LIB([iconv], [locale_charset],[],[AC_CHECK_LIB([charset], [locale_charset],[LIBS+="-liconv -lcharset"])])
 AC_CHECK_HEADER(alloca.h, [HAVE_ALLOCA_H=1], [HAVE_ALLOCA_H=0])
 AC_SUBST(HAVE_ALLOCA_H)
@@ -193,10 +193,6 @@ if test $ac_cv_sizeof_void_p = $ac_cv_sizeof_int; then
    GUINT_TO_POINTER="((gpointer) (v))"
    GSIZE="int"
    GSIZE_FORMAT='"u"'
-   G_GUINT64_FORMAT='"llu"'
-   G_GINT64_FORMAT='"lld"'
-   G_GUINT32_FORMAT='"lu"'
-   G_GINT32_FORMAT='"ld"'
 elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long; then
    GPOINTER_TO_INT="((gint)(long) (ptr))"
    GPOINTER_TO_UINT="((guint)(long) (ptr))"
@@ -204,10 +200,6 @@ elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long; then
    GUINT_TO_POINTER="((gpointer)(gulong) (v))"
    GSIZE="long"
    GSIZE_FORMAT='"lu"'
-   G_GUINT64_FORMAT='"lu"'
-   G_GINT64_FORMAT='"ld"'
-   G_GUINT32_FORMAT='"u"'
-   G_GINT32_FORMAT='"d"'
 elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long_long; then
    GPOINTER_TO_INT="((gint)(long long) (ptr))"
    GPOINTER_TO_UINT="((guint)(unsigned long long) (ptr))"
@@ -215,10 +207,6 @@ elif test $ac_cv_sizeof_void_p = $ac_cv_sizeof_long_long; then
    GUINT_TO_POINTER="((gpointer)(unsigned long long) (v))"
    GSIZE="long long"
    GSIZE_FORMAT='"I64u"'
-   G_GUINT64_FORMAT='"I64u"'
-   G_GINT64_FORMAT='"I64i"'
-   G_GUINT32_FORMAT='"I32u"'
-   G_GINT32_FORMAT='"I32i"'
 else
    AC_MSG_ERROR([unsupported pointer size])
 fi
index 8f5a245cfebac07514f809750e28dd8210685183..ae7b6d45337183fb48d52b2593f26b7d0c0de28f 100644 (file)
@@ -27,10 +27,6 @@ typedef unsigned @GSIZE@ gsize;
 typedef signed   @GSIZE@ gssize;
 
 #define G_GSIZE_FORMAT   @GSIZE_FORMAT@
-#define G_GUINT64_FORMAT @G_GUINT64_FORMAT@
-#define G_GINT64_FORMAT @G_GINT64_FORMAT@
-#define G_GUINT32_FORMAT @G_GUINT32_FORMAT@
-#define G_GINT32_FORMAT @G_GINT32_FORMAT@
 
 #if @G_HAVE_ISO_VARARGS@ == 1
 #define G_HAVE_ISO_VARARGS
index 192d39367b60c1a7c2433fb19b5f095c6fcb1881..cc7bd44a8ca25c8938a2d7a28b7335a24c5fda72 100644 (file)
@@ -26,27 +26,14 @@ typedef int pid_t;
 #define G_SEARCHPATH_SEPARATOR_S ";"
 #define G_SEARCHPATH_SEPARATOR   ';'
 #define G_GSIZE_FORMAT   "d"
-#define G_GUINT64_FORMAT "d"
-#define G_GINT64_FORMAT "d"
 #define GPOINTER_TO_INT(ptr)   ((gint)(intptr_t) (ptr))
 #define GPOINTER_TO_UINT(ptr)  ((guint)(intptr_t) (ptr))
 #define GINT_TO_POINTER(v)     ((gpointer)(intptr_t) (v))
 #define GUINT_TO_POINTER(v)    ((gpointer)(intptr_t) (v))
 
-/* VS 2010 and later have stdint.h */
-#if defined(_MSC_VER) && _MSC_VER < 1600
-#define INT32_MAX 2147483647
-#define INT32_MIN (~ INT32_MAX)
-#define INT64_MAX 9223372036854775807i64
-#define INT64_MIN (~INT64_MAX)
-#define UINT32_MAX 0xffffffffU
-#define UINT64_MAX 0xffffffffffffffffULL
-#endif
-
 #define STDOUT_FILENO (int)(intptr_t)stdout
 #define STDERR_FILENO (int)(intptr_t)stderr
 
-
 /* FIXME: what should this be ?*/
 #define X_OK 4 /* This is really read */
 #define WNOHANG 1
index f5473bd2a5c0ee172cffe5de50d491768dfaa498..72770b2f44fab3fae7b0a5312b83d802df98524e 100644 (file)
 #pragma include_alias(<eglib-config.h>, <eglib-config.hw>)
 #endif
 
-/* VS 2010 and later have stdint.h */
-#if defined(_MSC_VER) && _MSC_VER < 1600
-#else
 #include <stdint.h>
-#endif
 
 #include <eglib-config.h>
 #ifndef EGLIB_NO_REMAP
@@ -63,21 +59,6 @@ typedef const void *   gconstpointer;
 typedef char           gchar;
 typedef unsigned char  guchar;
 
-#if !G_TYPES_DEFINED
-/* VS 2010 and later have stdint.h */
-#if defined(_MSC_VER) && _MSC_VER < 1600
-typedef __int8                 gint8;
-typedef unsigned __int8                guint8;
-typedef __int16                        gint16;
-typedef unsigned __int16       guint16;
-typedef __int32                        gint32;
-typedef unsigned __int32       guint32;
-typedef __int64                        gint64;
-typedef unsigned __int64       guint64;
-typedef float                  gfloat;
-typedef double                 gdouble;
-typedef int                    gboolean;
-#else
 /* Types defined in terms of the stdint.h */
 typedef int8_t         gint8;
 typedef uint8_t        guint8;
@@ -90,8 +71,6 @@ typedef uint64_t       guint64;
 typedef float          gfloat;
 typedef double         gdouble;
 typedef int32_t        gboolean;
-#endif
-#endif
 
 typedef guint16 gunichar2;
 typedef guint32 gunichar;
@@ -135,6 +114,11 @@ typedef guint32 gunichar;
 
 #define G_CONST_RETURN const
 
+#define G_GUINT64_FORMAT PRIu64
+#define G_GINT64_FORMAT PRIi64
+#define G_GUINT32_FORMAT PRIu32
+#define G_GINT32_FORMAT PRIi32
+
 /*
  * Allocation
  */
index e6f4b925b61c0eeb2b063a5c686ca7941fd0d0d5..36d6d4acfb76ad52a1bca0da47bbcd6def49b9cd 100644 (file)
@@ -44,9 +44,6 @@
 #  define CODESET 1
 #  include <windows.h>
 #else
-#    ifdef HAVE_LANGINFO_H
-#       include <langinfo.h>
-#    endif
 #    ifdef HAVE_LOCALCHARSET_H
 #       include <localcharset.h>
 #    endif
@@ -219,9 +216,7 @@ g_get_charset (G_CONST_RETURN char **charset)
                is_utf8 = FALSE;
 #else
                /* These shouldn't be heap allocated */
-#if defined(HAVE_LANGINFO_H)
-               my_charset = nl_langinfo (CODESET);
-#elif defined(HAVE_LOCALCHARSET_H)
+#if defined(HAVE_LOCALCHARSET_H)
                my_charset = locale_charset ();
 #else
                my_charset = "UTF-8";
index 00252c18fc0a4a206e45461736a890acb785a9d8..9f44f259bf5059df6c8019948ea75313bd09a9fb 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 00252c18fc0a4a206e45461736a890acb785a9d8
+Subproject commit 9f44f259bf5059df6c8019948ea75313bd09a9fb
index 5a80e74622e66e16ed0e4f0e9598d5ebc024d789..7065bc89e8661cad447140752c0fce118644e06e 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 5a80e74622e66e16ed0e4f0e9598d5ebc024d789
+Subproject commit 7065bc89e8661cad447140752c0fce118644e06e
index 16a6fb6d003a0bdd7091fe7001b114482fdb826a..5533b8f2e252bf750dba873d24aeecf78b79facd 100644 (file)
@@ -184,7 +184,7 @@ static GC_thread GC_new_thread(void) {
 #ifdef __GNUC__
 __inline__
 #endif
-LONG GC_get_max_thread_index()
+static LONG GC_get_max_thread_index()
 {
   LONG my_max = GC_max_thread_index;
 
diff --git a/llvm/.gitignore b/llvm/.gitignore
new file mode 100644 (file)
index 0000000..b336cc7
--- /dev/null
@@ -0,0 +1,2 @@
+/Makefile
+/Makefile.in
diff --git a/llvm/Makefile.am b/llvm/Makefile.am
new file mode 100644 (file)
index 0000000..e8004bf
--- /dev/null
@@ -0,0 +1,29 @@
+#
+# Conditional submodule for llvm
+#
+# make reset-llvm will checkout a version of llvm which is suitable for this version of mono
+# into $top_srcdir/llvm/llvm.
+#
+
+LLVM_PATH=llvm
+
+include $(top_srcdir)/scripts/submodules/versions.mk
+
+$(eval $(call ValidateVersionTemplate,llvm,LLVM))
+
+# Bump the given submodule to the revision given by the REV make variable
+# If COMMIT is 1, commit the change
+bump-llvm: __bump-version-llvm
+
+# Bump the given submodule to the branch given by the BRANCH/REMOTE_BRANCH make variables
+# If COMMIT is 1, commit the change
+bump-branch-llvm: __bump-branch-llvm
+
+# Bump the given submodule to its current GIT version
+# If COMMIT is 1, commit the change
+bump-current-llvm: __bump-current-version-llvm
+
+clean-local:
+       $(RM) -r $(LLVM_PATH)
+
+EXTRA_DIST=SUBMODULES.json
diff --git a/llvm/SUBMODULES.json b/llvm/SUBMODULES.json
new file mode 100644 (file)
index 0000000..e4fbbb0
--- /dev/null
@@ -0,0 +1,10 @@
+[
+  {
+      "name": "llvm", 
+      "url": "git://github.com/mono/llvm.git",
+      "rev": "9f79399f87282524fee099b328bd8cbf07929daf",
+      "remote-branch": "origin/master", 
+      "branch": "master", 
+      "directory": "llvm"
+  }
+]
index 003704c4b93b51bf11bd430c4344be47b63cb856..93e89ee4632b0b9bc9e0e00266787603cb8d191e 100644 (file)
--- a/m4/nls.m4
+++ b/m4/nls.m4
@@ -26,7 +26,7 @@ AC_DEFUN([AM_NLS],
   dnl Default is enabled NLS
   AC_ARG_ENABLE([nls],
     [  --disable-nls           do not use Native Language Support],
-    USE_NLS=$enableval, USE_NLS=yes)
+    USE_NLS=$enableval, USE_NLS=profile_default)
   AC_MSG_RESULT([$USE_NLS])
   AC_SUBST([USE_NLS])
 ])
index ed704b89d6aea515bdfa80ec664c4709a2b2e705..d61fc1757b1d70f822325fb6a661428c3e48aadc 100644 (file)
@@ -21,9 +21,34 @@ default only the assemblies specified in the command line will be
 included in the bundle.  To automatically include all of the
 dependencies referenced, use the "--deps" command line option.
 .PP
-Use \fImkbundle\FP when you want the startup runtime to load the 1.0
-profile, and use \fImkbundle2\fP when you want the startup runtime to load
-the 2.0 profile.
+There are two modes of operation, the default one uses the
+C compiler to create a bundle and requires a complete C and Mono SDK
+to produced executables.   The simple mode (enabled when using the
+"--simple") command line option does not require this, and also allows
+for cross compilation.
+.PP
+For example, to create a bundle for hello world, use the following
+command:
+.nf
+       $ mkbundle -o hello --simple hello.exe
+.fi
+.PP
+The simple version allows for cross-compiling, this requires a Mono
+runtime to be installed in the ~/.mono/targets/TARGET/mono to be
+available.   You can use the "--local-targets" to list all available
+targets, and the "--cross" argument to specify the target, like this:
+.nf
+       $ mkbundle --local-targets      
+       Available targets:
+               default - Current System Mono
+               4.4.0-macosx-x86
+               4.4.0-debian-8-arm64
+       $ mkbundle --cross 4.4.0-debian-8-powerpc hello.exe -o hello-debian
+.fi
+.PP
+The above will bundle your native library into hello-debian for
+a Debian 8 system running on a PowerPC machine.
+.SH OLD EMBEDDING
 .PP
 For example, to create a bundle for hello world, use the following
 command:
@@ -57,6 +82,12 @@ are available to the embedded runtime.
 .I "-c"
 Produce the stub file, do not compile the resulting stub.
 .TP
+.I "--cross target"
+Creates a bundle for the specified target platform.   The target
+must be a directory in ~/.mono/targets/ that contains a "mono"
+binary.   You can fetch various targets using the --fetch-target
+command line option.
+.TP
 .I "-o filename"
 Places the output on `out'.  If the flag -c is specified, this is the
 C host program.  If not, this contains the resulting executable.
@@ -74,20 +105,31 @@ Typically this is $prefix/etc/mono/1.0/machine.config or
 $prefix/etc/mono/2.0/machine.config depending on the profile that you
 are using (1.0 or 2.0)
 .TP
-.I  "--nodeps"
-This is the default: \fImkbundle\fP will only include the assemblies that
-were specified on the command line to reduce the size of the resulting
-image created.
-.TP
 .I "--deps"
 This option will bundle all of the referenced assemblies for the
 assemblies listed on the command line option.  This is useful to
 distribute a self-contained image.
 .TP
+.I "--fetch-target target"
+Downloads a precompiled runtime for the specified target from the Mono
+distribution site.
+.TP
+.I  "--nodeps"
+This is the default: \fImkbundle\fP will only include the assemblies that
+were specified on the command line to reduce the size of the resulting
+image created.
+.TP
 .I "--keeptemp"
 By default \fImkbundle\fP will delete the temporary files that it uses to
 produce the bundle.  This option keeps the file around.
 .TP
+.I "--lists-targets"
+Lists all of the available local cross compilation targets available
+as precompiled binaries on the Mono distribution server.
+.TP
+.I "--local-targets"
+Lists all of the available local cross compilation targets.
+.TP
 .I "--machine-config FILE"
 Uses the given FILE as the machine.config file for the generated
 application.   
@@ -102,13 +144,10 @@ When passed, DIR will be set for the MONO_CFG_DIR environment variable
 By default \fImkbundle\fP dynamically links to mono and glib.  This option
 causes it to statically link instead.
 .TP
-.B Important:
-Since the Mono runtime is licensed under the LGPL, even if you use
-static you should transfer the component pieces of the mkbundle to
-your users so they are able to upgrade the Mono runtime on their own.
-.TP
-If you want to use this for commercial licenses, you must obtain a
-proprietary license for Mono from mono@novell.com
+.I "--target-server SERVER"
+By default the mkbundle tool will download from a Mono server the
+target runtimes, you can specify a different server to provide
+cross-compiled runtimes.
 .TP
 .I "-z"
 Compresses the assemblies before embedding. This results in smaller
@@ -133,6 +172,8 @@ Mono runtime, separated by spaces. See the mono(1) manual page or run mono --hel
 .SH FILES
 This program will load referenced assemblies from the Mono assembly
 cache. 
+.PP
+Targets are loaded from ~/.mono/targets/TARGETNAME/mono
 .SH BUGS
 The option "--static" is not supported under Windows.
 Moreover, a full cygwin environment containing at least "gcc" and "as"
index 22ffdeb139ec2c94ebf1a57e7b052ce317bd573f..7bd449dd4559c7c9d8e1ca61432ef8a5b0340577 100644 (file)
@@ -7,7 +7,7 @@
 .\" Author:
 .\"   Miguel de Icaza (miguel@gnu.org)
 .\"
-.TH Mono "Mono 3.0"
+.TH Mono "Mono 4.5.2"
 .SH NAME
 mono \- Mono's ECMA-CLI native code generator (Just-in-Time and Ahead-of-Time)
 .SH SYNOPSIS
@@ -1732,6 +1732,16 @@ messages for a certain component. You can use multiple masks by comma
 separating them. For example to see config file messages and assembly loader
 messages set you mask to "asm,cfg".
 .TP
+\fBMONO_LOG_DEST\fR
+Controls where trace log messages are written. If not set then the messages go to stdout. 
+If set, the string either specifies a path to a file that will have messages appended to
+it, or the string "syslog" in which case the messages will be written to the system log.
+Under Windows, this is simulated by writing to a file called "mono.log". 
+\fBMONO_LOG_HEADER\fR
+Controls whether trace log messages not directed to syslog have the id, timestamp, and
+pid as the prefix to the log message. To enable a header this environment variable need
+just be non-null. 
+.TP
 \fBMONO_TRACE\fR
 Used for runtime tracing of method calls. The format of the comma separated
 trace options is:
index cee481c81370259b5c425ae246164dea61ee1725..95c3b1615e6d84a226ad253408dfe4c87aa3ca62 100644 (file)
@@ -20,3 +20,12 @@ class/RabbitMQ.Client/docs/specs/autogenerated-api-qpid-0-8.cs
 class/System.Web.Mvc/System.Web.Mvc/Resources/MvcResources.resources
 class/System.Web.Mvc2/System.Web.Mvc/Resources/MvcResources.resources
 XmlWriter
+obj-net_4_x
+obj-bare
+obj-plainweb
+obj-Facades
+obj-plaincore
+obj-plaindesign
+obj-plainservice
+obj-secxml
+obj-mcs-net_4_x
index 1e1ace7d7b136e1ffce23cc783a72f27476f499d..f5b95a5a32e011e5a092d80d945a1136cbf634ff 100644 (file)
@@ -15,8 +15,6 @@ build system needs to let us do, specifically:
 
 
 
-
-
 ** Makefile structure
 
 A general makefile looks like this:
@@ -438,7 +436,15 @@ To give it flags, set $(LOCAL_CFLAGS). As with compiling C#, the
 variable $(CFLAGS) will automatically be included on the command line.
 
 
+* Compiling resources with resgen
+
+If you have a resource that should be compiled with resgen and
+included in your assembly, you can use the RESOURCES_DEFS variable.
+This variable can contain lists of pairs that are separated by comma
+to represent the resource ID as embedded in the assembly followed by
+the file name, like this:
 
+RESOURCE_DEFS = Messages,TextResources.resx Errors,ErrorList.txt
 
 
 * Documentation-related needs? Use $(MDOC)
index 29ba89909e6d397d8d2012a09999717af7561526..afcad223f8e969f9261f2d7c631a2b624beefbc7 100644 (file)
@@ -154,6 +154,15 @@ MCS_REFERENCES += $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.exe,$(EXE_REF
 
 all-local: $(makefrag) $(extra_targets)
 
+ifdef BUILT_SOURCES
+library_CLEAN_FILES += $(BUILT_SOURCES)
+ifeq (cat, $(PLATFORM_CHANGE_SEPARATOR_CMD))
+BUILT_SOURCES_cmdline = $(BUILT_SOURCES)
+else
+BUILT_SOURCES_cmdline = `echo $(BUILT_SOURCES) | $(PLATFORM_CHANGE_SEPARATOR_CMD)`
+endif
+endif
+
 csproj-local:
        config_file=`basename $(PROGRAM) .exe`-$(PROFILE).input; \
        echo $(thisdir):$$config_file >> $(topdir)/../msvc/scripts/order; \
@@ -164,6 +173,7 @@ csproj-local:
        echo $(build_lib); \
        echo $(FRAMEWORK_VERSION); \
        echo $(PROFILE); \
+       echo $(RESOURCE_DEFS); \
        echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
 
 
index 895d67b6933b4e14cff75d8b31433a4323a8c197..e0c16f48e90558609352e080ed67c54f4e64b43e 100644 (file)
@@ -134,7 +134,7 @@ endif
 csproj-local: csproj-library csproj-test
 
 intermediate_clean=$(subst /,-,$(intermediate))
-csproj-library: 
+csproj-library:
        config_file=`basename $(LIBRARY) .dll`-$(intermediate_clean)$(PROFILE).input; \
        case "$(thisdir)" in *"Facades"*) config_file=Facades_$$config_file;; esac; \
        echo $(thisdir):$$config_file >> $(topdir)/../msvc/scripts/order; \
@@ -145,6 +145,7 @@ csproj-library:
        echo $(build_lib); \
        echo $(FRAMEWORK_VERSION); \
        echo $(PROFILE); \
+       echo $(RESOURCE_DEFS); \
        echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
 
 csproj-test:
@@ -216,7 +217,28 @@ clean-local:
 test-local run-test-local run-test-ondotnet-local:
        @:
 
-DISTFILES = $(wildcard *$(LIBRARY)*.sources) $(EXTRA_DISTFILES)
+#
+# RESOURCES_DEFS is a list of ID,FILE pairs separated by spaces
+# for each of those, generate a rule that produces ID.resource from
+# FILE using the resgen tool, adds the generated file to CLENA_FILES and
+# passes the resource to the compiler
+#
+ccomma = ,
+define RESOURCE_template
+$(1).resources: $(2)
+       $(RESGEN) "$$<" "$$@"
+
+GEN_RESOURCE_DEPS += $(1).resources
+GEN_RESOURCE_FLAGS += -resource:$(1).resources
+CLEAN_FILES += $(1).resources
+DIST_LISTED_RESOURCES += $(2)
+endef
+
+ifdef RESOURCE_DEFS
+$(foreach pair,$(RESOURCE_DEFS), $(eval $(call RESOURCE_template,$(word 1, $(subst $(ccomma), ,$(pair))), $(word 2, $(subst $(ccomma), ,$(pair))))))
+endif
+
+DISTFILES = $(wildcard *$(LIBRARY)*.sources) $(EXTRA_DISTFILES) $(DIST_LISTED_RESOURCES)
 
 ASSEMBLY      = $(LIBRARY)
 ASSEMBLY_EXT  = .dll
@@ -236,6 +258,7 @@ csproj-test:
        echo $(test_lib); \
        echo $(FRAMEWORK_VERSION); \
        echo $(PROFILE); \
+       echo ""; \
        echo $(test_response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
 
 endif
@@ -275,12 +298,12 @@ endif
 
 $(the_lib): $(the_libdir)/.stamp
 
-$(build_lib): $(response) $(sn) $(BUILT_SOURCES) $(build_libdir:=/.stamp)
-       $(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) -target:library -out:$@ $(BUILT_SOURCES_cmdline) @$(response)
-       $(Q) $(SN) -R $@ $(LIBRARY_SNK)
+$(build_lib): $(response) $(sn) $(BUILT_SOURCES) $(build_libdir:=/.stamp) $(GEN_RESOURCE_DEPS)
+       $(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) $(GEN_RESOURCE_FLAGS) -target:library -out:$@ $(BUILT_SOURCES_cmdline) @$(response)
 ifdef RESOURCE_STRINGS_FILES
        $(Q) $(STRING_REPLACER) $(RESOURCE_STRINGS_FILES) $@
 endif
+       $(Q) $(SN) -R $@ $(LIBRARY_SNK)
 
 ifdef LIBRARY_USE_INTERMEDIATE_FILE
 $(the_lib): $(build_lib)
index 563253738a2bfb1d1368cba6eb1a9823154dd39a..b48617d66fabed49adcbffeccc0e89549afd6a8e 100644 (file)
@@ -18,7 +18,7 @@ endif
 
 MCS = $(with_mono_path) $(INTERNAL_GMCS)
 
-PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:$(topdir)/class/lib/$(PROFILE)
+PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -lib:$(topdir)/class/lib/$(PROFILE)
 NO_SIGN_ASSEMBLY = yes
 NO_TEST = yes
 NO_INSTALL = yes
index 3b4c7e0706e4fb4862fc5eaf17fffb0d805e6c65..1acf54c1e2e5027f0bc25758b5704ccb74983044 100644 (file)
@@ -13,7 +13,7 @@ profile-check:
        @:
 
 DEFAULT_REFERENCES = -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll
-PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES)
+PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES)
 
 NO_SIGN_ASSEMBLY = yes
 NO_TEST = yes
index 70908afa4e194fa55f910c259b89c231f11eebfd..4cb0fabc2db9614a0dd9a9c7b6deb6ac549a5b96 100644 (file)
@@ -23,7 +23,6 @@ PROFILE_MCS_FLAGS = \
        -d:NET_4_0 \
        -d:NET_4_5 \
        -d:MONO \
-       -d:DISABLE_CAS_USE \
        -nowarn:1699 \
        -nostdlib \
        $(DEFAULT_REFERENCES) \
index f13e65d83ccb7bdfadde12ab9a255ee7001898aa..4dd77182c7be9c82f3f0ebfcbd62f7e466bf2224 100644 (file)
@@ -21,7 +21,6 @@ PROFILE_MCS_FLAGS = \
        -d:NET_4_0 \
        -d:NET_4_5 \
        -d:MONO \
-       -d:DISABLE_CAS_USE \
        -d:MOBILE,MOBILE_STATIC,MOBILE_LEGACY \
        -d:FULL_AOT_RUNTIME \
        -d:DISABLE_REMOTING \
@@ -41,7 +40,7 @@ MOBILE_PROFILE = yes
 NO_VTS_TEST = yes
 
 # Note need for trailing comma. If you add, keep it
-PROFILE_TEST_HARNESS_EXCLUDES = MobileNotWorking,
+PROFILE_TEST_HARNESS_EXCLUDES = MobileNotWorking,PKITS,
 
 ifndef MONO_DISABLE_GSHAREDVT
 GSHAREDVT_FLAG = -O=gsharedvt
index 9ea27d6c9c7f866de0d850093cad9056a9301ab9..9aacd7f48b5141e5abef038d39cd078fa4c12d34 100644 (file)
@@ -21,7 +21,6 @@ PROFILE_MCS_FLAGS = \
        -d:NET_4_0 \
        -d:NET_4_5 \
        -d:MONO \
-       -d:DISABLE_CAS_USE \
        -d:MOBILE,MOBILE_LEGACY \
        -d:MOBILE_DYNAMIC \
        -d:MONODROID \
index f127fd7d19043fc3f7a79656697477b03a109cfa..2ff609c1a7def7d57a49474029c829da0a656ecb 100644 (file)
@@ -23,7 +23,6 @@ PROFILE_MCS_FLAGS = \
        -d:NET_4_5 \
        -d:MOBILE,MOBILE_LEGACY \
        -d:MONO \
-       -d:DISABLE_CAS_USE \
        -d:MONOTOUCH \
        -d:DISABLE_REMOTING \
        -d:DISABLE_COM \
index a93b03b7f6b4fffa902356cac8ca5e2728aa2400..00d5bc12ee4106f9720266bffa7101b3edf44f76 100644 (file)
@@ -11,7 +11,7 @@ profile-check:
        @:
 
 DEFAULT_REFERENCES = -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll
-PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE  -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES) $(PLATFORM_DEBUG_FLAGS)
+PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO  -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES) $(PLATFORM_DEBUG_FLAGS)
 
 FRAMEWORK_VERSION = 4.5
 XBUILD_VERSION = 4.0
index d3cbdb5d972e886f246edaf9ffef7269086697e5..14ffacaa7ab7817cbc2ecf1b6ee7c128129b34ea 100644 (file)
@@ -19,7 +19,6 @@ PROFILE_MCS_FLAGS = \
        -d:NET_4_0 \
        -d:NET_4_5 \
        -d:MONO \
-       -d:DISABLE_CAS_USE  \
        -d:MOBILE \
        -d:MOBILE_DYNAMIC \
        -d:XAMMAC \
index 5fda8826d12968f30542b58a29219ceff5d11208..5e90cf8ddac60c76169f749959fabe51e0fe4484 100644 (file)
@@ -144,11 +144,11 @@ endif
 
 # Set the options for building and running AOT
 # The trampoline numbers are provisional, they are what is required
-# to run the corlib test suite. They should be considered a lower bound.
-INVARIANT_AOT_OPTIONS=nimt-trampolines=900,ntrampolines=8000
+# to run the mcs/class test suites. They should be considered a lower bound.
+INVARIANT_AOT_OPTIONS=nimt-trampolines=900,ntrampolines=8000,nrgctx-fetch-trampolines=256
 
 ifndef MONO_DISABLE_GSHAREDVT
-INVARIANT_AOT_OPTIONS:=$(INVARIANT_AOT_OPTIONS),ngsharedvt-trampolines=900
+INVARIANT_AOT_OPTIONS:=$(INVARIANT_AOT_OPTIONS),ngsharedvt-trampolines=2800
 endif
 
 AOT_BUILD_FLAGS = $(AOT_BUILD_FLAGS_PREFIX)$(INVARIANT_AOT_OPTIONS)
index 7f27dd9fd511c66eca5e9044e336c75bc5157a27..16d3a64b65ef2890025c644210a2fbaa7fb7ab6b 100644 (file)
@@ -38,7 +38,7 @@ test_sourcefile = $(ASSEMBLY:$(ASSEMBLY_EXT)=_test.dll.sources)
 endif
 
 test_lib = $(PROFILE)_$(ASSEMBLY:$(ASSEMBLY_EXT)=_test.dll)
-test_sourcefile_excludes = $(test_lib).excludes
+test_sourcefile_excludes = $(test_lib).exclude.sources
 
 test_pdb = $(test_lib:.dll=.pdb)
 test_response = $(depsdir)/$(test_lib).response
index a46a581c8d82b5ce40b2b49dca985f04e65614c5..50cdfcf6868455e673ebabebbce2a6bd2463a192 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index d2101be8f53b9fe0dd36b805d40f2cca9d09d561..2539a5b4b18c3ab5907432eedf73d113a3b8b53d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.jay > $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.cs
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.jay > $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.cs
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 049aece64a9693c9132c5b188812c73c1f7c41ea..2c40504aa6351c064685cbf3d0d647b459cbb9cd 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 3e68f2387ae455122f6dd8dc0e40d713b9e5ddf1..bf2bc3fb53392e1f95933a009cfc1a73be4c197e 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/Facades/Microsoft.Win32.Primitives/Facades_Microsoft.Win32.Primitives-net_4_x.csproj b/mcs/class/Facades/Microsoft.Win32.Primitives/Facades_Microsoft.Win32.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ef4329f
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Microsoft.Win32.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/Microsoft.Win32.Registry.AccessControl/Facades_Microsoft.Win32.Registry.AccessControl-net_4_x.csproj b/mcs/class/Facades/Microsoft.Win32.Registry.AccessControl/Facades_Microsoft.Win32.Registry.AccessControl-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1bca672
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Microsoft.Win32.Registry.AccessControl</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/Microsoft.Win32.Registry/Facades_Microsoft.Win32.Registry-net_4_x.csproj b/mcs/class/Facades/Microsoft.Win32.Registry/Facades_Microsoft.Win32.Registry-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5189fe3
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{160B5B14-7A25-458E-B83F-35632C832866}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Microsoft.Win32.Registry</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.AppContext/Facades_System.AppContext-net_4_x.csproj b/mcs/class/Facades/System.AppContext/Facades_System.AppContext-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3980a55
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B6B7A903-D696-43CF-AC42-39DCAAB00B9D}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.AppContext</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Collections.Concurrent/Facades_System.Collections.Concurrent-net_4_x.csproj b/mcs/class/Facades/System.Collections.Concurrent/Facades_System.Collections.Concurrent-net_4_x.csproj
new file mode 100644 (file)
index 0000000..eee52cc
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{EFD0287C-3651-4D42-B8CA-430776CB1E6D}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Collections.Concurrent</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Collections.NonGeneric/Facades_System.Collections.NonGeneric-net_4_x.csproj b/mcs/class/Facades/System.Collections.NonGeneric/Facades_System.Collections.NonGeneric-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a7e0139
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5F686C07-72CE-4A42-93B1-52B31227C3BB}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Collections.NonGeneric</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Collections.Specialized/Facades_System.Collections.Specialized-net_4_x.csproj b/mcs/class/Facades/System.Collections.Specialized/Facades_System.Collections.Specialized-net_4_x.csproj
new file mode 100644 (file)
index 0000000..44e2fc9
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Collections.Specialized</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Collections/Facades_System.Collections-net_4_x.csproj b/mcs/class/Facades/System.Collections/Facades_System.Collections-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c3eb239
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{2597261D-EC05-4333-928D-1CA44AB1A5D2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Collections</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ComponentModel.Annotations/Facades_System.ComponentModel.Annotations-net_4_x.csproj b/mcs/class/Facades/System.ComponentModel.Annotations/Facades_System.ComponentModel.Annotations-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a0d3c1b
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B26700A5-4A9A-4358-8C84-51AD67C706BA}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ComponentModel.Annotations</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations-net_4_x.csproj">\r
+      <Project>{8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}</Project>\r
+      <Name>System.ComponentModel.DataAnnotations-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ComponentModel.EventBasedAsync/Facades_System.ComponentModel.EventBasedAsync-net_4_x.csproj b/mcs/class/Facades/System.ComponentModel.EventBasedAsync/Facades_System.ComponentModel.EventBasedAsync-net_4_x.csproj
new file mode 100644 (file)
index 0000000..cbeca4b
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6871A822-F21C-4C0E-B97B-178FF6C3DB46}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ComponentModel.EventBasedAsync</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ComponentModel.Primitives/Facades_System.ComponentModel.Primitives-net_4_x.csproj b/mcs/class/Facades/System.ComponentModel.Primitives/Facades_System.ComponentModel.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..65e0f7e
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ComponentModel.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ComponentModel.TypeConverter/Facades_System.ComponentModel.TypeConverter-net_4_x.csproj b/mcs/class/Facades/System.ComponentModel.TypeConverter/Facades_System.ComponentModel.TypeConverter-net_4_x.csproj
new file mode 100644 (file)
index 0000000..aea5567
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{FC19760B-00FF-4242-9760-9C8E9C87CCFB}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ComponentModel.TypeConverter</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ComponentModel/Facades_System.ComponentModel-net_4_x.csproj b/mcs/class/Facades/System.ComponentModel/Facades_System.ComponentModel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a1a92d7
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3FA73846-3666-4769-B431-1A7538B08F39}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ComponentModel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Console/Facades_System.Console-net_4_x.csproj b/mcs/class/Facades/System.Console/Facades_System.Console-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c42832b
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6207AADB-0592-4B52-B71E-3565196EE893}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Console</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Data.Common/Facades_System.Data.Common-net_4_x.csproj b/mcs/class/Facades/System.Data.Common/Facades_System.Data.Common-net_4_x.csproj
new file mode 100644 (file)
index 0000000..493303c
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{360CDD70-6108-4406-9433-7BB178B0C3E3}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Data.Common</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Data.SqlClient/Facades_System.Data.SqlClient-net_4_x.csproj b/mcs/class/Facades/System.Data.SqlClient/Facades_System.Data.SqlClient-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3427bb0
--- /dev/null
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{575873BD-22DA-4A36-ABBD-B074EFEAB3AD}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Data.SqlClient</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.Contracts/Facades_System.Diagnostics.Contracts-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.Contracts/Facades_System.Diagnostics.Contracts-net_4_x.csproj
new file mode 100644 (file)
index 0000000..72f03e8
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8892480E-A4C6-4C4C-8722-21C5483F8851}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.Contracts</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.Debug/Facades_System.Diagnostics.Debug-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.Debug/Facades_System.Diagnostics.Debug-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5de4c3c
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{7221EF5D-7340-4E8C-99F0-9EE9C55AA189}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.Debug</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.FileVersionInfo/Facades_System.Diagnostics.FileVersionInfo-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.FileVersionInfo/Facades_System.Diagnostics.FileVersionInfo-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e8db266
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D81BCBD3-415D-4309-A116-0B475D8A2FA8}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.FileVersionInfo</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.PerformanceCounter/Facades_System.Diagnostics.PerformanceCounter-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.PerformanceCounter/Facades_System.Diagnostics.PerformanceCounter-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a9534e3
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{BA0C64F1-3762-437D-8B58-75F68A5B4E7E}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.PerformanceCounter</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.Process/Facades_System.Diagnostics.Process-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.Process/Facades_System.Diagnostics.Process-net_4_x.csproj
new file mode 100644 (file)
index 0000000..210e445
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.Process</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.StackTrace/Facades_System.Diagnostics.StackTrace-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.StackTrace/Facades_System.Diagnostics.StackTrace-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9d1c6f1
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.StackTrace</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.TextWriterTraceListener/Facades_System.Diagnostics.TextWriterTraceListener-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.TextWriterTraceListener/Facades_System.Diagnostics.TextWriterTraceListener-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fb2f148
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{EE8443AB-125D-4055-981A-143FB827C23C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.TextWriterTraceListener</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.Tools/Facades_System.Diagnostics.Tools-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.Tools/Facades_System.Diagnostics.Tools-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5d1e6d7
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5B299463-3E19-48C1-8625-31E12E1CC146}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.Tools</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.TraceEvent/Facades_System.Diagnostics.TraceEvent-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.TraceEvent/Facades_System.Diagnostics.TraceEvent-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f31a1fc
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6460F8E8-775E-46B6-99E5-B48390591515}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.TraceEvent</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.TraceSource/Facades_System.Diagnostics.TraceSource-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.TraceSource/Facades_System.Diagnostics.TraceSource-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7003052
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{530F1E68-3237-49E6-8D3B-06332F5AC055}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.TraceSource</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Diagnostics.Tracing/Facades_System.Diagnostics.Tracing-net_4_x.csproj b/mcs/class/Facades/System.Diagnostics.Tracing/Facades_System.Diagnostics.Tracing-net_4_x.csproj
new file mode 100644 (file)
index 0000000..73d08a1
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B33966AB-7211-43B4-B5C0-3F818869CB08}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Diagnostics.Tracing</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index ca09028ce161abaa3b0debf09376b3f85c6a1437..832c003b52e813dd0f25651f00370f164a258cfa 100644 (file)
@@ -29,6 +29,7 @@
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventOpcode))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventSource))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventSourceAttribute))]
+[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventSourceSettings))]
 //[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventSourceException))]
 [assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventTask))]
 //[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventWrittenEventArgs))]
diff --git a/mcs/class/Facades/System.Dynamic.Runtime/Facades_System.Dynamic.Runtime-net_4_x.csproj b/mcs/class/Facades/System.Dynamic.Runtime/Facades_System.Dynamic.Runtime-net_4_x.csproj
new file mode 100644 (file)
index 0000000..076b4d9
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E48CEF36-3218-477B-A8B5-014519207FF2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Dynamic.Runtime</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Globalization.Calendars/Facades_System.Globalization.Calendars-net_4_x.csproj b/mcs/class/Facades/System.Globalization.Calendars/Facades_System.Globalization.Calendars-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d0aa63e
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{BC71DA11-382F-459A-B3C3-F2F4267974FB}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Globalization.Calendars</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Globalization.Extensions/Facades_System.Globalization.Extensions-net_4_x.csproj b/mcs/class/Facades/System.Globalization.Extensions/Facades_System.Globalization.Extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..6621287
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B875622B-BEA2-4D1C-8242-3A1FCECF5890}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Globalization.Extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Globalization/Facades_System.Globalization-net_4_x.csproj b/mcs/class/Facades/System.Globalization/Facades_System.Globalization-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d311728
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Globalization</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.Compression.ZipFile/Facades_System.IO.Compression.ZipFile-net_4_x.csproj b/mcs/class/Facades/System.IO.Compression.ZipFile/Facades_System.IO.Compression.ZipFile-net_4_x.csproj
new file mode 100644 (file)
index 0000000..4423a9d
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{A8EB5499-FA67-4049-AA0A-241D82DA975C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.Compression.ZipFile</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.IO.Compression.FileSystem/System.IO.Compression.FileSystem-net_4_x.csproj">\r
+      <Project>{9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}</Project>\r
+      <Name>System.IO.Compression.FileSystem-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.FileSystem.AccessControl/Facades_System.IO.FileSystem.AccessControl-net_4_x.csproj b/mcs/class/Facades/System.IO.FileSystem.AccessControl/Facades_System.IO.FileSystem.AccessControl-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0f9d44c
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{321A53F3-A681-4CA5-A093-1C6650243F6A}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.FileSystem.AccessControl</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.FileSystem.DriveInfo/Facades_System.IO.FileSystem.DriveInfo-net_4_x.csproj b/mcs/class/Facades/System.IO.FileSystem.DriveInfo/Facades_System.IO.FileSystem.DriveInfo-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5edbbbb
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{121F835D-CD32-4C19-ABA7-25EF4B84773F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.FileSystem.DriveInfo</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.FileSystem.Primitives/Facades_System.IO.FileSystem.Primitives-net_4_x.csproj b/mcs/class/Facades/System.IO.FileSystem.Primitives/Facades_System.IO.FileSystem.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..98c67e8
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.FileSystem.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.FileSystem.Watcher/Facades_System.IO.FileSystem.Watcher-net_4_x.csproj b/mcs/class/Facades/System.IO.FileSystem.Watcher/Facades_System.IO.FileSystem.Watcher-net_4_x.csproj
new file mode 100644 (file)
index 0000000..75fe391
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{44647FAA-F785-44DE-B6B2-ABC2B9768233}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.FileSystem.Watcher</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.FileSystem/Facades_System.IO.FileSystem-net_4_x.csproj b/mcs/class/Facades/System.IO.FileSystem/Facades_System.IO.FileSystem-net_4_x.csproj
new file mode 100644 (file)
index 0000000..34784bd
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.FileSystem</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.IsolatedStorage/Facades_System.IO.IsolatedStorage-net_4_x.csproj b/mcs/class/Facades/System.IO.IsolatedStorage/Facades_System.IO.IsolatedStorage-net_4_x.csproj
new file mode 100644 (file)
index 0000000..866e14f
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{A9B2D389-B9E5-4B0F-8115-2AADF285D217}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.IsolatedStorage</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.MemoryMappedFiles/Facades_System.IO.MemoryMappedFiles-net_4_x.csproj b/mcs/class/Facades/System.IO.MemoryMappedFiles/Facades_System.IO.MemoryMappedFiles-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3e44aef
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{18639F0F-74F1-4B61-81BF-D60B651F542A}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.MemoryMappedFiles</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.Pipes/Facades_System.IO.Pipes-net_4_x.csproj b/mcs/class/Facades/System.IO.Pipes/Facades_System.IO.Pipes-net_4_x.csproj
new file mode 100644 (file)
index 0000000..71c4350
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.Pipes</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO.UnmanagedMemoryStream/Facades_System.IO.UnmanagedMemoryStream-net_4_x.csproj b/mcs/class/Facades/System.IO.UnmanagedMemoryStream/Facades_System.IO.UnmanagedMemoryStream-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c65751b
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{981E765A-9D68-4653-9079-69BFCD97F086}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO.UnmanagedMemoryStream</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.IO/Facades_System.IO-net_4_x.csproj b/mcs/class/Facades/System.IO/Facades_System.IO-net_4_x.csproj
new file mode 100644 (file)
index 0000000..da00e74
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6C8B94F6-E589-472C-80CA-BD55DAFAC523}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.IO</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Linq.Expressions/Facades_System.Linq.Expressions-net_4_x.csproj b/mcs/class/Facades/System.Linq.Expressions/Facades_System.Linq.Expressions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e7c6951
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Linq.Expressions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Linq.Parallel/Facades_System.Linq.Parallel-net_4_x.csproj b/mcs/class/Facades/System.Linq.Parallel/Facades_System.Linq.Parallel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..de83417
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{CFF3822F-E829-4AEF-899A-963C4EAF6941}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Linq.Parallel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Linq.Queryable/Facades_System.Linq.Queryable-net_4_x.csproj b/mcs/class/Facades/System.Linq.Queryable/Facades_System.Linq.Queryable-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3aa8b75
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{49E80FC1-1707-4715-8D94-CBDC79B007E9}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Linq.Queryable</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Linq/Facades_System.Linq-net_4_x.csproj b/mcs/class/Facades/System.Linq/Facades_System.Linq-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9c29c34
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{9F1C9D98-4C32-4698-B26F-10A38B5073B0}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Linq</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.AuthenticationManager/Facades_System.Net.AuthenticationManager-net_4_x.csproj b/mcs/class/Facades/System.Net.AuthenticationManager/Facades_System.Net.AuthenticationManager-net_4_x.csproj
new file mode 100644 (file)
index 0000000..b14fcb8
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B6DBC302-E9DB-4464-979C-6D714B436A7E}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.AuthenticationManager</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Cache/Facades_System.Net.Cache-net_4_x.csproj b/mcs/class/Facades/System.Net.Cache/Facades_System.Net.Cache-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5ff7c86
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{101D931B-24CE-44CE-8140-8B183D5CC46E}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Cache</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Http.WebRequestHandler/Facades_System.Net.Http.WebRequestHandler-net_4_x.csproj b/mcs/class/Facades/System.Net.Http.WebRequestHandler/Facades_System.Net.Http.WebRequestHandler-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c49aa56
--- /dev/null
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{ACA10642-1D5B-443D-99BE-65C31491C54F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Http.WebRequestHandler</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Net.Http.WebRequest/System.Net.Http.WebRequest-net_4_x.csproj">\r
+      <Project>{A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}</Project>\r
+      <Name>System.Net.Http.WebRequest-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Net.Http/System.Net.Http-net_4_x.csproj">\r
+      <Project>{F1636C0A-FC68-4362-918F-9CCC789FED13}</Project>\r
+      <Name>System.Net.Http-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.HttpListener/Facades_System.Net.HttpListener-net_4_x.csproj b/mcs/class/Facades/System.Net.HttpListener/Facades_System.Net.HttpListener-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9c59776
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{CC7A11AC-ACAA-4707-BEF1-1106938F19C7}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.HttpListener</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Mail/Facades_System.Net.Mail-net_4_x.csproj b/mcs/class/Facades/System.Net.Mail/Facades_System.Net.Mail-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f38a0d5
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{074DF29D-D38E-4FB9-86A0-18F47615CE72}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Mail</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.NameResolution/Facades_System.Net.NameResolution-net_4_x.csproj b/mcs/class/Facades/System.Net.NameResolution/Facades_System.Net.NameResolution-net_4_x.csproj
new file mode 100644 (file)
index 0000000..35e6e9a
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{1219DA91-575A-45EA-9CC9-1471648A025F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.NameResolution</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.NetworkInformation/Facades_System.Net.NetworkInformation-net_4_x.csproj b/mcs/class/Facades/System.Net.NetworkInformation/Facades_System.Net.NetworkInformation-net_4_x.csproj
new file mode 100644 (file)
index 0000000..042d7ac
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B6AE3A72-1756-46BF-9105-C4D815A5C044}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.NetworkInformation</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Primitives/Facades_System.Net.Primitives-net_4_x.csproj b/mcs/class/Facades/System.Net.Primitives/Facades_System.Net.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..aa32005
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{79BB52C8-198A-4238-B2F6-62CEEBD7D228}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Requests/Facades_System.Net.Requests-net_4_x.csproj b/mcs/class/Facades/System.Net.Requests/Facades_System.Net.Requests-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9d81ac9
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{538C60BD-0652-4780-AA7C-338C2DD82448}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Requests</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Security/Facades_System.Net.Security-net_4_x.csproj b/mcs/class/Facades/System.Net.Security/Facades_System.Net.Security-net_4_x.csproj
new file mode 100644 (file)
index 0000000..346a8c8
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{601F297E-1242-4BC4-BD06-1111CE65D658}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Security</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.ServicePoint/Facades_System.Net.ServicePoint-net_4_x.csproj b/mcs/class/Facades/System.Net.ServicePoint/Facades_System.Net.ServicePoint-net_4_x.csproj
new file mode 100644 (file)
index 0000000..db14b8d
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.ServicePoint</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Sockets/Facades_System.Net.Sockets-net_4_x.csproj b/mcs/class/Facades/System.Net.Sockets/Facades_System.Net.Sockets-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ca762d9
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{FC7570DA-CAE1-40AF-9EB4-9C9566746023}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Sockets</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.Utilities/Facades_System.Net.Utilities-net_4_x.csproj b/mcs/class/Facades/System.Net.Utilities/Facades_System.Net.Utilities-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1372878
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6413D947-5660-473A-8C2C-9DF40BF8AEE1}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.Utilities</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.WebHeaderCollection/Facades_System.Net.WebHeaderCollection-net_4_x.csproj b/mcs/class/Facades/System.Net.WebHeaderCollection/Facades_System.Net.WebHeaderCollection-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3a29883
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{A1B6CFFB-432C-4CB1-9A60-97B3CC859583}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.WebHeaderCollection</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.WebSockets.Client/Facades_System.Net.WebSockets.Client-net_4_x.csproj b/mcs/class/Facades/System.Net.WebSockets.Client/Facades_System.Net.WebSockets.Client-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1119965
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.WebSockets.Client</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Net.WebSockets/Facades_System.Net.WebSockets-net_4_x.csproj b/mcs/class/Facades/System.Net.WebSockets/Facades_System.Net.WebSockets-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0103faa
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Net.WebSockets</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ObjectModel/Facades_System.ObjectModel-net_4_x.csproj b/mcs/class/Facades/System.ObjectModel/Facades_System.ObjectModel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e1230f8
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D14B21CE-AC35-445E-930F-9C7F6E032EE8}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ObjectModel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Private.CoreLib.InteropServices/Facades_System.Private.CoreLib.InteropServices-net_4_x.csproj b/mcs/class/Facades/System.Private.CoreLib.InteropServices/Facades_System.Private.CoreLib.InteropServices-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c81a035
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Private.CoreLib.InteropServices</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Private.CoreLib.Threading/Facades_System.Private.CoreLib.Threading-net_4_x.csproj b/mcs/class/Facades/System.Private.CoreLib.Threading/Facades_System.Private.CoreLib.Threading-net_4_x.csproj
new file mode 100644 (file)
index 0000000..df6c913
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Private.CoreLib.Threading</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.ILGeneration/Facades_System.Reflection.Emit.ILGeneration-net_4_x.csproj b/mcs/class/Facades/System.Reflection.Emit.ILGeneration/Facades_System.Reflection.Emit.ILGeneration-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3f6502b
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{ACF5E339-FB52-48E0-A859-2CE75756DFE8}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.Emit.ILGeneration</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.Emit.Lightweight/Facades_System.Reflection.Emit.Lightweight-net_4_x.csproj b/mcs/class/Facades/System.Reflection.Emit.Lightweight/Facades_System.Reflection.Emit.Lightweight-net_4_x.csproj
new file mode 100644 (file)
index 0000000..28c2018
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{03B29131-9D1A-4446-92F2-237F9EF70C5C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.Emit.Lightweight</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.Emit/Facades_System.Reflection.Emit-net_4_x.csproj b/mcs/class/Facades/System.Reflection.Emit/Facades_System.Reflection.Emit-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e407d0f
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5327CF02-204D-45CD-A68D-3D836470E439}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.Emit</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.Extensions/Facades_System.Reflection.Extensions-net_4_x.csproj b/mcs/class/Facades/System.Reflection.Extensions/Facades_System.Reflection.Extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5a41690
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B6D0F01A-1585-464E-850A-502EB4BBA8A2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.Extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.Primitives/Facades_System.Reflection.Primitives-net_4_x.csproj b/mcs/class/Facades/System.Reflection.Primitives/Facades_System.Reflection.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9b883b5
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D60D1AB4-D664-4B1F-9724-962A2D205B07}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection.TypeExtensions/Facades_System.Reflection.TypeExtensions-net_4_x.csproj b/mcs/class/Facades/System.Reflection.TypeExtensions/Facades_System.Reflection.TypeExtensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..2030414
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C315A617-25A4-447F-AA4F-0E0E7E35F919}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection.TypeExtensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Reflection/Facades_System.Reflection-net_4_x.csproj b/mcs/class/Facades/System.Reflection/Facades_System.Reflection-net_4_x.csproj
new file mode 100644 (file)
index 0000000..98be695
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{BE1CD06E-F08E-46EE-9DFD-91E1557F4121}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Reflection</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Resources.ReaderWriter/Facades_System.Resources.ReaderWriter-net_4_x.csproj b/mcs/class/Facades/System.Resources.ReaderWriter/Facades_System.Resources.ReaderWriter-net_4_x.csproj
new file mode 100644 (file)
index 0000000..eaafdd2
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{2D720AF7-7104-46EF-93BC-B8BA133B6BF6}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Resources.ReaderWriter</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Resources.ResourceManager/Facades_System.Resources.ResourceManager-net_4_x.csproj b/mcs/class/Facades/System.Resources.ResourceManager/Facades_System.Resources.ResourceManager-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e40ceea
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Resources.ResourceManager</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.CompilerServices.VisualC/Facades_System.Runtime.CompilerServices.VisualC-net_4_x.csproj b/mcs/class/Facades/System.Runtime.CompilerServices.VisualC/Facades_System.Runtime.CompilerServices.VisualC-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f3b9b2d
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C1D26AE7-071A-4092-9866-0EE2D09CF342}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.CompilerServices.VisualC</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Extensions/Facades_System.Runtime.Extensions-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Extensions/Facades_System.Runtime.Extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f00748c
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{1215B717-BE9D-4D53-AEB9-35522519BC75}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Handles/Facades_System.Runtime.Handles-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Handles/Facades_System.Runtime.Handles-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d29f79f
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Handles</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.InteropServices.WindowsRuntime/Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x.csproj b/mcs/class/Facades/System.Runtime.InteropServices.WindowsRuntime/Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0dddc7e
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{521A60CF-50DF-4EF1-88B2-418BD39BDEC4}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.InteropServices.WindowsRuntime</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.InteropServices/Facades_System.Runtime.InteropServices-net_4_x.csproj b/mcs/class/Facades/System.Runtime.InteropServices/Facades_System.Runtime.InteropServices-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7011c55
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.InteropServices</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Numerics/Facades_System.Runtime.Numerics-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Numerics/Facades_System.Runtime.Numerics-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a82e8d2
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{AEB47FF6-C50D-4985-A57F-17F71F63694A}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Numerics</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Numerics/System.Numerics-net_4_x.csproj">\r
+      <Project>{BD2FFDDC-BD89-4041-82F5-A696C941C7BE}</Project>\r
+      <Name>System.Numerics-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Serialization.Json/Facades_System.Runtime.Serialization.Json-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Serialization.Json/Facades_System.Runtime.Serialization.Json-net_4_x.csproj
new file mode 100644 (file)
index 0000000..18a14af
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{88B512E6-3E9D-4F87-A9E4-5F9239848665}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Serialization.Json</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj">\r
+      <Project>{D845AD9D-3CCB-49CB-9543-028678E94938}</Project>\r
+      <Name>System.Runtime.Serialization-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Serialization.Primitives/Facades_System.Runtime.Serialization.Primitives-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Serialization.Primitives/Facades_System.Runtime.Serialization.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..71204dc
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{49BB9015-6989-4BD0-AF82-9184BE637D57}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Serialization.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj">\r
+      <Project>{D845AD9D-3CCB-49CB-9543-028678E94938}</Project>\r
+      <Name>System.Runtime.Serialization-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime.Serialization.Xml/Facades_System.Runtime.Serialization.Xml-net_4_x.csproj b/mcs/class/Facades/System.Runtime.Serialization.Xml/Facades_System.Runtime.Serialization.Xml-net_4_x.csproj
new file mode 100644 (file)
index 0000000..058a3e6
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C948B3D4-0BEE-4363-B4A7-635A169C8D63}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime.Serialization.Xml</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj">\r
+      <Project>{D845AD9D-3CCB-49CB-9543-028678E94938}</Project>\r
+      <Name>System.Runtime.Serialization-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Runtime/Facades_System.Runtime-net_4_x.csproj b/mcs/class/Facades/System.Runtime/Facades_System.Runtime-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d88f7bb
--- /dev/null
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{CFB32425-69C5-425B-BF9A-66CB3AC52D71}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Runtime</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj">\r
+      <Project>{9091B5ED-8AFF-4B93-801A-9A33E0895A2B}</Project>\r
+      <Name>System.ComponentModel.Composition-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.AccessControl/Facades_System.Security.AccessControl-net_4_x.csproj b/mcs/class/Facades/System.Security.AccessControl/Facades_System.Security.AccessControl-net_4_x.csproj
new file mode 100644 (file)
index 0000000..546f03f
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4867DFE7-C028-4518-B420-27C3E4582D0C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.AccessControl</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Claims/Facades_System.Security.Claims-net_4_x.csproj b/mcs/class/Facades/System.Security.Claims/Facades_System.Security.Claims-net_4_x.csproj
new file mode 100644 (file)
index 0000000..341cad8
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4874E167-6B23-4FD6-B51D-048417A8054B}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Claims</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.DeriveBytes/Facades_System.Security.Cryptography.DeriveBytes-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.DeriveBytes/Facades_System.Security.Cryptography.DeriveBytes-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3c274ab
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DB39DD76-4609-45D1-9615-57D4E436D7F1}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.DeriveBytes</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Encoding/Facades_System.Security.Cryptography.Encoding-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Encoding/Facades_System.Security.Cryptography.Encoding-net_4_x.csproj
new file mode 100644 (file)
index 0000000..20640b0
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Encoding</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Encryption.Aes/Facades_System.Security.Cryptography.Encryption.Aes-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Encryption.Aes/Facades_System.Security.Cryptography.Encryption.Aes-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a523ca9
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{38BA78A4-9614-4000-80A7-DFCE31F10721}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Encryption.Aes</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman/Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman/Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x.csproj
new file mode 100644 (file)
index 0000000..268dc0f
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6499F7E3-64F3-495B-9900-E2D0AD47414F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Encryption.ECDiffieHellman</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Encryption.ECDsa/Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Encryption.ECDsa/Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1608821
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{EFA0AABF-7830-4804-A92D-F6F31F86B826}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Encryption.ECDsa</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Encryption/Facades_System.Security.Cryptography.Encryption-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Encryption/Facades_System.Security.Cryptography.Encryption-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c331d66
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Encryption</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Hashing.Algorithms/Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Hashing.Algorithms/Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x.csproj
new file mode 100644 (file)
index 0000000..098c162
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{0DBEDE3A-F06D-4C61-89DF-193C13393F7A}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Hashing.Algorithms</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.Hashing/Facades_System.Security.Cryptography.Hashing-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.Hashing/Facades_System.Security.Cryptography.Hashing-net_4_x.csproj
new file mode 100644 (file)
index 0000000..9865a15
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C48B1038-4774-4D49-9D34-79DBBA725AA0}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.Hashing</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.ProtectedData/Facades_System.Security.Cryptography.ProtectedData-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.ProtectedData/Facades_System.Security.Cryptography.ProtectedData-net_4_x.csproj
new file mode 100644 (file)
index 0000000..53e18fa
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{66B88E44-F7DA-4C83-B028-A49D4D3EBD16}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.ProtectedData</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Security/System.Security-net_4_x.csproj">\r
+      <Project>{3ED36717-A9D1-4289-8949-9B7F39766DEB}</Project>\r
+      <Name>System.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.RSA/Facades_System.Security.Cryptography.RSA-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.RSA/Facades_System.Security.Cryptography.RSA-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1f65843
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{18EE2788-AC59-4A0C-A902-C6B64D285BB6}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.RSA</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.RandomNumberGenerator/Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.RandomNumberGenerator/Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3b0e511
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C87878D2-CDEF-4EC9-8C94-C1381144F4EC}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.RandomNumberGenerator</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Cryptography.X509Certificates/Facades_System.Security.Cryptography.X509Certificates-net_4_x.csproj b/mcs/class/Facades/System.Security.Cryptography.X509Certificates/Facades_System.Security.Cryptography.X509Certificates-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0a126a6
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Cryptography.X509Certificates</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Principal.Windows/Facades_System.Security.Principal.Windows-net_4_x.csproj b/mcs/class/Facades/System.Security.Principal.Windows/Facades_System.Security.Principal.Windows-net_4_x.csproj
new file mode 100644 (file)
index 0000000..18aa2ae
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{47977802-4193-48DC-AA0F-58D18AEDA405}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Principal.Windows</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.Principal/Facades_System.Security.Principal-net_4_x.csproj b/mcs/class/Facades/System.Security.Principal/Facades_System.Security.Principal-net_4_x.csproj
new file mode 100644 (file)
index 0000000..53c26f6
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{9040CA8B-4352-4621-A2B3-5C32A383DE15}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.Principal</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Security.SecureString/Facades_System.Security.SecureString-net_4_x.csproj b/mcs/class/Facades/System.Security.SecureString/Facades_System.Security.SecureString-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7e2fc1e
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{57C02AD3-1118-4982-BCE3-53158D30F4E9}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Security.SecureString</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceModel.Duplex/Facades_System.ServiceModel.Duplex-net_4_x.csproj b/mcs/class/Facades/System.ServiceModel.Duplex/Facades_System.ServiceModel.Duplex-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3a098dc
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DE25A333-91AE-4F33-B483-A01D1D3D1675}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceModel.Duplex</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceModel.Http/Facades_System.ServiceModel.Http-net_4_x.csproj b/mcs/class/Facades/System.ServiceModel.Http/Facades_System.ServiceModel.Http-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d830d0e
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceModel.Http</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceModel.NetTcp/Facades_System.ServiceModel.NetTcp-net_4_x.csproj b/mcs/class/Facades/System.ServiceModel.NetTcp/Facades_System.ServiceModel.NetTcp-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0b25b6b
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{0F83D60D-5AAA-425C-BC4E-01CA2018905C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceModel.NetTcp</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceModel.Primitives/Facades_System.ServiceModel.Primitives-net_4_x.csproj b/mcs/class/Facades/System.ServiceModel.Primitives/Facades_System.ServiceModel.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1508ff5
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{524B10FC-880D-4131-8CAE-027BC3A68B6F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceModel.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceModel.Security/Facades_System.ServiceModel.Security-net_4_x.csproj b/mcs/class/Facades/System.ServiceModel.Security/Facades_System.ServiceModel.Security-net_4_x.csproj
new file mode 100644 (file)
index 0000000..05cafee
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{F937A550-0A4A-4A10-9FD9-E8DE7696671F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceModel.Security</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.ServiceProcess.ServiceController/Facades_System.ServiceProcess.ServiceController-net_4_x.csproj b/mcs/class/Facades/System.ServiceProcess.ServiceController/Facades_System.ServiceProcess.ServiceController-net_4_x.csproj
new file mode 100644 (file)
index 0000000..4eedc26
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8C71A924-2561-434B-A792-2F84ABA1C0C2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.ServiceProcess.ServiceController</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.ServiceProcess/System.ServiceProcess-net_4_x.csproj">\r
+      <Project>{CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}</Project>\r
+      <Name>System.ServiceProcess-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Text.Encoding.Extensions/Facades_System.Text.Encoding.Extensions-net_4_x.csproj b/mcs/class/Facades/System.Text.Encoding.Extensions/Facades_System.Text.Encoding.Extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c478e79
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{28CEA696-8466-4826-9128-B83318184EF4}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Text.Encoding.Extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Text.Encoding/Facades_System.Text.Encoding-net_4_x.csproj b/mcs/class/Facades/System.Text.Encoding/Facades_System.Text.Encoding-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5c8474d
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{0CD67EE4-42D8-43A6-880F-2C038E368C98}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Text.Encoding</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Text.RegularExpressions/Facades_System.Text.RegularExpressions-net_4_x.csproj b/mcs/class/Facades/System.Text.RegularExpressions/Facades_System.Text.RegularExpressions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3128965
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{490EF039-5913-4181-84CD-1F882968FC8C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Text.RegularExpressions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.AccessControl/Facades_System.Threading.AccessControl-net_4_x.csproj b/mcs/class/Facades/System.Threading.AccessControl/Facades_System.Threading.AccessControl-net_4_x.csproj
new file mode 100644 (file)
index 0000000..2a7daad
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{FB663BC8-162E-43E7-9674-ECD2BEE82CC1}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.AccessControl</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.Overlapped/Facades_System.Threading.Overlapped-net_4_x.csproj b/mcs/class/Facades/System.Threading.Overlapped/Facades_System.Threading.Overlapped-net_4_x.csproj
new file mode 100644 (file)
index 0000000..00de778
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.Overlapped</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.Tasks.Parallel/Facades_System.Threading.Tasks.Parallel-net_4_x.csproj b/mcs/class/Facades/System.Threading.Tasks.Parallel/Facades_System.Threading.Tasks.Parallel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..70915d9
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{0F8CA9A9-62A4-4829-925E-002F0B93EE79}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.Tasks.Parallel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.Tasks/Facades_System.Threading.Tasks-net_4_x.csproj b/mcs/class/Facades/System.Threading.Tasks/Facades_System.Threading.Tasks-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3052af6
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{F322318E-D053-45C9-AFDF-2AEEE1E0E006}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.Tasks</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.Thread/Facades_System.Threading.Thread-net_4_x.csproj b/mcs/class/Facades/System.Threading.Thread/Facades_System.Threading.Thread-net_4_x.csproj
new file mode 100644 (file)
index 0000000..58a1e3e
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4D9EF694-5260-432D-BA34-503FFBE43B6C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.Thread</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.ThreadPool/Facades_System.Threading.ThreadPool-net_4_x.csproj b/mcs/class/Facades/System.Threading.ThreadPool/Facades_System.Threading.ThreadPool-net_4_x.csproj
new file mode 100644 (file)
index 0000000..081c415
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{95B411AA-B13F-4621-B020-7F797E1F39F0}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.ThreadPool</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading.Timer/Facades_System.Threading.Timer-net_4_x.csproj b/mcs/class/Facades/System.Threading.Timer/Facades_System.Threading.Timer-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a0450e1
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{30F7C900-122A-42A6-9669-D5606B9105A5}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading.Timer</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Threading/Facades_System.Threading-net_4_x.csproj b/mcs/class/Facades/System.Threading/Facades_System.Threading-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0b49733
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{35258CFB-0308-493D-B2BD-B044EAFD5AD1}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Threading</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.ReaderWriter/Facades_System.Xml.ReaderWriter-net_4_x.csproj b/mcs/class/Facades/System.Xml.ReaderWriter/Facades_System.Xml.ReaderWriter-net_4_x.csproj
new file mode 100644 (file)
index 0000000..b607038
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.ReaderWriter</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.XDocument/Facades_System.Xml.XDocument-net_4_x.csproj b/mcs/class/Facades/System.Xml.XDocument/Facades_System.Xml.XDocument-net_4_x.csproj
new file mode 100644 (file)
index 0000000..6dfebc0
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D8643E47-F2D5-447B-840B-25FEB84C9EEC}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.XDocument</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Xml.Linq/System.Xml.Linq-net_4_x.csproj">\r
+      <Project>{526286D5-38D9-4579-B001-471440D57752}</Project>\r
+      <Name>System.Xml.Linq-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.XPath.XDocument/Facades_System.Xml.XPath.XDocument-net_4_x.csproj b/mcs/class/Facades/System.Xml.XPath.XDocument/Facades_System.Xml.XPath.XDocument-net_4_x.csproj
new file mode 100644 (file)
index 0000000..6fe69f7
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.XPath.XDocument</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.Xml.Linq/System.Xml.Linq-net_4_x.csproj">\r
+      <Project>{526286D5-38D9-4579-B001-471440D57752}</Project>\r
+      <Name>System.Xml.Linq-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.XPath/Facades_System.Xml.XPath-net_4_x.csproj b/mcs/class/Facades/System.Xml.XPath/Facades_System.Xml.XPath-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fcddfd5
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{5C3F0B44-E169-4441-91F9-7285048F4946}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.XPath</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.XmlDocument/Facades_System.Xml.XmlDocument-net_4_x.csproj b/mcs/class/Facades/System.Xml.XmlDocument/Facades_System.Xml.XmlDocument-net_4_x.csproj
new file mode 100644 (file)
index 0000000..adc60f7
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.XmlDocument</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.XmlSerializer/Facades_System.Xml.XmlSerializer-net_4_x.csproj b/mcs/class/Facades/System.Xml.XmlSerializer/Facades_System.Xml.XmlSerializer-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c4df512
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E95FA58F-8086-45FF-8BD3-5A1FAF776709}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.XmlSerializer</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/Facades/System.Xml.Xsl.Primitives/Facades_System.Xml.Xsl.Primitives-net_4_x.csproj b/mcs/class/Facades/System.Xml.Xsl.Primitives/Facades_System.Xml.Xsl.Primitives-net_4_x.csproj
new file mode 100644 (file)
index 0000000..3e95b77
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x/Facades</OutputPath>\r
+    <IntermediateOutputPath>obj-Facades</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Xml.Xsl.Primitives</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1616,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="TypeForwarders.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 15b009c9590c93a50362d65139e813ed9e1be41e..c6c9d3a44bbdbdd5d6c99d427b5324e5189a971c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 8bbb45cf7f9dc494ac1dedc3150fe52812dad615..75ff7a5aac9dd7024ece9f556a05afada47ca3d9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 21884dd3fbff62e443e6679486d3e0dd339ea5c4..1afa51aef32e08d5690f8dc840d75402083ec000 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 896c1475e7d86bc46433b2fb21c058d55ec22c4e..824b31774d50af80a8d219eab82d3afd32429f82 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 124e9588822ffaff6abc744baa1030c918ec59e6..abde280e27d6cde0c6e9ad52bd88b3bd5f04aca2 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 60341bd64781b7cb6ef5ddd0813cb8fe61e8593c..95900687116613c4d2697c497dc7e03c1e6fa99c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index e141796aea13941d4e68ad046e1e305810d62264..1479ae7ddb88a683c3f18a83ee9faca50f18f7a9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7fdb5a0385f1a802ed976b1e33699bd596c9ebe9..6f7047f15c02021fe96fad22b955d68d35ebe3f8 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 005752baf98e12f541683c8aa9f258b6a7d03354..fb545562ffa288a2925e7e71c876bcf5d72d8a32 100644 (file)
@@ -1035,7 +1035,7 @@ namespace Microsoft.Build.BuildEngine {
                        evaluatedProperties.AddProperty (new BuildProperty ("OS", OS, PropertyType.Environment));
 #if XBUILD_12
                        // see http://msdn.microsoft.com/en-us/library/vstudio/hh162058(v=vs.120).aspx
-                       if (effective_tools_version == "12.0") {
+                       if (effective_tools_version == "12.0" || effective_tools_version == "14.0") {
                                evaluatedProperties.AddProperty (new BuildProperty ("MSBuildToolsPath32", toolsPath, PropertyType.Reserved));
 
                                var frameworkToolsPath = ToolLocationHelper.GetPathToDotNetFramework (TargetDotNetFrameworkVersion.Version451);
index b7afd2cd67095a5666f26f0780a8bd1acb7567f1..652aab45f53431245fbb367815ea1c81734aee21 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{8E5728E0-CEAF-431F-963E-EB1DEE15C506}</Project>\r
       <Name>Microsoft.Build.Utilities-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Core/System.Core-net_4_x.csproj">\r
-      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
-      <Name>System.Core-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
-      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
-      <Name>System.Xml-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index d2a2cd773929ab1c625d479029aadbabd9894495..ad57c7d514e57e4c05ea4c58c2535ef61eb95b60 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 9bd62c80a9d97068530457ee669fc6391a41fa25..d051dbefb947465da844bc655be2a7017172f4dd 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}</Project>\r
       <Name>Mono.XBuild.Tasks-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Core/System.Core-net_4_x.csproj">\r
-      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
-      <Name>System.Core-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
-      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
-      <Name>System.Xml-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Windows.Forms/System.Windows.Forms-net_4_x.csproj">\r
-      <Project>{108227C7-8ED9-4483-949D-07BF0DA1A201}</Project>\r
-      <Name>System.Windows.Forms-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index f5758df8e1fbc239e6fb15b585ce7776acd987ab..3bdf7111df8b3295f5f37cd50d92238d846128e5 100644 (file)
@@ -128,6 +128,10 @@ namespace Microsoft.Build.Tasks {
                        relatedFiles = tempRelatedFiles.Values.ToArray ();
                        resolvedDependencyFiles = tempResolvedDepFiles.Values.ToArray ();
 
+#if XBUILD_14
+                       DependsOnSystemRuntime = resolvedDependencyFiles.Any (x => Path.GetFileName (x.ItemSpec) == "System.Runtime.dll").ToString ();
+#endif
+
                        tempResolvedFiles.Clear ();
                        tempCopyLocalFiles.Clear ();
                        tempSatelliteFiles.Clear ();
index 87290f52837f94b1369c17caac197efa33d19c9e..1e5e1913b4342c0b271bca55f4a260bff1a4288f 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}</Project>\r
       <Name>Microsoft.Build.Framework-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Core/System.Core-net_4_x.csproj">\r
-      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
-      <Name>System.Core-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
-      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
-      <Name>System.Xml-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 1674ff8b5dc3095f027cd6ffd60d1562e5e056d4..ddd58939912356a89d16d5323b6b28e5580f6b93 100644 (file)
@@ -74,6 +74,7 @@ namespace Microsoft.Build.Utilities
                public void WaitForOutput (int milliseconds)
                {
                        CheckDisposed ();
+                       WaitForExit (milliseconds);
                        WaitHandle.WaitAll (new WaitHandle[] { endEventOut, endEventErr, endEventExit }, milliseconds);
                }
 
index 7b8f9830f2b81cd1a58749fe276b35a0ce2022b8..24dd6dd3751303edd192404062260cb9e7a61500 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.jay > $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.cs
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.jay > $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.cs
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}</Project>\r
       <Name>Microsoft.Build.Framework-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Core/System.Core-net_4_x.csproj">\r
-      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
-      <Name>System.Core-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
-      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
-      <Name>System.Xml-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_x.csproj">\r
-      <Project>{75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}</Project>\r
-      <Name>Microsoft.Build.Engine-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Microsoft.Build.Framework/Microsoft.Build.Framework-net_4_x.csproj">\r
-      <Project>{5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}</Project>\r
-      <Name>Microsoft.Build.Framework-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 84ec489f37a4f0d6cf0a467866984cfeaaf0503b..4b2bc7d98a77bfc48a27217a80408c71ab94ffbe 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 9bd3a2ab82cbb4f99b679c24a11b5dd761d9a09e..8fe58e637bdc6d3f943942127a89a8afa7c899d0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 498cf09f8086d398d8eb22bf07deaa45e47261d5..4b6ac0cc4726ba45cdf55fb587f1617de3ba88c8 100644 (file)
@@ -43,7 +43,6 @@ using System.Security;
 [assembly: ComVisible (false)]
 [assembly: AssemblyFileVersion ("1.0.20105.407")]
 [assembly: AssemblyVersion ("1.0.0.0")]
-[assembly: TargetFramework (".NETFramework,Version=v4.0", FrameworkDisplayName=".NET Framework 4")]
 [assembly: AllowPartiallyTrustedCallers]
 [assembly: CompilationRelaxations (8)]
 [assembly: AssemblyTitle ("Microsoft.Web.Infrastructure")]
index f85b1433acaeb5117cd063903576aecfcd099c69..e68b8bf4ab61403e253de8e4cd805fcebe1ee00b 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7db3bcbeead28bb1aaad90b1295012b998dcbaab..1f86305857f2d743b5a753a20afa9bad286bde69 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,169,219,414,1030,3001,3005,3006</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index b36796d24395a480f418c81965978f4b9d4d11a6..36c99153b4962d85f4f9e3620e29543ed07348e4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 74fc4a03cf2cbd4605da80b3f3059eec57089057..8c414dad79feaced6c3d48e6a4b7ff4865e0e3ff 100644 (file)
@@ -120,7 +120,8 @@ namespace MonoTests.EvaluatorTest
                        Evaluator.Run ("var a = new int[]{1,2,3};");
 
                        object res = Evaluator.Evaluate ("from x in a select x + 1;");
-                       CollectionAssert.AreEqual (new int[] { 2, 3, 4 }, ((IEnumerable<int>) res).ToArray ());
+
+                       Assert.AreEqual (new int[] { 2, 3, 4 }, ((IEnumerable<int>) res).ToArray ());
                }
 
                [Test]
@@ -201,4 +202,4 @@ namespace MonoTests.EvaluatorTest
                }
 
        }
-}
\ No newline at end of file
+}
index 424e9aa068bc76bb68c9713d63422c0edeb45376..51868debb9ffd59aa543ab0c2aa416e90a5278ae 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 1eb2e95230a8431af5af199983df511f31a1b97f..c4aee220b49858a4c6b34793604d5c0f575932a9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 874426343bab0eef6159ec0292b4cc56ba628921..f1cbfb1d8fe0ac5002cadaf05368ae0cb073866a 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index bf01a814a9e5cafe6ba34f048b09c7b684d7b73c..e2169fc9aeb7aadfad157975d8e8201a44ad1ff9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c39e13e6255eb12799ff045f7e928036e8aff58b..0b59fa3d3c91b2a45090c2f6ec514b969f00d954 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index a5453d47d276e77ca89d54779f5ff3929f886483..35eb5c1bb817dd6868bb67a56c04783756f440be 100644 (file)
@@ -42,5 +42,5 @@ $(PREBUILT): %.prebuilt: %
        cp $* $@
 
 $(RESX_RESOURCES): %.resources: %.resx
-       $(RESGEN) $< || cp $@.prebuilt $@
+       $(RESGEN) -useSourcePath $< || cp $@.prebuilt $@
 
index a6f0c58e77d2a069b4fc23023c658615a8bf78e0..7a1ee0ced12a4d53865db6a531fc8e46ddc87f7b 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="resources/SR.resources">\r
+    <EmbeddedResource Include="resources/SR.resources.prebuilt">\r
       <LogicalName>SR.resources</LogicalName>\r
     </EmbeddedResource>\r
     <EmbeddedResource Include="resources/SQLiteCommand.bmp">\r
index 5fc27764535c1c8151316703c3455cad371e9ea5..262c68e191d548b38b37ccc9868e05762761c0da 100644 (file)
@@ -178,7 +178,7 @@ namespace MonoTests.Mono.Data.Sqlite
                        }
                }
 
-               void AddParameter (System.Data.Common.DbCommand cm, string name, object value)
+               void AddParameter (global::System.Data.Common.DbCommand cm, string name, object value)
                {
                        var param = cm.CreateParameter ();
                        param.ParameterName = ":" + name;
index 7f6af225caffab319eeb52fc23961198bd647d2e..b03b61a4867a141326e27cd405391829900fcd40 100644 (file)
@@ -61,7 +61,7 @@ namespace MonoTests.Mono.Data.Sqlite
                        textP.Value=builder.ToString();
                        floatP.Value=Convert.ToInt64(random.Next(999));
                        integerP.Value=random.Next(999);
-                       blobP.Value=System.Text.Encoding.UTF8.GetBytes("\u05D0\u05D1\u05D2" + builder.ToString());
+                       blobP.Value=global::System.Text.Encoding.UTF8.GetBytes("\u05D0\u05D1\u05D2" + builder.ToString());
                        
                        SqliteCommand selectCmd = new SqliteCommand("SELECT * from t1", _conn);
 
@@ -79,7 +79,7 @@ namespace MonoTests.Mono.Data.Sqlite
                                        
                                        object compareValue;
                                        if (blobP.Value is byte[])
-                                               compareValue = System.Text.Encoding.UTF8.GetString ((byte[])blobP.Value);
+                                               compareValue = global::System.Text.Encoding.UTF8.GetString ((byte[])blobP.Value);
                                        else
                                                compareValue = blobP.Value;
                                        Assert.AreEqual(reader["b"], compareValue);
diff --git a/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.exclude.sources b/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..cc310ba
--- /dev/null
@@ -0,0 +1 @@
+#include monodroid_Mono.Data.Sqlite_test.dll.new-exclude.sources
diff --git a/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.new-exclude.sources b/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..99a8ffe
--- /dev/null
@@ -0,0 +1,2 @@
+SqliteDataReaderTest.cs
+SqliteParameterUnitTests.cs
diff --git a/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.sources b/mcs/class/Mono.Data.Sqlite/monodroid_Mono.Data.Sqlite_test.dll.sources
new file mode 100644 (file)
index 0000000..80f5788
--- /dev/null
@@ -0,0 +1 @@
+#include Mono.Data.Sqlite_test.dll.sources
index 9851beb1a81637581419d04c1504ba9e619ff1de..082a3e024a76a38b799eb62d7623cc7ab73b11ab 100644 (file)
   </resheader>\r
   <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />\r
   <data name="DataTypes" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
-    <value>resources/DataTypes.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>\r
+    <value>DataTypes.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>\r
   </data>\r
   <data name="Keywords" xml:space="preserve">\r
     <value>ALL,ALTER,AND,AS,AUTOINCREMENT,BETWEEN,BY,CASE,CHECK,COLLATE,COMMIT,CONSTRAINT,CREATE,CROSS,DEFAULT,DEFERRABLE,DELETE,DISTINCT,DROP,ELSE,ESCAPE,EXCEPT,FOREIGN,FROM,FULL,GROUP,HAVING,IN,INDEX,INNER,INSERT,INTERSECT,INTO,IS,ISNULL,JOIN,LEFT,LIMIT,NATURAL,NOT,NOTNULL,NULL,ON,OR,ORDER,OUTER,PRIMARY,REFERENCES,RIGHT,ROLLBACK,SELECT,SET,TABLE,THEN,TO,TRANSACTION,UNION,UNIQUE,UPDATE,USING,VALUES,WHEN,WHERE</value>\r
   </data>\r
   <data name="MetaDataCollections" type="System.Resources.ResXFileRef, System.Windows.Forms">\r
-    <value>resources/MetaDataCollections.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>\r
+    <value>MetaDataCollections.xml;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>\r
   </data>\r
-</root>
\ No newline at end of file
+</root>\r
index 1e85a5b2f677ae1f4b07011e0cef85a1539769c8..a1b59026c1d47d9fb1fb80625a395623579d1e80 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 9af797177d081c36a197764f21d112b8069d7a10..51d78f17c2fbf656c1dbb7b1a121a458e6ad6bfb 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 150738e6633c1a6e9473953105245bb0872e069f..4b9d569b1ad941d860ff1c0f95482b1c823e2b2d 100644 (file)
@@ -419,6 +419,9 @@ public class Tests : TestsBase, ITest2
                ss_step_through ();
                ss_non_user_code ();
                ss_recursive (1);
+               ss_recursive2 (1);
+               ss_recursive2 (1);
+               ss_recursive_chaotic ();
                ss_fp_clobber ();
        }
 
@@ -568,6 +571,92 @@ public class Tests : TestsBase, ITest2
                ss_recursive (n + 1);
        }
 
+       // Breakpoint will be placed here
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive2_trap ()
+       {
+       }
+
+       public static void ss_recursive2_at (string s)
+       {
+               // Console.WriteLine (s);
+       }
+
+       // This method is used both for a step over and step out test.
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive2 (int x)
+       {
+               ss_recursive2_at ( "ss_recursive2 in " + x);
+               if (x < 5) {
+                       int next = x + 1;
+                       ss_recursive2_at ("ss_recursive2 descend " + x);
+                       ss_recursive2_trap ();
+                       ss_recursive2 (next);
+               }
+               ss_recursive2_at ("ss_recursive2 out " + x);
+       }
+
+       // Breakpoint will be placed here
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic_trap ()
+       {
+       }
+
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic_at (bool exiting, string at, int n)
+       {
+//             string indent = "";
+//             for (int count = 5 - n; count > 0; count--)
+//                     indent += "\t";
+//             Console.WriteLine (indent + (exiting ? "<--" : "-->") + " " + at + " " + n);
+       }
+
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic_fizz (int n)
+       {
+               ss_recursive_chaotic_at (false, "fizz", n);
+               if (n > 0) {
+                       int next = n - 1;
+                       ss_recursive_chaotic_buzz (next);
+                       ss_recursive_chaotic_fizzbuzz (next);
+               } else {
+                       ss_recursive_chaotic_trap ();
+               }
+               ss_recursive_chaotic_at (true, "fizz", n);
+       }
+
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic_buzz (int n)
+       {
+               ss_recursive_chaotic_at (false, "buzz", n);
+               if (n > 0) {
+                       int next = n - 1;
+                       ss_recursive_chaotic_fizz (next);
+                       ss_recursive_chaotic_fizzbuzz (next);
+               }
+               ss_recursive_chaotic_at (true, "buzz", n);
+       }
+
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic_fizzbuzz (int n)
+       {
+               ss_recursive_chaotic_at (false, "fizzbuzz", n);
+               if (n > 0) {
+                       int next = n - 1;
+                       ss_recursive_chaotic_fizz (next);
+                       ss_recursive_chaotic_buzz (next);
+                       ss_recursive_chaotic_fizzbuzz (next);
+               }
+               ss_recursive_chaotic_at (true, "fizzbuzz", n);
+       }
+
+       // Call a complex tree of recursive calls that has tripped up "step out" in the past.
+       [MethodImplAttribute (MethodImplOptions.NoInlining)]
+       public static void ss_recursive_chaotic ()
+       {
+               ss_recursive_chaotic_fizz (5);
+       }
+
        [MethodImplAttribute (MethodImplOptions.NoInlining)]
        public static void ss_fp_clobber () {
                double v = ss_fp_clobber_1 (5.0);
index 086c6f5f9aa92214c1c9e00bf2ee9d8b98968484..c0af12cb38ac15d9f023d11cfffa62408e2fb559 100644 (file)
@@ -42,6 +42,17 @@ public class DebuggerTests
        public static string runtime = Environment.GetEnvironmentVariable ("DBG_RUNTIME");
        public static string agent_args = Environment.GetEnvironmentVariable ("DBG_AGENT_ARGS");
 
+       // Not currently used, but can be useful when debugging individual tests.
+       void StackTraceDump (Event e)
+       {
+               int i = 0;
+               foreach (var frame in e.Thread.GetFrames ())
+               {
+                       i++;
+                       Console.WriteLine ("Frame " + i + ", " + frame.Method.Name);
+               }
+       }
+
        Event GetNextEvent () {
                var es = vm.GetNextEventSet ();
                Assert.AreEqual (1, es.Events.Length);
@@ -124,6 +135,140 @@ public class DebuggerTests
                return (e as BreakpointEvent);
        }
 
+       class ReusableBreakpoint {
+               DebuggerTests owner;
+               public string method_name;
+               public BreakpointEventRequest req;
+               public BreakpointEvent lastEvent = null;
+               public ReusableBreakpoint (DebuggerTests owner, string method_name)
+               {
+                       this.owner = owner;
+                       this.method_name = method_name;
+                       MethodMirror m = owner.entry_point.DeclaringType.GetMethod (method_name);
+                       Assert.IsNotNull (m);
+                       req = owner.vm.SetBreakpoint (m, m.ILOffsets [0]);
+               }
+
+               public void Continue ()
+               {
+                       bool survived = false;
+
+                       try {
+                               Event e = null;
+
+                               while (true) {
+                                       owner.vm.Resume ();
+                                       e = owner.GetNextEvent ();
+                                       if (e is BreakpointEvent)
+                                               break;
+                               }
+
+                               Assert.IsInstanceOfType (typeof (BreakpointEvent), e);
+                               Assert.AreEqual (method_name, (e as BreakpointEvent).Method.Name);
+
+                               lastEvent = e as BreakpointEvent;
+
+                               survived = true;
+                       } finally {
+                               if (!survived) { // Ensure cleanup if we triggered an assert
+                                       Disable ();
+                               }
+                       }
+               }
+
+               public void Disable ()
+               {
+                       req.Disable ();
+               }
+       }
+
+       /* One of the tests executes a complex tree of recursive functions.
+          The only good way to specify how its behavior should appear from this side
+          is to just run the function tree once over here and record what it does. */
+       public struct RecursiveChaoticPoint
+       {
+               public bool breakpoint;
+               public string name;
+               public int depth;
+
+               public RecursiveChaoticPoint (bool breakpoint, string name, int depth)
+               {
+                       this.breakpoint = breakpoint;
+                       this.name = name;
+                       this.depth = depth;
+               }
+       }
+
+       // The breakpoint is placed here in dtest-app.cs
+       public static void ss_recursive_chaotic_trap (int n, List<RecursiveChaoticPoint> trace, ref bool didLast, ref bool didAny)
+       {
+               // Depth is calculated as:
+               // Main + single_stepping + ss_recursive_chaotic + (n is 5 at outermost frame and 0 at innermost frame) + ss_recursive_chaotic_trap
+               trace.Add (new RecursiveChaoticPoint (true, "ss_recursive_chaotic_trap", 5 - n + 5));
+               didLast = true;
+       }
+
+       public static void ss_recursive_chaotic_at (string at, int n, List<RecursiveChaoticPoint> trace, ref bool didLast, ref bool didAny)
+       {
+               // This will be called after every return from a function. The other function will return whether "step out" is currently active, and it will be passed in here as didLast.
+               if (didLast) {
+                       // Depth is calculated as:
+                       // Main + single_stepping + ss_recursive_chaotic + (n is 5 at outermost frame and 0 at innermost frame)
+                       trace.Add (new RecursiveChaoticPoint (false, "ss_recursive_chaotic_" + at, 5 - n + 4));
+                       didAny = true;
+                       didLast = false;
+               }
+       }
+
+       public static bool ss_recursive_chaotic_fizz (int n, List<RecursiveChaoticPoint> trace)
+       {
+               bool didLast = false, didAny = false;
+               if (n > 0) {
+                       int next = n - 1;
+                       didLast = ss_recursive_chaotic_buzz (next, trace);
+                       ss_recursive_chaotic_at ("fizz", n, trace, ref didLast, ref didAny);
+                       didLast = ss_recursive_chaotic_fizzbuzz (next, trace);
+                       ss_recursive_chaotic_at ("fizz", n, trace, ref didLast, ref didAny);
+               } else {
+                       ss_recursive_chaotic_trap (n, trace, ref didLast, ref didAny);
+                       ss_recursive_chaotic_at ("fizz", n, trace, ref didLast, ref didAny);
+               }
+               return didAny;
+       }
+
+       public static bool ss_recursive_chaotic_buzz (int n, List<RecursiveChaoticPoint> trace)
+       {
+               bool didLast = false, didAny = false;
+               if (n > 0) {
+                       int next = n - 1;
+                       didLast = ss_recursive_chaotic_fizz (next, trace);
+                       ss_recursive_chaotic_at ("buzz", n, trace, ref didLast, ref didAny);
+                       didLast = ss_recursive_chaotic_fizzbuzz (next, trace);
+                       ss_recursive_chaotic_at ("buzz", n, trace, ref didLast, ref didAny);
+               }
+               return didAny;
+       }
+
+       public static bool ss_recursive_chaotic_fizzbuzz (int n, List<RecursiveChaoticPoint> trace)
+       {
+               bool didLast = false, didAny = false;
+               if (n > 0) {
+                       int next = n - 1;
+                       didLast = ss_recursive_chaotic_fizz (next, trace);
+                       ss_recursive_chaotic_at ("fizzbuzz", n, trace, ref didLast, ref didAny);
+                       didLast = ss_recursive_chaotic_buzz (next, trace);
+                       ss_recursive_chaotic_at ("fizzbuzz", n, trace, ref didLast, ref didAny);
+                       didLast = ss_recursive_chaotic_fizzbuzz (next, trace);
+                       ss_recursive_chaotic_at ("fizzbuzz", n, trace, ref didLast, ref didAny);
+               }
+               return didAny;
+       }
+
+       public static void trace_ss_recursive_chaotic (List<RecursiveChaoticPoint> trace)
+       {
+               ss_recursive_chaotic_fizz (5, trace);
+       }
+
        Event single_step (ThreadMirror t) {
                var req = vm.CreateStepRequest (t);
                req.Enable ();
@@ -372,11 +517,28 @@ public class DebuggerTests
                Assert.AreEqual (m2.Name, (e as BreakpointEvent).Method.Name);
        }
 
+       // Assert we have stepped to a location
        void assert_location (Event e, string method) {
                Assert.IsTrue (e is StepEvent);
                Assert.AreEqual (method, (e as StepEvent).Method.Name);
        }
 
+       // Assert we have breakpointed at a location
+       void assert_location_at_breakpoint (Event e, string method) {
+               Assert.IsTrue (e is BreakpointEvent);
+               Assert.AreEqual (method, (e as BreakpointEvent).Method.Name);
+       }
+
+       // Assert we have stepped to or breakpointed at a location
+       void assert_location_allow_breakpoint (Event e, string method) {
+               if (e is StepEvent)
+                       Assert.AreEqual (method, (e as StepEvent).Method.Name);
+               else if (e is BreakpointEvent)
+                       Assert.AreEqual (method, (e as BreakpointEvent).Method.Name);
+               else
+                       Assert.Fail ("Neither step nor breakpoint event");
+       }
+
        StepEventRequest create_step (Event e) {
                var req = vm.CreateStepRequest (e.Thread);
                step_req = req;
@@ -624,6 +786,95 @@ public class DebuggerTests
                AssertValue (1, f.GetValue (f.Method.GetLocal ("n")));
                req.Disable ();
 
+               // Check that step-over stops correctly when inner frames with recursive functions contain breakpoints
+               e = run_until ("ss_recursive2");
+               ReusableBreakpoint breakpoint = new ReusableBreakpoint (this, "ss_recursive2_trap");
+               try {
+                       breakpoint.Continue ();
+                       e = breakpoint.lastEvent;
+                       req = create_step (e);
+                       for (int c = 1; c <= 4; c++) {
+                               // The first five times we try to step over this function, the breakpoint will stop us
+                               assert_location_at_breakpoint (e, "ss_recursive2_trap");
+
+                               req.Disable ();
+                               req = create_step (e);
+                               req.Size = StepSize.Line;
+
+                               e = step_out ();
+                               assert_location (e, "ss_recursive2");
+
+                               // Stack should consist of Main + single_stepping + (1 ss_recursive2 frame per loop iteration)
+                               Assert.AreEqual (c+2, e.Thread.GetFrames ().Length);
+                               e = step_over_or_breakpoint ();
+                       }
+                       // At this point we should have escaped the breakpoints and this will be a normal step stop
+                       assert_location (e, "ss_recursive2");
+                       Assert.AreEqual (6, e.Thread.GetFrames ().Length);
+               } finally {
+                       req.Disable ();
+                       breakpoint.Disable ();
+               }
+
+               // Check that step-out stops correctly when inner frames with recursive functions contain breakpoints
+               e = run_until ("ss_recursive2");
+               breakpoint = new ReusableBreakpoint (this, "ss_recursive2_trap");
+               try {
+                       breakpoint.Continue ();
+                       e = breakpoint.lastEvent;
+                       req = create_step (e);
+                       for (int c = 1; c <= 4; c++) {
+                               // The first five times we try to step over this function, the breakpoint will stop us
+                               assert_location_at_breakpoint (e, "ss_recursive2_trap");
+
+                               req.Disable ();
+                               req = create_step (e);
+                               req.Size = StepSize.Line;
+
+                               e = step_out ();
+                               assert_location (e, "ss_recursive2");
+
+                               // Stack should consist of Main + single_stepping + (1 ss_recursive2 frame per loop iteration)
+                               Assert.AreEqual (c+2, e.Thread.GetFrames ().Length);
+                               e = step_out_or_breakpoint ();
+                       }
+                       for (int c = 3; c >= 1; c--) {
+                               assert_location (e, "ss_recursive2");
+                               Assert.AreEqual (c + 2, e.Thread.GetFrames ().Length);
+
+                               e = step_out ();
+                       }
+               } finally {
+                       req.Disable ();
+                       breakpoint.Disable ();
+               }
+
+               // Test step out with a really complicated call tree
+               List<RecursiveChaoticPoint> trace = new List<RecursiveChaoticPoint>();
+               trace_ss_recursive_chaotic (trace);
+               e = run_until ("ss_recursive_chaotic");
+               try {
+                       breakpoint = new ReusableBreakpoint (this, "ss_recursive_chaotic_trap");
+                       breakpoint.Continue ();
+                       e = breakpoint.lastEvent;
+                       foreach (RecursiveChaoticPoint point in trace)
+                       {
+                               if (point.breakpoint)
+                                       assert_location_at_breakpoint (e, point.name);
+                               else
+                                       assert_location (e, point.name);
+                               Assert.AreEqual (point.depth, e.Thread.GetFrames ().Length);
+
+                               req.Disable ();
+                               req = create_step (e);
+                               req.Size = StepSize.Line;
+                               e = step_out_or_breakpoint ();
+                       }
+               } finally {
+                       req.Disable ();
+                       breakpoint.Disable ();
+               }
+
                // Check that single stepping doesn't clobber fp values
                e = run_until ("ss_fp_clobber");
                req = create_step (e);
@@ -1424,7 +1675,7 @@ public class DebuggerTests
 
                TypeMirror t = o.Type;
 
-               Assert.AreEqual ("MonoType", t.GetTypeObject ().Type.Name);
+               Assert.AreEqual ("RuntimeType", t.GetTypeObject ().Type.Name);
        }
 
        [Test]
@@ -1625,6 +1876,27 @@ public class DebuggerTests
                return step_once ();
        }
 
+       Event step_once_or_breakpoint () {
+               vm.Resume ();
+               var e = GetNextEvent ();
+               Assert.IsTrue (e is StepEvent || e is BreakpointEvent);
+               return e;
+       }
+
+       Event step_over_or_breakpoint () {
+               step_req.Disable ();
+               step_req.Depth = StepDepth.Over;
+               step_req.Enable ();
+               return step_once_or_breakpoint ();
+       }
+
+       Event step_out_or_breakpoint () {
+               step_req.Disable ();
+               step_req.Depth = StepDepth.Out;
+               step_req.Enable ();
+               return step_once_or_breakpoint ();
+       }
+
        [Test]
        public void Locals () {
                var be = run_until ("locals1");
index 510ad8aa6d6ef12ecef0e72d67b8d11dc1457681..781affa962a70637a5b24e3271886ad1ec55044f 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7da8011cea166d9117df4befab8f91dfd0da2c3a..9aa0a5dffaf85f310ce84f3c8828737d2dc8699a 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index f778bc304967e5430ddd72468e5466eefb1654d0..40771592cda08379045b3013d8644da60516962d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 1a269cc8a2a5efa7c132445bda597c851645d325..8b83f6323907e479ef4c20d46a86603b246a5c8b 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 3fbd425d132ce250722a8a0ec678174da19c080f..d8f8685ff498a07648df1afe0ae3ba96eb694e45 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c3e431f298531a787a4b14760361b7211efcabf2..f5de89dfdd4753428e3242c3e3ddbd21c02f9cf3 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/Mono.Posix/Mono.Posix-build.csproj b/mcs/class/Mono.Posix/Mono.Posix-build.csproj
deleted file mode 100644 (file)
index bd86ea4..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{AA347918-40BB-4762-8A7F-B94836255127}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618,612</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>Mono.Posix</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,612</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,612</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include=".\Assembly\AssemblyInfo.cs" />\r
-    <Compile Include=".\Mono.Posix\Catalog.cs" />\r
-    <Compile Include=".\Mono.Posix\PeerCred.cs" />\r
-    <Compile Include=".\Mono.Posix\Syscall.cs" />\r
-    <Compile Include=".\Mono.Posix\UnixEndPoint.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixBinaryClientFormatterSink.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixBinaryClientFormatterSinkProvider.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixBinaryCore.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixBinaryServerFormatterSink.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixBinaryServerFormatterSinkProvider.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixChannel.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixClientChannel.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixClientTransportSink.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixClientTransportSinkProvider.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixConnectionPool.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixMessageIO.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixServerChannel.cs" />\r
-    <Compile Include=".\Mono.Remoting.Channels.Unix\UnixServerTransportSink.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\CdeclFunction.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\FileNameMarshaler.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\MapAttribute.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\NativeConvert.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\NativeConvert.generated.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\RealTimeSignum.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\Stdlib.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\Syscall.cs" />\r
-    <Compile Include=".\Mono.Unix.Native\TypeAttributes.cs" />\r
-    <Compile Include=".\Mono.Unix\AbstractUnixEndPoint.cs" />\r
-    <Compile Include=".\Mono.Unix\Catalog.cs" />\r
-    <Compile Include=".\Mono.Unix\FileAccessPattern.cs" />\r
-    <Compile Include=".\Mono.Unix\FileAccessPermissions.cs" />\r
-    <Compile Include=".\Mono.Unix\FileHandleOperations.cs" />\r
-    <Compile Include=".\Mono.Unix\FileSpecialAttributes.cs" />\r
-    <Compile Include=".\Mono.Unix\FileTypes.cs" />\r
-    <Compile Include=".\Mono.Unix\PeerCred.cs" />\r
-    <Compile Include=".\Mono.Unix\StdioFileStream.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixClient.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixDirectoryInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixDriveInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixEncoding.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixEndPoint.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixEnvironment.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixFileInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixFileSystemInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixGroupInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixIOException.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixListener.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixMarshal.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixPath.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixPipes.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixProcess.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixSignal.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixStream.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixSymbolicLinkInfo.cs" />\r
-    <Compile Include=".\Mono.Unix\UnixUserInfo.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-build.csproj">\r
-      <Project>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System\System-build-1.csproj">\r
-      <Project>{ACA4A790-62B2-4D59-B96C-CE17F8F6BE58}</Project>\r
-      <Name>System\System-build-1</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index 899695ca3962a5ab207a73eede8f9ca4d157201e..51e6db7e1d820b7e97deff2aa6f6370cd2ec5978 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618,612</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 1edf3f08289ecdce1296aabefc191b71b2c63d07..2f0747294d316bdb587f7af87c1d1c7734c07f40 100644 (file)
@@ -1001,7 +1001,7 @@ namespace MonoTests.Mono.Unix {
 
                        Assert.AreEqual (end.Length, bytes.Length, prefix + ": byte length");
 
-                       for (int i = 0; i < Math.Min (bytes.Length, end.Length); ++i)
+                       for (int i = 0; i < global::System.Math.Min (bytes.Length, end.Length); ++i)
                                Assert.AreEqual (end [i], bytes [i], prefix + ": byte " + i);
 
                        int cc = unix.GetCharCount (end, 0, end.Length);
@@ -1012,7 +1012,7 @@ namespace MonoTests.Mono.Unix {
 
                        Assert.AreEqual (start.Length, r, prefix + ": chars length");
 
-                       for (int i = 0; i < Math.Min (r, start.Length); ++i) {
+                       for (int i = 0; i < global::System.Math.Min (r, start.Length); ++i) {
                                Assert.AreEqual (start [i], chars [i], prefix + ": char " + i);
                        }
                }
diff --git a/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.exclude.sources b/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..0facffb
--- /dev/null
@@ -0,0 +1,2 @@
+#include monodroid_Mono.Posix_test.dll.new-exclude.sources
+Mono.Unix.Android/TestHelper.cs
diff --git a/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.new-exclude.sources b/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..ed73374
--- /dev/null
@@ -0,0 +1,3 @@
+Mono.Unix.Native/SocketTest.cs
+Mono.Unix/UnixEndPointTest.cs
+Mono.Unix/UnixListenerTest.cs
diff --git a/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.sources b/mcs/class/Mono.Posix/monodroid_Mono.Posix_test.dll.sources
new file mode 100644 (file)
index 0000000..3af39db
--- /dev/null
@@ -0,0 +1 @@
+#include Mono.Posix_test.dll.sources
index 5199a373e5b7c1fc6d8eede32fa9810098f1c439..115c3f25a7f79679d268d265a7c4e9bf231da541 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 9df975f327604695633329a22ec443510752e7b8..771d99fc965243f0dede1b257dcaf3a1f3cecc62 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -31,7 +34,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;SECURITY_DEP;MONO_SECURITY_ALIAS;MONO;FEATURE_PAL;MONO_FEATURE_NEW_TLS;MONO_FEATURE_NEW_SYSTEM_SOURCE;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;SECURITY_DEP;MONO;FEATURE_PAL;MONO_FEATURE_NEW_TLS;MONO_FEATURE_NEW_SYSTEM_SOURCE;DISABLE_CAS_USE;MONO_SECURITY_ALIAS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -39,7 +42,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;SECURITY_DEP;MONO_SECURITY_ALIAS;MONO;FEATURE_PAL;MONO_FEATURE_NEW_TLS;MONO_FEATURE_NEW_SYSTEM_SOURCE;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;SECURITY_DEP;MONO;FEATURE_PAL;MONO_FEATURE_NEW_TLS;MONO_FEATURE_NEW_SYSTEM_SOURCE;DISABLE_CAS_USE;MONO_SECURITY_ALIAS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\InternalApis\NDP_Common\inc\PinnableBufferCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_NTAuthentication.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_SecureChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_SslSessionsCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Logging.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\_FixedSizeReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\_HelperAsyncResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\_SslState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\_SslStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\SslStream.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\InternalApis\NDP_Common\inc\PinnableBufferCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_NTAuthentication.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_SecureChannel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_SslSessionsCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Logging.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\_FixedSizeReader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\_HelperAsyncResults.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\_SslState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\_SslStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\SslStream.cs" />\r
     <Compile Include="..\System\Mono.Net.Security\CallbackHelpers.cs" />\r
     <Compile Include="..\System\Mono.Net.Security\IMonoTlsProvider.cs" />\r
     <Compile Include="..\System\Mono.Net.Security\MonoTlsProviderFactory.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 211791b19e4fc0b0c83e87a570c38f7ef71a23aa..158b09579821b0b2ed821f1a9031247f702456af 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7439af9be77e7d2d28129f99b16af936ebbe4128..32ceb3003558fdfd3269122131eef77d414889c4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1030</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 2be8ede9fc33eb5b1f3bf0a2403b79059cb24686..6eb3f05da224a9b1b444b7156f27f34b432d7c08 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index a6a92f06430cf0b88a0d535b86db36d8a03f4c60..65b46010fc384b28a5a9b844b25ce1cf24e189e8 100644 (file)
@@ -31,9 +31,9 @@ public class MD2Test {
                if ((array1 == null) && (array2 == null))
                        return;
                if (array1 == null)
-                       Assertion.Fail (msg + " -> First array is NULL");
+                       Assert.Fail (msg + " -> First array is NULL");
                if (array2 == null)
-                       Assertion.Fail (msg + " -> Second array is NULL");
+                       Assert.Fail (msg + " -> Second array is NULL");
         
                bool a = (array1.Length == array2.Length);
                if (a) {
@@ -48,7 +48,7 @@ public class MD2Test {
                        msg += " -> Expected " + BitConverter.ToString (array1, 0);
                        msg += " is different than " + BitConverter.ToString (array2, 0);
                }
-               Assertion.Assert (msg, a);
+               Assert.IsTrue (a, msg);
        }
 
        // MD2 ("") = 8350e5a3e24c153df2275c9f80692773
@@ -208,7 +208,7 @@ public class MD2Test {
                for (int i=0; i < input.Length - 1; i++)
                        hash.TransformBlock (input, i, 1, copy, i);
                byte[] output = hash.TransformFinalBlock (input, input.Length - 1, 1);
-               Assertion.AssertEquals (testName + ".e.1", input [input.Length - 1], output [0]);
+               Assert.AreEqual (input [input.Length - 1], output [0], testName + ".e.1");
                AssertEquals (testName + ".e.2", result, hash.Hash);
                // required or next operation will still return old hash
                hash.Initialize ();
@@ -218,9 +218,9 @@ public class MD2Test {
        public virtual void StaticInfo () 
        {
                string className = hash.ToString ();
-               Assertion.AssertEquals (className + ".HashSize", 128, hash.HashSize);
-               Assertion.AssertEquals (className + ".InputBlockSize", 1, hash.InputBlockSize);
-               Assertion.AssertEquals (className + ".OutputBlockSize", 1, hash.OutputBlockSize);
+               Assert.AreEqual (128, hash.HashSize, className + ".HashSize",);
+               Assert.AreEqual (1, hash.InputBlockSize, className + ".InputBlockSize");
+               Assert.AreEqual (1, hash.OutputBlockSize, className + ".OutputBlockSize");
        }
 }
 
index 308b689b91cce34677cf481c6b557b78c4b823a1..111035eb5acebc0027d66b8a0f145ef094b79f1c 100644 (file)
@@ -31,9 +31,9 @@ public class MD4Test {
                if ((array1 == null) && (array2 == null))
                        return;
                if (array1 == null)
-                       Assertion.Fail (msg + " -> First array is NULL");
+                       Assert.Fail (msg + " -> First array is NULL");
                if (array2 == null)
-                       Assertion.Fail (msg + " -> Second array is NULL");
+                       Assert.Fail (msg + " -> Second array is NULL");
 
                bool a = (array1.Length == array2.Length);
                if (a) {
@@ -48,7 +48,7 @@ public class MD4Test {
                        msg += " -> Expected " + BitConverter.ToString (array1, 0);
                        msg += " is different than " + BitConverter.ToString (array2, 0);
                }
-               Assertion.Assert (msg, a);
+               Assert.IsTrue (a, msg);
        }
 
        // MD4 ("") = 31d6cfe0d16ae931b73c59d7e0c089c0
@@ -208,7 +208,7 @@ public class MD4Test {
                for (int i=0; i < input.Length - 1; i++)
                        hash.TransformBlock (input, i, 1, copy, i);
                byte[] output = hash.TransformFinalBlock (input, input.Length - 1, 1);
-               Assertion.AssertEquals (testName + ".e.1", input [input.Length - 1], output [0]);
+               Assert.AreEqual (input [input.Length - 1], output [0], testName + ".e.1");
                AssertEquals (testName + ".e.2", result, hash.Hash);
                // required or next operation will still return old hash
                hash.Initialize ();
@@ -218,9 +218,9 @@ public class MD4Test {
        public virtual void StaticInfo () 
        {
                string className = hash.ToString ();
-               Assertion.AssertEquals (className + ".HashSize", 128, hash.HashSize);
-               Assertion.AssertEquals (className + ".InputBlockSize", 1, hash.InputBlockSize);
-               Assertion.AssertEquals (className + ".OutputBlockSize", 1, hash.OutputBlockSize);
+               Assert.AreEqual (128, hash.HashSize, className + ".HashSize");
+               Assert.AreEqual (1, hash.InputBlockSize, className + ".InputBlockSize");
+               Assert.AreEqual (1, hash.OutputBlockSize, className + ".OutputBlockSize");
        }
 }
 
index 1eb7078938063058c27009e421bf3d59ca4c88fc..a5796e910d77de3be4ff2c9063186e803cf79a37 100644 (file)
@@ -33,9 +33,9 @@ public class MD5Test {
                if ((array1 == null) && (array2 == null))
                        return;
                if (array1 == null)
-                       Assertion.Fail (msg + " -> First array is NULL");
+                       Assert.Fail (msg + " -> First array is NULL");
                if (array2 == null)
-                       Assertion.Fail (msg + " -> Second array is NULL");
+                       Assert.Fail (msg + " -> Second array is NULL");
 
                bool a = (array1.Length == array2.Length);
                if (a) {
@@ -50,7 +50,7 @@ public class MD5Test {
                        msg += " -> Expected " + BitConverter.ToString (array1, 0);
                        msg += " is different than " + BitConverter.ToString (array2, 0);
                }
-               Assertion.Assert (msg, a);
+               Assert.IsTrue (a, msg);
        }
 
        // MD5 ("") = d41d8cd98f00b204e9800998ecf8427e
@@ -210,7 +210,7 @@ public class MD5Test {
                for (int i=0; i < input.Length - 1; i++)
                        hash.TransformBlock (input, i, 1, copy, i);
                byte[] output = hash.TransformFinalBlock (input, input.Length - 1, 1);
-               Assertion.AssertEquals (testName + ".e.1", input [input.Length - 1], output [0]);
+               Assert.AreEqual (input [input.Length - 1], output [0], testName + ".e.1");
                AssertEquals (testName + ".e.2", result, hash.Hash);
                // required or next operation will still return old hash
                hash.Initialize ();
@@ -220,9 +220,9 @@ public class MD5Test {
        public virtual void StaticInfo () 
        {
                string className = hash.ToString ();
-               Assertion.AssertEquals (className + ".HashSize", 128, hash.HashSize);
-               Assertion.AssertEquals (className + ".InputBlockSize", 1, hash.InputBlockSize);
-               Assertion.AssertEquals (className + ".OutputBlockSize", 1, hash.OutputBlockSize);
+               Assert.AreEqual (128, hash.HashSize, className + ".HashSize");
+               Assert.AreEqual (1, hash.InputBlockSize, className + ".InputBlockSize");
+               Assert.AreEqual (1, hash.OutputBlockSize, className + ".OutputBlockSize");
        }
 }
 
index 0ef2206f50bf676319b97dce97070cc25231072c..358beca8d065370879c08a4621d6a37d432d83cb 100644 (file)
@@ -33,9 +33,9 @@ public class SHA1Test {
                if ((array1 == null) && (array2 == null))
                        return;
                if (array1 == null)
-                       Assertion.Fail (msg + " -> First array is NULL");
+                       Assert.Fail (msg + " -> First array is NULL");
                if (array2 == null)
-                       Assertion.Fail (msg + " -> Second array is NULL");
+                       Assert.Fail (msg + " -> Second array is NULL");
 
                bool a = (array1.Length == array2.Length);
                if (a) {
@@ -48,7 +48,7 @@ public class SHA1Test {
                }
                msg += " -> Expected " + BitConverter.ToString (array1, 0);
                msg += " is different than " + BitConverter.ToString (array2, 0);
-               Assertion.Assert (msg, a);
+               Assert.IsTrue (a, msg);
        }
 
        [SetUp]
@@ -63,12 +63,12 @@ public class SHA1Test {
        {
                // test all values static for SHA1
                string className = hash.ToString ();
-               Assertion.AssertEquals (className + ".HashSize", 160, hash.HashSize);
-               Assertion.AssertEquals (className + ".InputBlockSize", 1, hash.InputBlockSize);
-               Assertion.AssertEquals (className + ".OutputBlockSize", 1, hash.OutputBlockSize);
-               Assertion.AssertEquals (className + ".CanReuseTransform", true, hash.CanReuseTransform);
-               Assertion.AssertEquals (className + ".CanTransformMultipleBlocks", true, hash.CanTransformMultipleBlocks);
-               Assertion.AssertEquals (className + ".ToString()", "Mono.Security.Cryptography.SHA1CryptoServiceProvider", className);
+               Assert.AreEqual (className + ".HashSize", 160, hash.HashSize);
+               Assert.AreEqual (className + ".InputBlockSize", 1, hash.InputBlockSize);
+               Assert.AreEqual (className + ".OutputBlockSize", 1, hash.OutputBlockSize);
+               Assert.AreEqual (className + ".CanReuseTransform", true, hash.CanReuseTransform);
+               Assert.AreEqual (className + ".CanTransformMultipleBlocks", true, hash.CanTransformMultipleBlocks);
+               Assert.AreEqual (className + ".ToString()", "Mono.Security.Cryptography.SHA1CryptoServiceProvider", className);
        }
 
        // First test, we hash the string "abc"
diff --git a/mcs/class/Mono.Security/Mono.Security-basic.csproj b/mcs/class/Mono.Security/Mono.Security-basic.csproj
deleted file mode 100644 (file)
index d9695b4..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{4615469E-37C9-4D64-9231-67594EA75E4F}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <OutputPath>./../../class/lib/basic</OutputPath>\r
-    <NoStdLib>False</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>Mono.Security</AssemblyName>\r
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include=".\Assembly\AssemblyInfo.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\NextPrimeFinder.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\PrimeGeneratorBase.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\SequentialSearchPrimeGeneratorBase.cs" />\r
-    <Compile Include=".\Mono.Math.Prime\ConfidenceFactor.cs" />\r
-    <Compile Include=".\Mono.Math.Prime\PrimalityTests.cs" />\r
-    <Compile Include=".\Mono.Math\BigInteger.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeBase.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeDeformatter.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeFormatter.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\PrivateKey.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\SoftwarePublisherCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\ARC4Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\CryptoConvert.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\CryptoTools.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DHKeyGeneration.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DHParameters.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DiffieHellman.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DiffieHellmanManaged.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\KeyPairPersistence.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD2.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD2Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD4.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD4Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD5SHA1.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\PKCS1.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\PKCS8.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\RC4.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\RSAManaged.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SHA224.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SHA224Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SymmetricTransform.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\TlsHMAC.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\ChallengeResponse.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\ChallengeResponse2.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\MessageBase.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmAuthLevel.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmFlags.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type1Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type2Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type3Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientCertificateVerify.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerCertificateRequest.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerHelloDone.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientCertificateVerify.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerCertificateRequest.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerHelloDone.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\ClientCertificateType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\HandshakeMessage.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\HandshakeType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\Alert.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuiteCollection.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuiteFactory.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientContext.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientRecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientSessionCache.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ContentType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\Context.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\DebugHelper.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ExchangeAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HandshakeState.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HashAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HttpsClientStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RSASslSignatureDeformatter.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RSASslSignatureFormatter.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityCompressionType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityParameters.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityProtocolType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ServerContext.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ServerRecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslCipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslClientStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslHandshakeHash.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslServerStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslStreamBase.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsCipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsClientSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsException.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsServerSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsStream.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\AuthorityKeyIdentifierExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\BasicConstraintsExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\CertificatePoliciesExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\CRLDistributionPointsExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\ExtendedKeyUsageExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\GeneralNames.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\KeyAttributesExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\KeyUsageExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\NetscapeCertTypeExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\PrivateKeyUsagePeriodExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\SubjectAltNameExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509\PKCS12.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X501Name.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Builder.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Certificate.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CertificateBuilder.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CertificateCollection.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Chain.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509ChainStatusFlags.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CRL.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Extension.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Extensions.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Store.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509StoreManager.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Stores.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X520Attributes.cs" />\r
-    <Compile Include=".\Mono.Security\ASN1.cs" />\r
-    <Compile Include=".\Mono.Security\ASN1Convert.cs" />\r
-    <Compile Include=".\Mono.Security\BitConverterLE.cs" />\r
-    <Compile Include=".\Mono.Security\PKCS7.cs" />\r
-    <Compile Include=".\Mono.Security\StrongName.cs" />\r
-    <Compile Include=".\Mono.Xml\MiniParser.cs" />\r
-    <Compile Include=".\Mono.Xml\SecurityParser.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\System\System-basic-1.csproj">\r
-      <Project>{CE10AD5A-9645-496F-8369-7B687E84456B}</Project>\r
-      <Name>System\System-basic-1</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
diff --git a/mcs/class/Mono.Security/Mono.Security-build.csproj b/mcs/class/Mono.Security/Mono.Security-build.csproj
deleted file mode 100644 (file)
index 0b10209..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{B826C748-252D-4C0F-8A6C-C8DADE270C3F}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>Mono.Security</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,1030</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include=".\Assembly\AssemblyInfo.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\NextPrimeFinder.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\PrimeGeneratorBase.cs" />\r
-    <Compile Include=".\Mono.Math.Prime.Generator\SequentialSearchPrimeGeneratorBase.cs" />\r
-    <Compile Include=".\Mono.Math.Prime\ConfidenceFactor.cs" />\r
-    <Compile Include=".\Mono.Math.Prime\PrimalityTests.cs" />\r
-    <Compile Include=".\Mono.Math\BigInteger.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeBase.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeDeformatter.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\AuthenticodeFormatter.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\PrivateKey.cs" />\r
-    <Compile Include=".\Mono.Security.Authenticode\SoftwarePublisherCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\ARC4Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\CryptoConvert.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\CryptoTools.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DHKeyGeneration.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DHParameters.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DiffieHellman.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\DiffieHellmanManaged.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\KeyPairPersistence.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD2.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD2Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD4.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD4Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\MD5SHA1.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\PKCS1.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\PKCS8.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\RC4.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\RSAManaged.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SHA224.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SHA224Managed.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\SymmetricTransform.cs" />\r
-    <Compile Include=".\Mono.Security.Cryptography\TlsHMAC.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\ChallengeResponse.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\ChallengeResponse2.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\MessageBase.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmAuthLevel.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmFlags.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\NtlmSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type1Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type2Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Ntlm\Type3Message.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientCertificateVerify.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsClientKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerCertificateRequest.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerHelloDone.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Client\TlsServerKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientCertificateVerify.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsClientKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerCertificate.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerCertificateRequest.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerFinished.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerHello.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerHelloDone.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake.Server\TlsServerKeyExchange.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\ClientCertificateType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\HandshakeMessage.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls.Handshake\HandshakeType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\Alert.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuiteCollection.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\CipherSuiteFactory.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientContext.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientRecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ClientSessionCache.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ContentType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\Context.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\DebugHelper.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ExchangeAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HandshakeState.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HashAlgorithmType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\HttpsClientStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RSASslSignatureDeformatter.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\RSASslSignatureFormatter.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityCompressionType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityParameters.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SecurityProtocolType.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ServerContext.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\ServerRecordProtocol.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslCipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslClientStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslHandshakeHash.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslServerStream.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\SslStreamBase.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsCipherSuite.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsClientSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsException.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsServerSettings.cs" />\r
-    <Compile Include=".\Mono.Security.Protocol.Tls\TlsStream.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\AuthorityKeyIdentifierExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\BasicConstraintsExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\CertificatePoliciesExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\CRLDistributionPointsExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\ExtendedKeyUsageExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\GeneralNames.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\KeyAttributesExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\KeyUsageExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\NetscapeCertTypeExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\PrivateKeyUsagePeriodExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\SubjectAltNameExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509.Extensions\SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include=".\Mono.Security.X509\PKCS12.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X501Name.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Builder.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Certificate.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CertificateBuilder.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CertificateCollection.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Chain.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509ChainStatusFlags.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509CRL.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Extension.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Extensions.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Store.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509StoreManager.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X509Stores.cs" />\r
-    <Compile Include=".\Mono.Security.X509\X520Attributes.cs" />\r
-    <Compile Include=".\Mono.Security\ASN1.cs" />\r
-    <Compile Include=".\Mono.Security\ASN1Convert.cs" />\r
-    <Compile Include=".\Mono.Security\BitConverterLE.cs" />\r
-    <Compile Include=".\Mono.Security\PKCS7.cs" />\r
-    <Compile Include=".\Mono.Security\StrongName.cs" />\r
-    <Compile Include=".\Mono.Xml\MiniParser.cs" />\r
-    <Compile Include=".\Mono.Xml\SecurityParser.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-build.csproj">\r
-      <Project>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System\System-build-1.csproj">\r
-      <Project>{ACA4A790-62B2-4D59-B96C-CE17F8F6BE58}</Project>\r
-      <Name>System\System-build-1</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index a4e12fac1177672b0488bd385429c6226597de26..e6e48767bf6173f7e82fe65dc206f5ef05123932 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1030,3009</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7240fa548094b57bcb9c7068fc616ff4423ef8d0..17648d708696c16f28d08ab397cfdd81dbdd7eae 100644 (file)
@@ -93,7 +93,7 @@ namespace Mono.Security.Cryptography {
                        // p and q values should have a length of half the strength in bits
                        int pbitlength = ((KeySize + 1) >> 1);
                        int qbitlength = (KeySize - pbitlength);
-                       const uint uint_e = 17;
+                       const uint uint_e = 65537;
                        e = uint_e; // fixed
        
                        // generate p, prime and (p-1) relatively prime to e
index 13573cbaab194db8840cde072c567428eb7b3dcc..68a21e1d54b4066b28fadccd593cc9293b7da934 100644 (file)
@@ -40,65 +40,16 @@ namespace Mono.Security.Protocol.Tls
 
                public static CipherSuiteCollection GetSupportedCiphers (bool server, SecurityProtocolType protocol)
                {
-                       CipherSuiteCollection suites;
                        switch (protocol) {
                        case SecurityProtocolType.Default:
                        case SecurityProtocolType.Tls:                          
-                               suites = CipherSuiteFactory.GetTls1SupportedCiphers ();
-                               break;
+                               return CipherSuiteFactory.GetTls1SupportedCiphers ();
                        case SecurityProtocolType.Ssl3:
-                               suites = CipherSuiteFactory.GetSsl3SupportedCiphers ();
-                               break;
+                               return CipherSuiteFactory.GetSsl3SupportedCiphers ();
                        case SecurityProtocolType.Ssl2:
                        default:
                                throw new NotSupportedException ("Unsupported security protocol type");
                        }
-
-                       IEnumerable<string> list = null;
-#if INSIDE_SYSTEM
-                       // if SSL/TLS support is built-in System.dll (e.g. monotouch) then we can access ServicePointManager
-                       // extension directly
-                       var cb = server ? ServicePointManager.ServerCipherSuitesCallback : ServicePointManager.ClientCipherSuitesCallback;
-                       if (cb == null)
-                               return suites; // e.g. no callback was set
-
-                       list = cb ((System.Net.SecurityProtocolType) (int) protocol, suites.GetNames ());
-#elif !BOOTSTRAP_BASIC
-                       // Mono.Security must work on MS.NET so it cannot depend on any Mono-specific extensions
-                       PropertyInfo pi = null;
-                       if (server) {
-                               if (server_callback == null)
-                                       server_callback = spm.GetProperty ("ServerCipherSuitesCallback", BindingFlags.Static | BindingFlags.Public);
-                               pi = server_callback;
-                       } else {
-                               if (client_callback == null)
-                                       client_callback = spm.GetProperty ("ClientCipherSuitesCallback", BindingFlags.Static | BindingFlags.Public);
-                               pi = client_callback;
-                       }
-                       if (pi == null)
-                               return suites; // e.g. MS runtime - return every supported suites
-
-                       var cb = (Delegate) pi.GetGetMethod ().Invoke (null, null);
-                       if (cb == null)
-                               return suites; // e.g. no callback was set - return every supported suites
-
-                       list = (IEnumerable<string>) cb.DynamicInvoke (new object[] { 
-                               (System.Net.SecurityProtocolType) (int) protocol, suites.GetNames () 
-                       });
-#else
-                       // TODO: right now the callback is only available when using System.Net.* types for SSL/TLS
-                       return suites;
-#endif
-                       CipherSuiteCollection allowed = new CipherSuiteCollection (protocol);
-                       if (list != null) {
-                               foreach (var name in list) {
-                                       // add any supported (ignore unknowns) ciphers requested by the callback
-                                       var cipher = suites [name];
-                                       if (cipher != null)
-                                               allowed.Add (cipher);
-                               }
-                       }
-                       return allowed;
                }
 
                #region Private Static Methods
index 989adb7697a272b8baefa1a2b6dbd417aa6234a6..56cec328adbcb1f52a4e31f7124d1d8e83721188 100644 (file)
@@ -22,7 +22,7 @@ namespace MonoTests.Mono.Math {
 
                protected void Expect (BigInteger actual, BigInteger expected) 
                {
-                       Assertion.AssertEquals (Name, expected, actual);
+                       Assert.AreEqual (expected, actual, Name);
                }
        }
 }
index 4cf969f69d05d48bf6ba8c61e293f7811ffe5f23..2abf162a89c6869d89d07d93f78c51ee1135ca20 100644 (file)
@@ -81,12 +81,12 @@ namespace MonoTests.Mono.Math {
 
                private void ExpectComposite (BigInteger bi)
                {
-                       Assertion.AssertEquals (false, bi.IsProbablePrime ());
+                       Assert.AreEqual (false, bi.IsProbablePrime ());
                }
 
                private void ExpectPrime (BigInteger bi)
                {
-                       Assertion.AssertEquals (true, bi.IsProbablePrime ());
+                       Assert.AreEqual (true, bi.IsProbablePrime ());
                }
        }
 
@@ -195,7 +195,7 @@ namespace MonoTests.Mono.Math {
        // Adapted from http://lists.ximian.com/archives/public/mono-devel-list/2003-November/003026.html
        // Note: these primes are taken from RFC 2412 [http://www.faqs.org/rfcs/rfc2412.html]
        [TestFixture]
-       public class Rfc2412WellTestedPrimes : Assertion {
+       public class Rfc2412WellTestedPrimes {
 
                // E.1. Well-Known Group 1:  A 768 bit prime
                [Test]
@@ -203,8 +203,8 @@ namespace MonoTests.Mono.Math {
                {
                        string prime = "1552518092300708935130918131258481755631334049434514313202351194902966239949102107258669453876591642442910007680288864229150803718918046342632727613031282983744380820890196288509170691316593175367469551763119843371637221007210577919";
                        BigInteger bi = BigInteger.Parse (prime);
-                       Assert ("isProbablePrime-768", bi.IsProbablePrime ());
-                       AssertEquals ("ToString()", prime, bi.ToString ());
+                       Assert.IsTrue (bi.IsProbablePrime (), "isProbablePrime-768");
+                       Assert.AreEqual (prime, bi.ToString (), "ToString()");
                }
 
                // E.2. Well-Known Group 2:  A 1024 bit prime
@@ -213,8 +213,8 @@ namespace MonoTests.Mono.Math {
                {
                        string prime = "179769313486231590770839156793787453197860296048756011706444423684197180216158519368947833795864925541502180565485980503646440548199239100050792877003355816639229553136239076508735759914822574862575007425302077447712589550957937778424442426617334727629299387668709205606050270810842907692932019128194467627007";
                        BigInteger bi = BigInteger.Parse (prime);
-                       Assert ("isProbablePrime-1024", bi.IsProbablePrime ());
-                       AssertEquals ("ToString()", prime, bi.ToString ());
+                       Assert.IsTrue (bi.IsProbablePrime (), "isProbablePrime-1024");
+                       Assert.AreEqual (prime, bi.ToString (), "ToString()");
                }
 
                // Note: E.3 and E.4 are for Elliptic Curve Groups
@@ -225,8 +225,8 @@ namespace MonoTests.Mono.Math {
                {
                        string prime = "2410312426921032588552076022197566074856950548502459942654116941958108831682612228890093858261341614673227141477904012196503648957050582631942730706805009223062734745341073406696246014589361659774041027169249453200378729434170325843778659198143763193776859869524088940195577346119843545301547043747207749969763750084308926339295559968882457872412993810129130294592999947926365264059284647209730384947211681434464714438488520940127459844288859336526896320919633919";
                        BigInteger bi = BigInteger.Parse (prime);
-                       Assert ("isProbablePrime-1536", bi.IsProbablePrime ());
-                       AssertEquals ("ToString()", prime, bi.ToString ());
+                       Assert.IsTrue (bi.IsProbablePrime (), "isProbablePrime-1536");
+                       Assert.AreEqual (prime, bi.ToString (), "ToString()");
                }
        }
 
index 80434f9983ca1dd3296fe96cfdfbdf61372dc34f..e77246dc9568dfe60c81d27d1009955bd487db17 100644 (file)
@@ -34,7 +34,7 @@ namespace MonoTests.Mono.Math {
                        ContextData ctx = (ContextData)Context;
 
                        
-                       Assertion.AssertEquals (ctx.bits, bits);
+                       Assert.AreEqual (ctx.bits, bits);
                        uint d = ctx.testData;
 
                        for (uint i = (uint)bits - 2; d > 0; i--, d >>= 1)
@@ -65,7 +65,7 @@ namespace MonoTests.Mono.Math {
                                Assert.IsTrue (p.TestBit (1));
                                uint d = ctx.testData;
                                for (uint j = 128 - 2; d > 0; j--, d >>= 1)
-                                       Assertion.AssertEquals ((d&1) == 1, p.TestBit (j));
+                                       Assert.AreEqual ((d&1) == 1, p.TestBit (j));
                        }
                }
        }
index 0f529496e1183d56568e8535ed5a0f53a4aa9629..8696657715e03258c3c79fa620c2e0498af263b0 100644 (file)
@@ -68,7 +68,7 @@ namespace MonoTests.Mono.Security.Authenticode {
 // makecert -n "CN=PVK1" -sv 1.pvk 1.cer
 
 [TestFixture]
-public class PrivateKeyTest : Assertion {
+public class PrivateKeyTest {
 
        // because most crypto stuff works with byte[] buffers
        static public void AssertEquals (string msg, byte[] array1, byte[] array2) 
@@ -76,9 +76,9 @@ public class PrivateKeyTest : Assertion {
                if ((array1 == null) && (array2 == null))
                        return;
                if (array1 == null)
-                       Fail (msg + " -> First array is NULL");
+                       Assert.Fail (msg + " -> First array is NULL");
                if (array2 == null)
-                       Fail (msg + " -> Second array is NULL");
+                       Assert.Fail (msg + " -> Second array is NULL");
 
                bool a = (array1.Length == array2.Length);
                if (a) {
@@ -93,7 +93,7 @@ public class PrivateKeyTest : Assertion {
                        msg += " -> Expected " + BitConverter.ToString (array1, 0);
                        msg += " is different than " + BitConverter.ToString (array2, 0);
                }
-               Assert (msg, a);
+               Assert.IsTrue (a, msg);
        }
 
        string testfile;
@@ -152,10 +152,10 @@ public class PrivateKeyTest : Assertion {
        {
                WriteBuffer (nopwd);
                PrivateKey pvk = PrivateKey.CreateFromFile (testfile);
-               AssertNotNull ("msnopwd.RSA", pvk.RSA);
-               Assert ("msnopwd.Encrypted", !pvk.Encrypted);
-               Assert ("msnopwd.Weak", pvk.Weak);
-               AssertEquals ("msnopwd.KeyType", 2, pvk.KeyType);
+               Assert.IsNotNull (pvk.RSA, "msnopwd.RSA");
+               Assert.IsTrue (!pvk.Encrypted, "msnopwd.Encrypted");
+               Assert.IsTrue (pvk.Weak, "msnopwd.Weak");
+               Assert.AreEqual (2, pvk.KeyType, "msnopwd.KeyType");
        }
 
        // this will convert a PVK file without a password to a PVK file
@@ -168,11 +168,11 @@ public class PrivateKeyTest : Assertion {
                string rsa1 = pvk.RSA.ToXmlString (true);
                pvk.Save (testfile, "password");
                pvk = PrivateKey.CreateFromFile (testfile, "password");
-               AssertNotNull ("topwd.RSA", pvk.RSA);
+               Assert.IsNotNull (pvk.RSA, "topwd.RSA");
                string rsa2 = pvk.RSA.ToXmlString (true);
-               AssertEquals ("topwd.RSA identical", rsa1, rsa2);
-               Assert ("topwd.Encrypted", pvk.Encrypted);
-               Assert ("topwd.Weak", pvk.Weak);
+               Assert.AreEqual (rsa1, rsa2, "topwd.RSA identical");
+               Assert.IsTrue (pvk.Encrypted, "topwd.Encrypted");
+               Assert.IsTrue (pvk.Weak, "topwd.Weak");
        }
 
        // this will convert a PVK file without a password to a PVK file
@@ -186,11 +186,11 @@ public class PrivateKeyTest : Assertion {
                pvk.Weak = false; // we want strong crypto
                pvk.Save (testfile, "password");
                pvk = PrivateKey.CreateFromFile (testfile, "password");
-               AssertNotNull ("topwd.RSA", pvk.RSA);
+               Assert.IsNotNull (pvk.RSA, "topwd.RSA");
                string rsa2 = pvk.RSA.ToXmlString (true);
-               AssertEquals ("topwd.RSA identical", rsa1, rsa2);
-               Assert ("topwd.Encrypted", pvk.Encrypted);
-               Assert ("topwd.Weak", !pvk.Weak);
+               Assert.AreEqual (rsa1, rsa2, "topwd.RSA identical");
+               Assert.IsTrue (pvk.Encrypted, "topwd.Encrypted");
+               Assert.IsTrue (!pvk.Weak, "topwd.Weak");
        }
 
        static byte[] pwd = { 
@@ -229,9 +229,9 @@ public class PrivateKeyTest : Assertion {
        {
                WriteBuffer (pwd);
                PrivateKey pvk = PrivateKey.CreateFromFile (testfile, "password");
-               AssertNotNull ("mspwd.RSA", pvk.RSA);
-               Assert ("mspwd.Encrypted", pvk.Encrypted);
-               Assert ("mspwd.Weak", pvk.Weak);
+               Assert.IsNotNull (pvk.RSA, "mspwd.RSA");
+               Assert.IsTrue (pvk.Encrypted, "mspwd.Encrypted");
+               Assert.IsTrue (pvk.Weak, "mspwd.Weak");
        }
 
        // this will convert a PVK file with a password to a PVK file
@@ -244,11 +244,11 @@ public class PrivateKeyTest : Assertion {
                string rsa1 = pvk.RSA.ToXmlString (true);
                pvk.Save (testfile);
                pvk = PrivateKey.CreateFromFile (testfile);
-               AssertNotNull ("nomorepwd.RSA", pvk.RSA);
+               Assert.IsNotNull (pvk.RSA, "nomorepwd.RSA");
                string rsa2 = pvk.RSA.ToXmlString (true);
-               AssertEquals ("nomorepwd.RSA identical", rsa1, rsa2);
-               Assert ("nomorepwd.Encrypted", !pvk.Encrypted);
-               Assert ("nomorepwd.Weak", pvk.Weak);
+               Assert.AreEqual (rsa1, rsa2, "nomorepwd.RSA identical");
+               Assert.IsTrue (!pvk.Encrypted, "nomorepwd.Encrypted");
+               Assert.IsTrue (pvk.Weak, "nomorepwd.Weak");
        }
        
        [Test]
@@ -261,11 +261,11 @@ public class PrivateKeyTest : Assertion {
                pvk.Save (testfile, "mono");
 
                pvk = PrivateKey.CreateFromFile (testfile, "mono");
-               AssertNotNull ("new.RSA", pvk.RSA);
+               Assert.IsNotNull (pvk.RSA, "new.RSA");
                string rsa2 = pvk.RSA.ToXmlString (true);
-               AssertEquals ("new.RSA identical", rsa1, rsa2);
-               Assert ("new.Encrypted", pvk.Encrypted);
-               Assert ("new.Weak", !pvk.Weak);
+               Assert.AreEqual (rsa1, rsa2, "new.RSA identical");
+               Assert.IsTrue (pvk.Encrypted, "new.Encrypted");
+               Assert.IsTrue (!pvk.Weak, "new.Weak");
        }
 
        [Test]
index 38ecbc3b2358952724e7b843200a136b3b013d91..a527208839abf2a3d9e02bda5c63e177d6fac637 100644 (file)
@@ -15,7 +15,7 @@ using Mono.Security.Cryptography;
 namespace MonoTests.Mono.Security.Cryptography {
 
        [TestFixture]
-       public class CryptoConvertTest : Assertion {
+       public class CryptoConvertTest {
 
                // because most crypto stuff works with byte[] buffers
                static public void AssertEquals (string msg, byte[] array1, byte[] array2) 
@@ -23,9 +23,9 @@ namespace MonoTests.Mono.Security.Cryptography {
                        if ((array1 == null) && (array2 == null))
                                return;
                        if (array1 == null)
-                               Fail (msg + " -> First array is NULL");
+                               Assert.Fail (msg + " -> First array is NULL");
                        if (array2 == null)
-                               Fail (msg + " -> Second array is NULL");
+                               Assert.Fail (msg + " -> Second array is NULL");
                
                        bool a = (array1.Length == array2.Length);
                        if (a) {
@@ -38,7 +38,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                        }
                        msg += " -> Expected " + BitConverter.ToString (array1, 0);
                        msg += " is different than " + BitConverter.ToString (array2, 0);
-                       Assert (msg, a);
+                       Assert.IsTrue (a, msg);
                }
 
                // strongname generated using "sn -k unit.snk"
@@ -163,16 +163,16 @@ namespace MonoTests.Mono.Security.Cryptography {
                {
                        // keypair
                        RSA rsa = CryptoConvert.FromCapiKeyBlob (strongName, 0);
-                       AssertEquals ("KeyPair", strongNameString, rsa.ToXmlString (true));
-                       AssertEquals ("PublicKey-1", strongNamePublicKeyString, rsa.ToXmlString (false));
+                       Assert.AreEqual (strongNameString, rsa.ToXmlString (true), "KeyPair");
+                       Assert.AreEqual (strongNamePublicKeyString, rsa.ToXmlString (false), "PublicKey-1");
 
                        // public key (direct)
                        rsa = CryptoConvert.FromCapiKeyBlob (strongNamePublicKey, 12);
-                       AssertEquals ("PublicKey-2", strongNamePublicKeyString, rsa.ToXmlString (false));
+                       Assert.AreEqual (strongNamePublicKeyString, rsa.ToXmlString (false), "PublicKey-2");
 
                        // public key (indirect - inside header)
                        rsa = CryptoConvert.FromCapiKeyBlob (strongNamePublicKey, 0);
-                       AssertEquals ("PublicKey-3", strongNamePublicKeyString, rsa.ToXmlString (false));
+                       Assert.AreEqual (strongNamePublicKeyString, rsa.ToXmlString (false), "PublicKey-3");
                }
 
                [Test]
@@ -201,7 +201,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void FromCapiPrivateKeyBlob () 
                {
                        RSA rsa = CryptoConvert.FromCapiPrivateKeyBlob (strongName, 0);
-                       AssertEquals ("KeyPair", strongNameString, rsa.ToXmlString (true));
+                       Assert.AreEqual (strongNameString, rsa.ToXmlString (true), "KeyPair");
                }
 
                [Test]
@@ -229,7 +229,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void FromCapiPublicKeyBlob () 
                {
                        RSA rsa = CryptoConvert.FromCapiPublicKeyBlob (strongNamePublicKey, 12);
-                       AssertEquals ("PublicKey", strongNamePublicKeyString, rsa.ToXmlString (false));
+                       Assert.AreEqual (strongNamePublicKeyString, rsa.ToXmlString (false), "PublicKey");
                }
 
                [Test]
@@ -262,12 +262,12 @@ namespace MonoTests.Mono.Security.Cryptography {
                        AssertEquals ("RSA-KeyPair", strongName, keypair);
 
                        byte[] publicKey = CryptoConvert.ToCapiKeyBlob (rsa, false);
-                       AssertEquals ("RSA-PublicKey", BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey));
+                       Assert.AreEqual (BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey), "RSA-PublicKey");
                        
                        AsymmetricAlgorithm dsa = DSA.Create ();
                        dsa.FromXmlString (dsaKeyPairString);
                        AssertEquals ("DSA-KeyPair", dsaPrivBlob, CryptoConvert.ToCapiKeyBlob (dsa, true));
-                       AssertEquals ("DSA-PublicKey", BitConverter.ToString (dsaPubBlob), BitConverter.ToString (CryptoConvert.ToCapiKeyBlob (dsa, false)));
+                       Assert.AreEqual (BitConverter.ToString (dsaPubBlob), BitConverter.ToString (CryptoConvert.ToCapiKeyBlob (dsa, false)), "DSA-PublicKey");
                }
 
                [Test]
@@ -279,7 +279,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                        AssertEquals ("KeyPair", strongName, keypair);
 
                        byte[] publicKey = CryptoConvert.ToCapiKeyBlob (rsa, false);
-                       AssertEquals ("PublicKey", BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey));
+                       Assert.AreEqual (BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey), "PublicKey");
                }
 
                [Test]
@@ -323,11 +323,11 @@ namespace MonoTests.Mono.Security.Cryptography {
                        // full keypair
                        rsa.FromXmlString (strongNameString);
                        byte[] publicKey = CryptoConvert.ToCapiPublicKeyBlob (rsa);
-                       AssertEquals ("PublicKey-1", BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey));
+                       Assert.AreEqual (BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey), "PublicKey-1");
                        // public key only
                        rsa.FromXmlString (strongNamePublicKeyString);
                        publicKey = CryptoConvert.ToCapiPublicKeyBlob (rsa);
-                       AssertEquals ("PublicKey-2", BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey));
+                       Assert.AreEqual (BitConverter.ToString (strongNamePublicKey, 12), BitConverter.ToString (publicKey), "PublicKey-2");
                }
 
                /* DSA key tests */
@@ -419,8 +419,8 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void FromCapiKeyBlobDSA ()
                {
                        DSA dsa = CryptoConvert.FromCapiKeyBlobDSA (dsaPrivBlob);
-                       AssertEquals ("KeyPair", dsaKeyPairString, dsa.ToXmlString (true));
-                       AssertEquals ("PublicKey", dsaPubKeyString, dsa.ToXmlString (false));
+                       Assert.AreEqual (dsaKeyPairString, dsa.ToXmlString (true), "KeyPair");
+                       Assert.AreEqual (dsaPubKeyString, dsa.ToXmlString (false), "PublicKey");
                }
 
                [Test]
@@ -449,7 +449,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void FromCapiPrivateKeyBlobDSA ()
                {
                        DSA dsa = CryptoConvert.FromCapiPrivateKeyBlobDSA (dsaPrivBlob, 0);
-                       AssertEquals ("KeyPair", dsaKeyPairString, dsa.ToXmlString (true));
+                       Assert.AreEqual (dsaKeyPairString, dsa.ToXmlString (true), "KeyPair");
                }
 
                [Test]
@@ -478,7 +478,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void FromCapiPublicKeyBlobDSA ()
                {
                        DSA dsa = CryptoConvert.FromCapiPublicKeyBlobDSA (dsaPubBlob, 0);
-                       AssertEquals ("PublicKey", dsaPubKeyString, dsa.ToXmlString (false));
+                       Assert.AreEqual (dsaPubKeyString, dsa.ToXmlString (false), "PublicKey");
                }
 
                [Test]
@@ -512,7 +512,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                        AssertEquals ("KeyPair", dsaPrivBlob, keypair);
 
                        byte[] pubkey = CryptoConvert.ToCapiKeyBlob (dsa, false);
-                       AssertEquals ("PublicKey", BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey));
+                       Assert.AreEqual (BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey), "PublicKey");
                }
 
                [Test]
@@ -548,20 +548,20 @@ namespace MonoTests.Mono.Security.Cryptography {
                        // full keypair
                        dsa.FromXmlString (dsaKeyPairString);
                        byte[] pubkey = CryptoConvert.ToCapiPublicKeyBlob (dsa);
-                       AssertEquals ("PublicKey-1", BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey));
+                       Assert.AreEqual (BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey), "PublicKey-1");
 
                        // public key only
                        dsa.FromXmlString (dsaPubKeyString);
                        pubkey = CryptoConvert.ToCapiPublicKeyBlob (dsa);
-                       AssertEquals ("PublicKey-2", BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey));
+                       Assert.AreEqual (BitConverter.ToString (dsaPubBlob), BitConverter.ToString (pubkey), "PublicKey-2");
                }
 
                [Test]
                public void FromHex () 
                {
-                       AssertNull ("FromHex(null)", CryptoConvert.FromHex (null));
+                       Assert.IsNull (CryptoConvert.FromHex (null), "FromHex(null)");
                        string result = BitConverter.ToString (CryptoConvert.FromHex ("0123456789aBcDeF"));
-                       AssertEquals ("0123456789abcdef", "01-23-45-67-89-AB-CD-EF", result);
+                       Assert.AreEqual ("01-23-45-67-89-AB-CD-EF", result, "0123456789abcdef");
                }
 
                [Test]
@@ -581,9 +581,9 @@ namespace MonoTests.Mono.Security.Cryptography {
                [Test]
                public void ToHex () 
                {
-                       AssertNull ("FromHex(null)", CryptoConvert.FromHex (null));
+                       Assert.IsNull (CryptoConvert.FromHex (null), "FromHex(null)");
                        byte[] data = { 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef };
-                       AssertEquals ("0123456789abcdef", "0123456789ABCDEF", CryptoConvert.ToHex (data));
+                       Assert.AreEqual ("0123456789ABCDEF", CryptoConvert.ToHex (data), "0123456789abcdef");
                }
                
                [Test]
@@ -595,8 +595,8 @@ namespace MonoTests.Mono.Security.Cryptography {
                        RSA rsa = CryptoConvert.FromCapiKeyBlob (strongNameNUnit, 0);
                        // note the bad D parameters !!!
                        // this only works because CRT is being used
-                       AssertEquals ("KeyPair", "<RSAKeyValue><Modulus>rB8h0TaMs8fWA+5WMdcjOjejCZwhYwuFHUZPS0cC9TOG6FJtvlHPpZLQAg0xfLr2SivPRol1Xw9SqhuaYQNJA7sAaOb8Rvgmx93XbmcNotY9ob4TGaesk+M8VsdexsIJ3WlyLbmRlf0EjT52nboyauEL3UC85zkMjW1LNb8LSs8=</Modulus><Exponent>AQAB</Exponent><P>2d4pGForvc792ztFxhNuzxIihDnXp+qK9F8t/NduhRBdu+JXK4d8a9EGwzpMxLUPlHjCZfXRraZiSQszkH+nzQ==</P><Q>yj9BeGmOrucOUCNZYTtXI0ykzz+1g+cVMSxi+6xzoLEOqmdE4gjcWaxak4MF1+pIR6UycnNa/jg1LBl7MKxpCw==</Q><DP>cMkAjznG4Sjx4/dIRKU0vP/PXJIxIR1bN+y5+uVvsnTpgWVH6SHneE0qahCZQ0/UM/Fb+bqLBJFY2iVxWUGslQ==</DP><DQ>gz6TXPGbLzMv3Z9i5C8e+ABHv1pHj6ZI4VU9kraxfmkH7FsBn3FClUq8qJdRFnGpoBy65Pyo4upUzx5mDAsGSw==</DQ><InverseQ>x+UShV+0d9cicoiB9fkSLqpLDyF4dYzVu0uqX0eCcoGJpk19jtSaMI3Eo8VN6MJAW1zrRy+MA1Fqb9qeThLqZQ==</InverseQ><D>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</D></RSAKeyValue>", rsa.ToXmlString (true));
-                       AssertEquals ("PublicKey", "<RSAKeyValue><Modulus>rB8h0TaMs8fWA+5WMdcjOjejCZwhYwuFHUZPS0cC9TOG6FJtvlHPpZLQAg0xfLr2SivPRol1Xw9SqhuaYQNJA7sAaOb8Rvgmx93XbmcNotY9ob4TGaesk+M8VsdexsIJ3WlyLbmRlf0EjT52nboyauEL3UC85zkMjW1LNb8LSs8=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>", rsa.ToXmlString (false));
+                       Assert.AreEqual ("<RSAKeyValue><Modulus>rB8h0TaMs8fWA+5WMdcjOjejCZwhYwuFHUZPS0cC9TOG6FJtvlHPpZLQAg0xfLr2SivPRol1Xw9SqhuaYQNJA7sAaOb8Rvgmx93XbmcNotY9ob4TGaesk+M8VsdexsIJ3WlyLbmRlf0EjT52nboyauEL3UC85zkMjW1LNb8LSs8=</Modulus><Exponent>AQAB</Exponent><P>2d4pGForvc792ztFxhNuzxIihDnXp+qK9F8t/NduhRBdu+JXK4d8a9EGwzpMxLUPlHjCZfXRraZiSQszkH+nzQ==</P><Q>yj9BeGmOrucOUCNZYTtXI0ykzz+1g+cVMSxi+6xzoLEOqmdE4gjcWaxak4MF1+pIR6UycnNa/jg1LBl7MKxpCw==</Q><DP>cMkAjznG4Sjx4/dIRKU0vP/PXJIxIR1bN+y5+uVvsnTpgWVH6SHneE0qahCZQ0/UM/Fb+bqLBJFY2iVxWUGslQ==</DP><DQ>gz6TXPGbLzMv3Z9i5C8e+ABHv1pHj6ZI4VU9kraxfmkH7FsBn3FClUq8qJdRFnGpoBy65Pyo4upUzx5mDAsGSw==</DQ><InverseQ>x+UShV+0d9cicoiB9fkSLqpLDyF4dYzVu0uqX0eCcoGJpk19jtSaMI3Eo8VN6MJAW1zrRy+MA1Fqb9qeThLqZQ==</InverseQ><D>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</D></RSAKeyValue>", rsa.ToXmlString (true), "KeyPair");
+                       Assert.AreEqual ("<RSAKeyValue><Modulus>rB8h0TaMs8fWA+5WMdcjOjejCZwhYwuFHUZPS0cC9TOG6FJtvlHPpZLQAg0xfLr2SivPRol1Xw9SqhuaYQNJA7sAaOb8Rvgmx93XbmcNotY9ob4TGaesk+M8VsdexsIJ3WlyLbmRlf0EjT52nboyauEL3UC85zkMjW1LNb8LSs8=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>", rsa.ToXmlString (false), "PublicKey");
                }
        }
 }
index 2a38eb819dc21dca2764a0f76d80c7ff007a84a0..a0d3caf1f7d2aa4f6b1c4f866b36fe06a6200ca0 100644 (file)
@@ -24,7 +24,7 @@ namespace MonoTests.Mono.Security.Cryptography {
        //      http://www.ietf.org/rfc/rfc2631.txt
 
        [TestFixture]
-       public class DiffieHellmanManagedTest : Assertion {
+       public class DiffieHellmanManagedTest {
 
                // because most crypto stuff works with byte[] buffers
                static public void AssertEquals (string msg, byte[] array1, byte[] array2) 
@@ -32,9 +32,9 @@ namespace MonoTests.Mono.Security.Cryptography {
                        if ((array1 == null) && (array2 == null))
                                return;
                        if (array1 == null)
-                               Assertion.Fail (msg + " -> First array is NULL");
+                               Assert.Fail (msg + " -> First array is NULL");
                        if (array2 == null)
-                               Assertion.Fail (msg + " -> Second array is NULL");
+                               Assert.Fail (msg + " -> Second array is NULL");
 
                        bool a = (array1.Length == array2.Length);
                        if (a) {
@@ -49,7 +49,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                                msg += " -> Expected " + BitConverter.ToString (array1, 0);
                                msg += " is different than " + BitConverter.ToString (array2, 0);
                        }
-                       Assertion.Assert (msg, a);
+                       Assert.IsTrue (a, msg);
                }
 
                [Test]
@@ -70,7 +70,7 @@ namespace MonoTests.Mono.Security.Cryptography {
                        // let the second DH instance compute the shared secret using the first DH public key
                        byte[] dh2k = dh2.DecryptKeyExchange (ke1);
                        // both shared secrets are the same
-                       AssertEquals ("Shared Secret", dh1k, dh2k);
+                       Assert.AreEqual (dh1k, dh2k, "Shared Secret");
                }
 
                // TODO: More is needed !
index 42f7584e1c9683712c3a668fd4aabad1dfc6041c..8ec9779b2db08e6ed676fa9033f4b8775b2a9cbe 100644 (file)
@@ -19,7 +19,7 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Cryptography {
 
        [TestFixture]
-       public class PKCS8Test : Assertion {
+       public class PKCS8Test {
 
                static public byte[] pkcs8_der = { 0x30, 0x82, 0x02, 0xB2, 0x30, 0x1C, 0x06, 0x0A, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x0C, 0x01, 0x03, 0x30, 0x0E, 0x04, 0x08, 0x86, 0x2A, 0xA9, 0x71, 0x6D, 0xA4, 0xB8, 0x2D, 0x02, 0x02, 0x07, 0xD0, 0x04, 0x82, 0x02, 0x90, 0x90, 0x14, 0xB5, 0xF0, 0xB6, 0x86, 0x56, 0xCB, 0xFA, 0x63, 0xAD, 0x9F, 0x5A, 0x59, 0x6C, 0xAD, 0x00, 0x3C, 0x37, 0x8A, 0xC3, 0x88, 0x58, 0x8B, 0xD7, 0x48, 0x53, 0x7A, 0xC8, 0x5B, 0x0D, 0x98, 0xDD, 0x8B, 0xB3, 0xEC, 0x4C, 0xAC, 0x61, 0x18, 0xE3, 0x5E, 0x47, 0xAD, 0xC7, 0x92, 0xBC, 0xD3, 0x00, 0x07, 0xFF, 0x1A, 0x68, 0x74, 0x45, 0x8E, 0xD8, 0x7C, 0x9F, 0x18, 0x7B, 0xD7, 0xC8, 
                        0x47, 0xBA, 0x6B, 0x19, 0xF2, 0xBF, 0x7E, 0x51, 0x0B, 0x4B, 0x43, 0xE8, 0xB9, 0x56, 0x7E, 0xD0, 0x74, 0xC7, 0xDE, 0x76, 0xDB, 0xFF, 0x5C, 0x6B, 0x53, 0xBE, 0x31, 0x06, 0xAE, 0x6C, 0x8F, 0xDC, 0x49, 0x04, 0x71, 0x74, 0xEE, 0xB8, 0x06, 0xCB, 0xAD, 0x86, 0xB4, 0x4E, 0xB9, 0x46, 0xA1, 0x03, 0x5E, 0x0E, 0xA7, 0xC7, 0x37, 0x6B, 0xB0, 0x8D, 0x2D, 0x81, 0x1F, 0xE3, 0xC2, 0x05, 0xDE, 0xEF, 0x51, 0x07, 0x70, 0x6E, 0x35, 0x9A, 0xAD, 0x19, 0x5E, 0xAF, 0xEB, 0x7F, 0xEF, 0xE4, 0xAB, 0x07, 0xF3, 0xF6, 0xEA, 0xFA, 0x0E, 0x83, 0x65, 0x06, 0x3C, 0xF3, 0xBD, 0x96, 0x08, 0x14, 0xC5, 0x34, 0x26, 0xED, 0xC0, 0x10, 
@@ -32,13 +32,13 @@ namespace MonoTests.Mono.Security.Cryptography {
                [Test]
                public void EncryptedPrivateKey_Farscape () 
                {
-                       AssertEquals ("PKCS8.GetType", PKCS8.KeyInfo.EncryptedPrivateKey, PKCS8.GetType (pkcs8_der));
+                       Assert.AreEqual (PKCS8.KeyInfo.EncryptedPrivateKey, PKCS8.GetType (pkcs8_der), "PKCS8.GetType");
                        PKCS8.EncryptedPrivateKeyInfo p8 = new PKCS8.EncryptedPrivateKeyInfo (pkcs8_der);
-                       AssertEquals ("Algorithm", "1.2.840.113549.1.12.1.3", p8.Algorithm);
-                       AssertEquals ("EncryptedData", "90-14-B5-F0-B6-86-56-CB-FA-63-AD-9F-5A-59-6C-AD-00-3C-37-8A-C3-88-58-8B-D7-48-53-7A-C8-5B-0D-98-DD-8B-B3-EC-4C-AC-61-18-E3-5E-47-AD-C7-92-BC-D3-00-07-FF-1A-68-74-45-8E-D8-7C-9F-18-7B-D7-C8-47-BA-6B-19-F2-BF-7E-51-0B-4B-43-E8-B9-56-7E-D0-74-C7-DE-76-DB-FF-5C-6B-53-BE-31-06-AE-6C-8F-DC-49-04-71-74-EE-B8-06-CB-AD-86-B4-4E-B9-46-A1-03-5E-0E-A7-C7-37-6B-B0-8D-2D-81-1F-E3-C2-05-DE-EF-51-07-70-6E-35-9A-AD-19-5E-AF-EB-7F-EF-E4-AB-07-F3-F6-EA-FA-0E-83-65-06-3C-F3-BD-96-08-14-C5-34-26-ED-C0-10-CC-AE-2D-8F-BE-ED-98-0D-88-1B-1E-C7-37-F0-FC-DB-3C-E3-1B-66-52-45-6E-05-A6-D9-12-23-05-5F-E3-9F-7D-21-9B-2E-3E-9E-3C-EE-D1-9B-55-DE-57-60-A5-24-2D-C7-94-EC-FC-B1-6A-65-BD-85-02-5C-58-AA-5A-6A-F3-AC-6B-DD-0E-63-B2-4B-5B-67-3D-C3-BF-E4-C8-EF-3F-89-5A-CD-6D-EF-05-22-2B-72-FF-80-7A-DD-F1-59-A7-6F-00-B1-BD-4D-88-D6-E4-8A-DD-A9-FC-D9-01-0A-65-8E-52-F9-7E-20-72-67-0D-5B-EE-67-5B-46-4A-15-A2-6F-15-2B-5B-9A-93-12-4F-F4-AD-49-D0-11-F1-7E-40-DE-32-96-2E-B3-E8-71-60-27-6E-A2-71-83-C7-FE-0E-8B-31-06-64-E1-19-02-B9-44-25-0C-94-64-7E-5F-89-4D-7E-99-0B-91-B8-22-A5-33-92-D3-49-07-1D-C6-25-4A-D7-6D-E2-94-3F-FA-10-72-59-62-F5-C6-D4-3A-EE-8F-BC-9C-BC-FC-C7-37-BF-7C-A0-67-B0-FF-0F-29-A0-A2-71-6B-21-00-F4-54-D9-3D-1B-CE-F4-FE-6F-F5-21-CB-47-58-17-F6-45-2F-A0-3B-8B-D9-B8-8A-33-3F-16-E0-C7-8A-B8-11-2F-A8-7E-7D-A7-7B-65-27-89-3C-67-4D-D5-70-28-76-60-96-68-BF-FB-CD-49-E0-8A-7C-6F-76-06-48-6D-63-67-8A-47-82-5E-7F-0E-AC-46-B6-BC-0A-6D-E2-1A-3A-20-A5-C7-81-71-6E-2B-16-97-D4-FA-C0-DD-72-5B-9F-A3-43-F4-85-B1-C6-A8-E0-62-81-5D-A5-07-29-6A-6A-2D-E1-1D-BE-12-6D-42-58-6F-4E-30-3D-BF-32-11-38-BC-36-76-60-FC-57-2F-D3-9E-C4-1A-92-EA-DE-85-FD-E7-AA-30-A6-97-2C-36-3B-3B-0E-92-52-FF-42-D7-62-6C-C1-3A-E7-1B-4E-13-8C-95-B3-4B-A7-9E-42-75-A8-CA-63-76-C4-45-74-96-43-D8-86-82-BE-37-FF-9B-EB-B7-18-A1-2F-E3-6C-08-E8-11-96-8C-5E-9E-2B-E7-DB-7D-54-E1-DB-1E-D3-8F-B5-19-4B-B2-16-DB-CF-EC-88-0B-6C-3C-E4-F2-C4-FF-4D-3E-53-52-3A-81-0B-6E-AC-95-EA-5A-6E-4D-83-23-82-C9-90-02-74-10-2A-6C-FB-97-4F-5F-70-8E-F0-B9"
-                               BitConverter.ToString (p8.EncryptedData));
-                       AssertEquals ("Salt", "86-2A-A9-71-6D-A4-B8-2D", BitConverter.ToString (p8.Salt));
-                       AssertEquals ("IterationCount", 2000, p8.IterationCount);
+                       Assert.AreEqual ("1.2.840.113549.1.12.1.3", p8.Algorithm, "Algorithm");
+                       Assert.AreEqual ("90-14-B5-F0-B6-86-56-CB-FA-63-AD-9F-5A-59-6C-AD-00-3C-37-8A-C3-88-58-8B-D7-48-53-7A-C8-5B-0D-98-DD-8B-B3-EC-4C-AC-61-18-E3-5E-47-AD-C7-92-BC-D3-00-07-FF-1A-68-74-45-8E-D8-7C-9F-18-7B-D7-C8-47-BA-6B-19-F2-BF-7E-51-0B-4B-43-E8-B9-56-7E-D0-74-C7-DE-76-DB-FF-5C-6B-53-BE-31-06-AE-6C-8F-DC-49-04-71-74-EE-B8-06-CB-AD-86-B4-4E-B9-46-A1-03-5E-0E-A7-C7-37-6B-B0-8D-2D-81-1F-E3-C2-05-DE-EF-51-07-70-6E-35-9A-AD-19-5E-AF-EB-7F-EF-E4-AB-07-F3-F6-EA-FA-0E-83-65-06-3C-F3-BD-96-08-14-C5-34-26-ED-C0-10-CC-AE-2D-8F-BE-ED-98-0D-88-1B-1E-C7-37-F0-FC-DB-3C-E3-1B-66-52-45-6E-05-A6-D9-12-23-05-5F-E3-9F-7D-21-9B-2E-3E-9E-3C-EE-D1-9B-55-DE-57-60-A5-24-2D-C7-94-EC-FC-B1-6A-65-BD-85-02-5C-58-AA-5A-6A-F3-AC-6B-DD-0E-63-B2-4B-5B-67-3D-C3-BF-E4-C8-EF-3F-89-5A-CD-6D-EF-05-22-2B-72-FF-80-7A-DD-F1-59-A7-6F-00-B1-BD-4D-88-D6-E4-8A-DD-A9-FC-D9-01-0A-65-8E-52-F9-7E-20-72-67-0D-5B-EE-67-5B-46-4A-15-A2-6F-15-2B-5B-9A-93-12-4F-F4-AD-49-D0-11-F1-7E-40-DE-32-96-2E-B3-E8-71-60-27-6E-A2-71-83-C7-FE-0E-8B-31-06-64-E1-19-02-B9-44-25-0C-94-64-7E-5F-89-4D-7E-99-0B-91-B8-22-A5-33-92-D3-49-07-1D-C6-25-4A-D7-6D-E2-94-3F-FA-10-72-59-62-F5-C6-D4-3A-EE-8F-BC-9C-BC-FC-C7-37-BF-7C-A0-67-B0-FF-0F-29-A0-A2-71-6B-21-00-F4-54-D9-3D-1B-CE-F4-FE-6F-F5-21-CB-47-58-17-F6-45-2F-A0-3B-8B-D9-B8-8A-33-3F-16-E0-C7-8A-B8-11-2F-A8-7E-7D-A7-7B-65-27-89-3C-67-4D-D5-70-28-76-60-96-68-BF-FB-CD-49-E0-8A-7C-6F-76-06-48-6D-63-67-8A-47-82-5E-7F-0E-AC-46-B6-BC-0A-6D-E2-1A-3A-20-A5-C7-81-71-6E-2B-16-97-D4-FA-C0-DD-72-5B-9F-A3-43-F4-85-B1-C6-A8-E0-62-81-5D-A5-07-29-6A-6A-2D-E1-1D-BE-12-6D-42-58-6F-4E-30-3D-BF-32-11-38-BC-36-76-60-FC-57-2F-D3-9E-C4-1A-92-EA-DE-85-FD-E7-AA-30-A6-97-2C-36-3B-3B-0E-92-52-FF-42-D7-62-6C-C1-3A-E7-1B-4E-13-8C-95-B3-4B-A7-9E-42-75-A8-CA-63-76-C4-45-74-96-43-D8-86-82-BE-37-FF-9B-EB-B7-18-A1-2F-E3-6C-08-E8-11-96-8C-5E-9E-2B-E7-DB-7D-54-E1-DB-1E-D3-8F-B5-19-4B-B2-16-DB-CF-EC-88-0B-6C-3C-E4-F2-C4-FF-4D-3E-53-52-3A-81-0B-6E-AC-95-EA-5A-6E-4D-83-23-82-C9-90-02-74-10-2A-6C-FB-97-4F-5F-70-8E-F0-B9", BitConverter.ToString (p8.EncryptedData)
+                               "EncryptedData");
+                       Assert.AreEqual ("86-2A-A9-71-6D-A4-B8-2D", BitConverter.ToString (p8.Salt), "Salt");
+                       Assert.AreEqual (2000, p8.IterationCount, "IterationCount");
                }
 
                static public byte[] End_Certificate_CP_01_01_crtx = { 0x30, 0x82, 0x02, 0x78, 0x02, 0x01, 0x00, 0x30, 0x0D, 0x06, 0x09, 0x2A, 0x86, 0x48, 0x86, 0xF7, 0x0D, 0x01, 0x01, 0x01, 0x05, 0x00, 0x04, 0x82, 0x02, 0x62, 0x30, 0x82, 0x02, 0x5E, 0x02, 0x01, 0x00, 0x02, 0x81, 0x81, 0x00, 0xC6, 0x34, 0xEC, 0x6F, 0x0C, 0xE0, 0x59, 0x0E, 0xBC, 0x5F, 0xBA, 0x2E, 0x93, 0xBB, 0x04, 0xA7, 0x03, 0xB9, 0x70, 0x8A, 0xB9, 0xD7, 0xE5, 0xD7, 0xE6, 0xCA, 0x4A, 0x8C, 0x23, 0xD8, 0x60, 0xB3, 0x6B, 0xCB, 0x88, 0x88, 0xC7, 0xD8, 0x48, 0x7E, 0x64, 0xF9, 0xF6, 0x1B, 0xE3, 0x79, 0x46, 0x41, 0xE4, 0x61, 0xF7, 0x25, 0x47, 0x71, 0xF3, 0x50, 0x94, 0x4E, 0xF2, 0x7C, 0x6A, 0x37, 0xB6, 0x0C, 
@@ -68,25 +68,25 @@ namespace MonoTests.Mono.Security.Cryptography {
                [Test]
                public void PrivateKeyInfo_End_Certificate_CP_01_01 () 
                {
-                       AssertEquals ("PKCS8.GetType", PKCS8.KeyInfo.PrivateKey, PKCS8.GetType (End_Certificate_CP_01_01_crtx));
+                       Assert.AreEqual (PKCS8.KeyInfo.PrivateKey, PKCS8.GetType (End_Certificate_CP_01_01_crtx), "PKCS8.GetType");
                        PKCS8.PrivateKeyInfo p8 = new PKCS8.PrivateKeyInfo (End_Certificate_CP_01_01_crtx);
-                       AssertEquals ("Algorithm", "1.2.840.113549.1.1.1", p8.Algorithm);
-                       AssertEquals ("Attributes", 0, p8.Attributes.Count);
-                       AssertEquals ("PrivateKey", BitConverter.ToString (End_Certificate_CP_01_01_pki), BitConverter.ToString (p8.PrivateKey));
-                       AssertEquals ("Version", 0, p8.Version);
+                       Assert.AreEqual ("1.2.840.113549.1.1.1", p8.Algorithm, "Algorithm");
+                       Assert.AreEqual (0, p8.Attributes.Count, "Attributes");
+                       Assert.AreEqual (BitConverter.ToString (End_Certificate_CP_01_01_pki), BitConverter.ToString (p8.PrivateKey), "PrivateKey");
+                       Assert.AreEqual (0, p8.Version, "Version");
                }
 
                [Test]
                public void PrivateKeyInfo_End_Certificate_CP_01_02 () 
                {
                        PKCS8.PrivateKeyInfo p8 = new PKCS8.PrivateKeyInfo (End_Certificate_CP_01_02_crtx);
-                       AssertEquals ("Algorithm", "1.2.840.113549.1.1.1", p8.Algorithm);
-                       AssertEquals ("Attributes", 0, p8.Attributes.Count);
-                       AssertEquals ("PrivateKey", "30-82-02-5B-02-01-00-02-81-81-00-D6-39-9E-21-93-E2-BA-35-7F-E5-F8-E8-87-0B-8A-5F-28-25-85-B7-E5-CC-DA-7F-D3-C7-09-2A-63-E9-AD-8F-D0-A8-EF-BA-CF-3C-FB-55-03-B9-83-29-4E-0E-89-84-FB-E2-62-16-1F-9D-87-40-16-6B-F8-F4-66-38-58-74-67-D4-B5-A1-3A-4B-6F-13-4B-08-37-3A-3A-64-0A-06-8E-A2-7B-14-88-B7-F8-CE-6A-D1-45-9B-39-93-67-BF-0A-AB-DB-37-9D-FA-CE-54-0F-37-82-09-8F-0D-33-E4-B8-6E-46-C1-CC-4F-80-5A-B4-BD-19-80-27-40-84-49-02-03-01-00-01-02-81-80-14-95-5A-AD-4D-41-56-B4-F7-42-08-85-87-1C-43-C2-5A-E0-28-16-00-5D-8B-8D-06-B3-34-1D-3F-96-5F-57-D7-2B-B4-45-15-CE-7D-33-B0-F4-ED-36-55-CA-AD-C9-FA-4D-C9-30-E8-FE-C0-D5-16-92-6F-4C-44-5A-1B-9D-7E-AE-B8-01-6D-38-9D-DC-93-68-AB-93-D6-C0-8A-8A-63-B4-D6-DA-21-C1-A0-28-8C-24-C4-27-E1-4B-30-D2-2D-87-62-F9-17-75-21-5E-E1-3C-E2-2D-92-03-C6-A1-8D-1D-E9-67-F4-CE-FF-AC-52-86-D2-F5-0F-EB-03-01-02-41-00-ED-6A-AE-A7-33-B0-B8-86-36-91-BA-E7-D2-DD-15-3A-97-A2-66-31-98-24-A6-0D-E7-09-E3-BD-36-79-91-F2-5E-23-AA-21-C9-71-43-24-10-FA-F0-E6-FC-E4-C6-1F-08-45-E8-91-74-13-69-63-A5-40-8F-38-44-2B-54-69-02-41-00-E6-FE-39-8B-6F-DB-44-CA-E7-72-D3-CA-09-5B-3D-B1-53-85-29-36-FC-F1-B9-D8-1F-64-02-D4-F7-F5-71-E5-9F-17-D7-F3-9F-5A-3A-A6-A3-62-46-F6-93-3D-D3-CD-18-F2-12-BD-68-02-AA-91-55-DA-64-26-D7-16-34-E1-02-40-60-3F-F4-C8-72-4B-3D-B3-A3-A1-D6-FD-2E-DE-54-41-E9-C1-7B-DE-B5-48-7E-4D-7A-91-E6-D3-09-A7-A5-84-75-A7-CD-CC-5E-C7-5D-29-DC-FC-6E-F7-A6-24-F5-31-15-80-89-F5-95-F2-5C-B2-7A-07-3F-48-D7-52-1D-A9-02-40-40-1B-FC-C2-9B-57-E2-DE-E1-9F-B7-F2-11-E8-B5-D5-9A-55-91-DB-C6-16-1C-BB-43-F3-10-EA-24-AB-85-61-F2-66-BE-B3-C9-DD-53-FB-DD-CA-AF-E1-4D-7A-52-67-50-EE-16-8F-64-E7-A0-89-57-A7-96-36-45-69-CF-61-02-40-3D-9E-E3-29-D6-BD-59-FF-A5-C3-AC-57-CB-74-FE-B0-C3-67-34-A8-40-EB-04-88-C3-C2-74-4F-69-77-13-48-8A-97-3C-C2-4B-CD-E8-E0-97-98-A2-3F-B6-E2-71-D3-65-9F-5A-C6-C8-AE-FE-BA-B1-ED-DA-08-8A-5B-7B-12", BitConverter.ToString (p8.PrivateKey));
-                       AssertEquals ("Version", 0, p8.Version);
+                       Assert.AreEqual ("1.2.840.113549.1.1.1", p8.Algorithm, "Algorithm");
+                       Assert.AreEqual (0, p8.Attributes.Count, "Attributes");
+                       Assert.AreEqual ("30-82-02-5B-02-01-00-02-81-81-00-D6-39-9E-21-93-E2-BA-35-7F-E5-F8-E8-87-0B-8A-5F-28-25-85-B7-E5-CC-DA-7F-D3-C7-09-2A-63-E9-AD-8F-D0-A8-EF-BA-CF-3C-FB-55-03-B9-83-29-4E-0E-89-84-FB-E2-62-16-1F-9D-87-40-16-6B-F8-F4-66-38-58-74-67-D4-B5-A1-3A-4B-6F-13-4B-08-37-3A-3A-64-0A-06-8E-A2-7B-14-88-B7-F8-CE-6A-D1-45-9B-39-93-67-BF-0A-AB-DB-37-9D-FA-CE-54-0F-37-82-09-8F-0D-33-E4-B8-6E-46-C1-CC-4F-80-5A-B4-BD-19-80-27-40-84-49-02-03-01-00-01-02-81-80-14-95-5A-AD-4D-41-56-B4-F7-42-08-85-87-1C-43-C2-5A-E0-28-16-00-5D-8B-8D-06-B3-34-1D-3F-96-5F-57-D7-2B-B4-45-15-CE-7D-33-B0-F4-ED-36-55-CA-AD-C9-FA-4D-C9-30-E8-FE-C0-D5-16-92-6F-4C-44-5A-1B-9D-7E-AE-B8-01-6D-38-9D-DC-93-68-AB-93-D6-C0-8A-8A-63-B4-D6-DA-21-C1-A0-28-8C-24-C4-27-E1-4B-30-D2-2D-87-62-F9-17-75-21-5E-E1-3C-E2-2D-92-03-C6-A1-8D-1D-E9-67-F4-CE-FF-AC-52-86-D2-F5-0F-EB-03-01-02-41-00-ED-6A-AE-A7-33-B0-B8-86-36-91-BA-E7-D2-DD-15-3A-97-A2-66-31-98-24-A6-0D-E7-09-E3-BD-36-79-91-F2-5E-23-AA-21-C9-71-43-24-10-FA-F0-E6-FC-E4-C6-1F-08-45-E8-91-74-13-69-63-A5-40-8F-38-44-2B-54-69-02-41-00-E6-FE-39-8B-6F-DB-44-CA-E7-72-D3-CA-09-5B-3D-B1-53-85-29-36-FC-F1-B9-D8-1F-64-02-D4-F7-F5-71-E5-9F-17-D7-F3-9F-5A-3A-A6-A3-62-46-F6-93-3D-D3-CD-18-F2-12-BD-68-02-AA-91-55-DA-64-26-D7-16-34-E1-02-40-60-3F-F4-C8-72-4B-3D-B3-A3-A1-D6-FD-2E-DE-54-41-E9-C1-7B-DE-B5-48-7E-4D-7A-91-E6-D3-09-A7-A5-84-75-A7-CD-CC-5E-C7-5D-29-DC-FC-6E-F7-A6-24-F5-31-15-80-89-F5-95-F2-5C-B2-7A-07-3F-48-D7-52-1D-A9-02-40-40-1B-FC-C2-9B-57-E2-DE-E1-9F-B7-F2-11-E8-B5-D5-9A-55-91-DB-C6-16-1C-BB-43-F3-10-EA-24-AB-85-61-F2-66-BE-B3-C9-DD-53-FB-DD-CA-AF-E1-4D-7A-52-67-50-EE-16-8F-64-E7-A0-89-57-A7-96-36-45-69-CF-61-02-40-3D-9E-E3-29-D6-BD-59-FF-A5-C3-AC-57-CB-74-FE-B0-C3-67-34-A8-40-EB-04-88-C3-C2-74-4F-69-77-13-48-8A-97-3C-C2-4B-CD-E8-E0-97-98-A2-3F-B6-E2-71-D3-65-9F-5A-C6-C8-AE-FE-BA-B1-ED-DA-08-8A-5B-7B-12", BitConverter.ToString (p8.PrivateKey), "PrivateKey");
+                       Assert.AreEqual (0, p8.Version, "Version");
                        // static
                        RSA rsa = PKCS8.PrivateKeyInfo.DecodeRSA (p8.PrivateKey);
-                       AssertEquals ("DecodeRSA", "<RSAKeyValue><Modulus>1jmeIZPiujV/5fjohwuKXyglhbflzNp/08cJKmPprY/QqO+6zzz7VQO5gylODomE++JiFh+dh0AWa/j0ZjhYdGfUtaE6S28TSwg3OjpkCgaOonsUiLf4zmrRRZs5k2e/CqvbN536zlQPN4IJjw0z5LhuRsHMT4BatL0ZgCdAhEk=</Modulus><Exponent>AQAB</Exponent><P>7WqupzOwuIY2kbrn0t0VOpeiZjGYJKYN5wnjvTZ5kfJeI6ohyXFDJBD68Ob85MYfCEXokXQTaWOlQI84RCtUaQ==</P><Q>5v45i2/bRMrnctPKCVs9sVOFKTb88bnYH2QC1Pf1ceWfF9fzn1o6pqNiRvaTPdPNGPISvWgCqpFV2mQm1xY04Q==</Q><DP>YD/0yHJLPbOjodb9Lt5UQenBe961SH5NepHm0wmnpYR1p83MXsddKdz8bvemJPUxFYCJ9ZXyXLJ6Bz9I11IdqQ==</DP><DQ>QBv8wptX4t7hn7fyEei11ZpVkdvGFhy7Q/MQ6iSrhWHyZr6zyd1T+93Kr+FNelJnUO4Wj2TnoIlXp5Y2RWnPYQ==</DQ><InverseQ>PZ7jKda9Wf+lw6xXy3T+sMNnNKhA6wSIw8J0T2l3E0iKlzzCS83o4JeYoj+24nHTZZ9axsiu/rqx7doIilt7Eg==</InverseQ><D>FJVarU1BVrT3QgiFhxxDwlrgKBYAXYuNBrM0HT+WX1fXK7RFFc59M7D07TZVyq3J+k3JMOj+wNUWkm9MRFobnX6uuAFtOJ3ck2irk9bAiopjtNbaIcGgKIwkxCfhSzDSLYdi+Rd1IV7hPOItkgPGoY0d6Wf0zv+sUobS9Q/rAwE=</D></RSAKeyValue>", rsa.ToXmlString (true));
+                       Assert.AreEqual ("<RSAKeyValue><Modulus>1jmeIZPiujV/5fjohwuKXyglhbflzNp/08cJKmPprY/QqO+6zzz7VQO5gylODomE++JiFh+dh0AWa/j0ZjhYdGfUtaE6S28TSwg3OjpkCgaOonsUiLf4zmrRRZs5k2e/CqvbN536zlQPN4IJjw0z5LhuRsHMT4BatL0ZgCdAhEk=</Modulus><Exponent>AQAB</Exponent><P>7WqupzOwuIY2kbrn0t0VOpeiZjGYJKYN5wnjvTZ5kfJeI6ohyXFDJBD68Ob85MYfCEXokXQTaWOlQI84RCtUaQ==</P><Q>5v45i2/bRMrnctPKCVs9sVOFKTb88bnYH2QC1Pf1ceWfF9fzn1o6pqNiRvaTPdPNGPISvWgCqpFV2mQm1xY04Q==</Q><DP>YD/0yHJLPbOjodb9Lt5UQenBe961SH5NepHm0wmnpYR1p83MXsddKdz8bvemJPUxFYCJ9ZXyXLJ6Bz9I11IdqQ==</DP><DQ>QBv8wptX4t7hn7fyEei11ZpVkdvGFhy7Q/MQ6iSrhWHyZr6zyd1T+93Kr+FNelJnUO4Wj2TnoIlXp5Y2RWnPYQ==</DQ><InverseQ>PZ7jKda9Wf+lw6xXy3T+sMNnNKhA6wSIw8J0T2l3E0iKlzzCS83o4JeYoj+24nHTZZ9axsiu/rqx7doIilt7Eg==</InverseQ><D>FJVarU1BVrT3QgiFhxxDwlrgKBYAXYuNBrM0HT+WX1fXK7RFFc59M7D07TZVyq3J+k3JMOj+wNUWkm9MRFobnX6uuAFtOJ3ck2irk9bAiopjtNbaIcGgKIwkxCfhSzDSLYdi+Rd1IV7hPOItkgPGoY0d6Wf0zv+sUobS9Q/rAwE=</D></RSAKeyValue>", rsa.ToXmlString (true), "DecodeRSA");
                }
 
                [Test]
@@ -109,31 +109,31 @@ namespace MonoTests.Mono.Security.Cryptography {
                public void PrivateKeyInfo () 
                {
                        PKCS8.PrivateKeyInfo p8 = new PKCS8.PrivateKeyInfo ();
-                       AssertNull ("Default-Algorithm", p8.Algorithm);
-                       AssertEquals ("Default-Attributes", 0, p8.Attributes.Count);
-                       AssertNull ("Default-PrivateKey", p8.PrivateKey);
-                       AssertEquals ("Default-Version", 0, p8.Version);
+                       Assert.IsNull (p8.Algorithm, "Default-Algorithm");
+                       Assert.AreEqual (0, p8.Attributes.Count, "Default-Attributes");
+                       Assert.IsNull (p8.PrivateKey, "Default-PrivateKey");
+                       Assert.AreEqual (0, p8.Version, "Default-Version");
                        
                        byte[] key = new byte [8];
                        p8.Algorithm = "1.2.3.4.5";
                        p8.Attributes.Add (new ASN1 (0x05)); // NULL
                        p8.PrivateKey = key;
                        p8.Version = 1;
-                       AssertEquals ("Algorithm", "1.2.3.4.5", p8.Algorithm);
-                       AssertEquals ("Attributes", 1, p8.Attributes.Count);
-                       AssertEquals ("PrivateKey", 8, p8.PrivateKey.Length);
-                       AssertEquals ("Version", 1, p8.Version);
+                       Assert.AreEqual ("1.2.3.4.5", p8.Algorithm, "Algorithm");
+                       Assert.AreEqual (1, p8.Attributes.Count, "Attributes");
+                       Assert.AreEqual (8, p8.PrivateKey.Length, "PrivateKey");
+                       Assert.AreEqual (1, p8.Version, "Version");
                        
                        key [0] = 1;
-                       AssertEquals ("PrivateKey not directly accessible", 0, p8.PrivateKey [0]);
+                       Assert.AreEqual (0, p8.PrivateKey [0], "PrivateKey not directly accessible");
                        
                        byte[] p8pki = p8.GetBytes ();
                        
                        PKCS8.PrivateKeyInfo decoded = new PKCS8.PrivateKeyInfo (p8pki);
-                       AssertEquals ("Decoded-Algorithm", "1.2.3.4.5", decoded.Algorithm);
-                       AssertEquals ("Decoded-Attributes", 1, decoded.Attributes.Count);
-                       AssertEquals ("Decoded-PrivateKey", 8, decoded.PrivateKey.Length);
-                       AssertEquals ("Decoded-Version", 1, decoded.Version);
+                       Assert.AreEqual ("1.2.3.4.5", decoded.Algorithm, "Decoded-Algorithm");
+                       Assert.AreEqual (1, decoded.Attributes.Count, "Decoded-Attributes");
+                       Assert.AreEqual (8, decoded.PrivateKey.Length, "Decoded-PrivateKey");
+                       Assert.AreEqual (1, decoded.Version, "Decoded-Version");
                }
                
                [Test]
index ba0f403e8a78b8a23117ec43c446fa1ec60b3240..ef27bd73630b3446ad88310a6591eb3ba0d5d741 100644 (file)
@@ -17,7 +17,7 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Protocol.Ntlm {
 
        [TestFixture]
-       public class ChallengeResponseTest : Assertion {
+       public class ChallengeResponseTest {
 
                [Test]
                // Example from http://www.innovation.ch/java/ntlm.html
@@ -25,8 +25,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] SrvNonce = Encoding.ASCII.GetBytes ("SrvNonce");
                        using (ChallengeResponse ntlm = new ChallengeResponse ("Beeblebrox", SrvNonce)) {
-                               AssertEquals ("NT", "E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (ntlm.NT));
-                               AssertEquals ("LM", "AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97", BitConverter.ToString (ntlm.LM));
+                               Assert.AreEqual ("E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (ntlm.NT), "NT");
+                               Assert.AreEqual ("AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97", BitConverter.ToString (ntlm.LM), "LM");
                        }
                }
 
@@ -36,8 +36,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] SrvNonce = new byte [8] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 };
                        using (ChallengeResponse ntlm = new ChallengeResponse ("WELCOME", SrvNonce)) {
-                               AssertEquals ("NT", "7A-CE-90-85-AB-CC-37-59-38-0B-1C-68-62-E3-98-C3-C0-EF-9C-FC-22-E8-A2-C2", BitConverter.ToString (ntlm.NT));
-                               AssertEquals ("LM", "CA-12-00-72-3C-41-D5-77-AB-18-C7-64-C6-DE-F3-4F-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM));
+                               Assert.AreEqual ("7A-CE-90-85-AB-CC-37-59-38-0B-1C-68-62-E3-98-C3-C0-EF-9C-FC-22-E8-A2-C2", BitConverter.ToString (ntlm.NT), "NT");
+                               Assert.AreEqual ("CA-12-00-72-3C-41-D5-77-AB-18-C7-64-C6-DE-F3-4F-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM), "LM");
                        }
                }
 
@@ -46,9 +46,9 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] SrvNonce = new byte [8] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 };
                        using (ChallengeResponse ntlm = new ChallengeResponse (null, SrvNonce)) {
-                               AssertEquals ("NT", "4A-FD-81-EC-01-87-E8-8D-97-77-8D-F7-93-C6-DA-D4-F0-3A-36-63-66-9D-20-1C", BitConverter.ToString (ntlm.NT));
+                               Assert.AreEqual ("4A-FD-81-EC-01-87-E8-8D-97-77-8D-F7-93-C6-DA-D4-F0-3A-36-63-66-9D-20-1C", BitConverter.ToString (ntlm.NT), "NT");
                                // note the last 8 bytes... they are the same as the previous unit test ;-)
-                               AssertEquals ("LM", "0A-39-2B-11-CF-05-2B-02-6D-65-CF-F5-68-BD-E4-15-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM));
+                               Assert.AreEqual ("0A-39-2B-11-CF-05-2B-02-6D-65-CF-F5-68-BD-E4-15-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM), "LM");
                        }
                }
 
@@ -58,8 +58,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                        byte[] SrvNonce = new byte [8] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07 };
                        using (ChallengeResponse ntlm = new ChallengeResponse (String.Empty, SrvNonce)) {
                                // same as the previous one as this is the same (null/empty) password expressed diffently
-                               AssertEquals ("NT", "4A-FD-81-EC-01-87-E8-8D-97-77-8D-F7-93-C6-DA-D4-F0-3A-36-63-66-9D-20-1C", BitConverter.ToString (ntlm.NT));
-                               AssertEquals ("LM", "0A-39-2B-11-CF-05-2B-02-6D-65-CF-F5-68-BD-E4-15-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM));
+                               Assert.AreEqual ("4A-FD-81-EC-01-87-E8-8D-97-77-8D-F7-93-C6-DA-D4-F0-3A-36-63-66-9D-20-1C", BitConverter.ToString (ntlm.NT), "NT");
+                               Assert.AreEqual ("0A-39-2B-11-CF-05-2B-02-6D-65-CF-F5-68-BD-E4-15-A6-1B-FA-06-71-EA-5F-C8", BitConverter.ToString (ntlm.LM), "LM");
                        }
                }
                
@@ -68,8 +68,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        ChallengeResponse ntlm = new ChallengeResponse ("Mono", new byte [8]);
                        // no out!
-                       AssertNull ("Password", ntlm.Password);
-                       AssertNull ("Challenge", ntlm.Challenge);
+                       Assert.IsNull (ntlm.Password, "Password");
+                       Assert.IsNull (ntlm.Challenge, "Challenge");
                }
                
                [Test] 
@@ -104,7 +104,7 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        ChallengeResponse ntlm = new ChallengeResponse ("Mono", new byte [8]);
                        ntlm.Dispose ();
-                       AssertNotNull ("NT", ntlm.NT);
+                       Assert.IsNotNull (ntlm.NT, "NT");
                }
 
                [Test] 
@@ -113,7 +113,7 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        ChallengeResponse ntlm = new ChallengeResponse ("Mono", new byte [8]);
                        ntlm.Dispose ();
-                       AssertNotNull ("LM", ntlm.LM);
+                       Assert.IsNotNull (ntlm.LM, "LM");
                }
        }
 }
index 7164640be9b3d900fa1ac0ef05005fa76a8d4e9b..a02816fadc7542c256c2a71d3d7dcac870eda17d 100644 (file)
@@ -15,7 +15,7 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Protocol.Ntlm {
 
        [TestFixture]
-       public class MessageBaseTest : Assertion {
+       public class MessageBaseTest {
        
                // 
        
@@ -42,4 +42,4 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                }
 
        }
-}
\ No newline at end of file
+}
index c6dc2394d9393ce12cdb6746a6589f34d02ca375..5bd097e1d489536dcf85eb6931663b6099fd49f3 100644 (file)
@@ -16,17 +16,17 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Protocol.Ntlm {
 
        [TestFixture]
-       public class Type1MessageTest : Assertion {
+       public class Type1MessageTest {
 
                [Test]
                // Example from http://www.innovation.ch/java/ntlm.html
                public void Encode1 () 
                {
                        Type1Message msg = new Type1Message ();
-                       AssertEquals ("Type", 1, msg.Type);
+                       Assert.AreEqual (1, msg.Type, "Type");
                        msg.Domain = "Ursa-Minor";
                        msg.Host = "LightCity";
-                       AssertEquals ("GetBytes", "4E-54-4C-4D-53-53-50-00-01-00-00-00-07-B2-00-00-0A-00-0A-00-29-00-00-00-09-00-09-00-20-00-00-00-4C-49-47-48-54-43-49-54-59-55-52-53-41-2D-4D-49-4E-4F-52", BitConverter.ToString (msg.GetBytes ()));
+                       Assert.AreEqual ("4E-54-4C-4D-53-53-50-00-01-00-00-00-07-B2-00-00-0A-00-0A-00-29-00-00-00-09-00-09-00-20-00-00-00-4C-49-47-48-54-43-49-54-59-55-52-53-41-2D-4D-49-4E-4F-52", BitConverter.ToString (msg.GetBytes ()), "GetBytes");
                }
 
                [Test]
@@ -35,10 +35,10 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] data = { 0x4e, 0x54, 0x4c, 0x4d, 0x53, 0x53, 0x50, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0xb2, 0x00, 0x00, 0x0a, 0x00, 0x0a, 0x00, 0x29, 0x00, 0x00, 0x00, 0x09, 0x00, 0x09, 0x00, 0x20, 0x00, 0x00, 0x00, 0x4c, 0x49, 0x47, 0x48, 0x54, 0x43, 0x49, 0x54, 0x59, 0x55, 0x52, 0x53, 0x41, 0x2d, 0x4d, 0x49, 0x4e, 0x4f, 0x52 };
                        Type1Message msg = new Type1Message (data);
-                       AssertEquals ("Domain", "URSA-MINOR", msg.Domain);
-                       AssertEquals ("Flags", (NtlmFlags)0xb203, msg.Flags);
-                       AssertEquals ("Host", "LIGHTCITY", msg.Host);
-                       AssertEquals ("Type", 1, msg.Type);
+                       Assert.AreEqual ("URSA-MINOR", msg.Domain, "Domain");
+                       Assert.AreEqual ((NtlmFlags)0xb203, msg.Flags, "Flags");
+                       Assert.AreEqual ("LIGHTCITY", msg.Host, "Host");
+                       Assert.AreEqual (1, msg.Type, "Type");
                }
 
                [Test]
@@ -47,10 +47,10 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] data = { 0x4e, 0x54, 0x4c, 0x4d, 0x53, 0x53, 0x50, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x32, 0x00, 0x00, 0x06, 0x00, 0x06, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x0b, 0x00, 0x20, 0x00, 0x00, 0x00, 0x57, 0x4f, 0x52, 0x4b, 0x53, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x44, 0x4f, 0x4d, 0x41, 0x49, 0x4e };
                        Type1Message msg = new Type1Message (data);
-                       AssertEquals ("Domain", "DOMAIN", msg.Domain);
-                       AssertEquals ("Flags", (NtlmFlags)0x3207, msg.Flags);
-                       AssertEquals ("Host", "WORKSTATION", msg.Host);
-                       AssertEquals ("Type", 1, msg.Type);
+                       Assert.AreEqual ("DOMAIN", msg.Domain, "Domain");
+                       Assert.AreEqual ((NtlmFlags)0x3207, msg.Flags, "Flags");
+                       Assert.AreEqual ("WORKSTATION", msg.Host, "Host");
+                       Assert.AreEqual (1, msg.Type, "Type");
                }
        }
 }
index bd1b38349a35d8eade0e4cd808ad1bdd56060188..6233e0fe7555d76f028e809f0295ea67864a6110 100644 (file)
@@ -17,7 +17,7 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Protocol.Ntlm {
 
        [TestFixture]
-       public class Type2MessageTest : Assertion {
+       public class Type2MessageTest {
 
                static byte[] nonce = { 0x53, 0x72, 0x76, 0x4e, 0x6f, 0x6e, 0x63, 0x65 };
 
@@ -26,9 +26,9 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                public void Encode1 () 
                {
                        Type2Message msg = new Type2Message ();
-                       AssertEquals ("Type", 2, msg.Type);
+                       Assert.AreEqual (2, msg.Type, "Type");
                        msg.Nonce = nonce;
-                       AssertEquals ("GetBytes", "4E-54-4C-4D-53-53-50-00-02-00-00-00-00-00-00-00-28-00-00-00-01-82-00-00-53-72-76-4E-6F-6E-63-65-00-00-00-00-00-00-00-00", BitConverter.ToString (msg.GetBytes ()));
+                       Assert.AreEqual ("4E-54-4C-4D-53-53-50-00-02-00-00-00-00-00-00-00-28-00-00-00-01-82-00-00-53-72-76-4E-6F-6E-63-65-00-00-00-00-00-00-00-00", BitConverter.ToString (msg.GetBytes ()), "GetBytes");
                }
 
                [Test]
@@ -37,9 +37,9 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] data = { 0x4e, 0x54, 0x4c, 0x4d, 0x53, 0x53, 0x50, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x01, 0x82, 0x00, 0x00, 0x53, 0x72, 0x76, 0x4e, 0x6f, 0x6e, 0x63, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 };
                        Type2Message msg = new Type2Message (data);
-                       AssertEquals ("Flags", (NtlmFlags)0x8201, msg.Flags);
-                       AssertEquals ("Nonce", BitConverter.ToString (nonce), BitConverter.ToString (msg.Nonce));
-                       AssertEquals ("Type", 2, msg.Type);
+                       Assert.AreEqual ((NtlmFlags)0x8201, msg.Flags, "Flags");
+                       Assert.AreEqual (BitConverter.ToString (nonce), BitConverter.ToString (msg.Nonce), "Nonce");
+                       Assert.AreEqual (2, msg.Type, "Type");
                }
 
                [Test]
@@ -48,9 +48,9 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                {
                        byte[] data = { 0x4e, 0x54, 0x4c, 0x4d, 0x53, 0x53, 0x50, 0x00, 0x02, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x0c, 0x00, 0x30, 0x00, 0x00, 0x00, 0x01, 0x02, 0x81, 0x00, 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x00, 0x62, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x44, 0x00, 0x4f, 0x00, 0x4d, 0x00, 0x41, 0x00, 0x49, 0x00, 0x4e, 0x00, 0x02, 0x00, 0x0c, 0x00, 0x44, 0x00, 0x4f, 0x00, 0x4d, 0x00, 0x41, 0x00, 0x49, 0x00, 0x4e, 0x00, 0x01, 0x00, 0x0c, 0x00, 0x53, 0x00, 0x45, 0x00, 0x52, 0x00, 0x56, 0x00, 0x45, 0x00, 0x52, 0x00, 0x04, 0x00, 0x14, 0x00, 0x64, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x61, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x2e, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x03, 0x00, 0x22, 0x00, 0x73, 0x00, 0x65, 0x00, 0x72, 0x00, 0x76, 0x00, 0x65, 0x00, 0x72, 0x00, 0x2e, 0x00, 0x64, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x61, 0x00, 0x69, 0x00, 0x6e, 0x00, 0x2e, 0x00, 0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00 };
                        Type2Message msg = new Type2Message (data);
-                       AssertEquals ("Flags", (NtlmFlags)0x00810201, msg.Flags);
-                       AssertEquals ("Nonce", "01-23-45-67-89-AB-CD-EF", BitConverter.ToString (msg.Nonce));
-                       AssertEquals ("Type", 2, msg.Type);
+                       Assert.AreEqual ((NtlmFlags)0x00810201, msg.Flags, "Flags");
+                       Assert.AreEqual ("01-23-45-67-89-AB-CD-EF", BitConverter.ToString (msg.Nonce), "Nonce");
+                       Assert.AreEqual (2, msg.Type, "Type");
                }
                
                [Test]
index febcb79755259ea869d3b4848d4cf458fab55bf8..e9343cc979f81b700f488fca84f1f487531308eb 100644 (file)
@@ -17,7 +17,7 @@ using NUnit.Framework;
 namespace MonoTests.Mono.Security.Protocol.Ntlm {
 
        [TestFixture]
-       public class Type3MessageTest : Assertion {
+       public class Type3MessageTest {
 
                static byte[] nonce = { 0x53, 0x72, 0x76, 0x4e, 0x6f, 0x6e, 0x63, 0x65 };
 
@@ -40,8 +40,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                        msg.Host = "HOST";
                        msg.Password = "WELCOME";
                        msg.Username = "username";
-                       AssertEquals ("Type", 3, msg.Type);
-                       AssertEquals ("GetBytes", "4E-54-4C-4D-53-53-50-00-03-00-00-00-18-00-18-00-64-00-00-00-18-00-18-00-7C-00-00-00-0C-00-0C-00-40-00-00-00-10-00-10-00-4C-00-00-00-08-00-08-00-5C-00-00-00-00-00-00-00-94-00-00-00-01-B2-00-00-44-00-4F-00-4D-00-41-00-49-00-4E-00-75-00-73-00-65-00-72-00-6E-00-61-00-6D-00-65-00-48-00-4F-00-53-00-54-00-CA-12-00-72-3C-41-D5-77-AB-18-C7-64-C6-DE-F3-4F-A6-1B-FA-06-71-EA-5F-C8-7A-CE-90-85-AB-CC-37-59-38-0B-1C-68-62-E3-98-C3-C0-EF-9C-FC-22-E8-A2-C2", BitConverter.ToString (msg.GetBytes ()));
+                       Assert.AreEqual (3, msg.Type, "Type");
+                       Assert.AreEqual ("4E-54-4C-4D-53-53-50-00-03-00-00-00-18-00-18-00-64-00-00-00-18-00-18-00-7C-00-00-00-0C-00-0C-00-40-00-00-00-10-00-10-00-4C-00-00-00-08-00-08-00-5C-00-00-00-00-00-00-00-94-00-00-00-01-B2-00-00-44-00-4F-00-4D-00-41-00-49-00-4E-00-75-00-73-00-65-00-72-00-6E-00-61-00-6D-00-65-00-48-00-4F-00-53-00-54-00-CA-12-00-72-3C-41-D5-77-AB-18-C7-64-C6-DE-F3-4F-A6-1B-FA-06-71-EA-5F-C8-7A-CE-90-85-AB-CC-37-59-38-0B-1C-68-62-E3-98-C3-C0-EF-9C-FC-22-E8-A2-C2", BitConverter.ToString (msg.GetBytes ()), "GetBytes");
                }
 
                [Test]
@@ -55,8 +55,8 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                        msg.Host = "LIGHTCITY";
                        msg.Password = "Beeblebrox";
                        msg.Username = "Zaphod";
-                       AssertEquals ("Type", 3, msg.Type);
-                       AssertEquals ("GetBytes", "4E-54-4C-4D-53-53-50-00-03-00-00-00-18-00-18-00-72-00-00-00-18-00-18-00-8A-00-00-00-14-00-14-00-40-00-00-00-0C-00-0C-00-54-00-00-00-12-00-12-00-60-00-00-00-00-00-00-00-A2-00-00-00-01-B2-00-00-55-00-52-00-53-00-41-00-2D-00-4D-00-49-00-4E-00-4F-00-52-00-5A-00-61-00-70-00-68-00-6F-00-64-00-4C-00-49-00-47-00-48-00-54-00-43-00-49-00-54-00-59-00-AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97-E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (msg.GetBytes ()));
+                       Assert.AreEqual (3, msg.Type, "Type");
+                       Assert.AreEqual ("4E-54-4C-4D-53-53-50-00-03-00-00-00-18-00-18-00-72-00-00-00-18-00-18-00-8A-00-00-00-14-00-14-00-40-00-00-00-0C-00-0C-00-54-00-00-00-12-00-12-00-60-00-00-00-00-00-00-00-A2-00-00-00-01-B2-00-00-55-00-52-00-53-00-41-00-2D-00-4D-00-49-00-4E-00-4F-00-52-00-5A-00-61-00-70-00-68-00-6F-00-64-00-4C-00-49-00-47-00-48-00-54-00-43-00-49-00-54-00-59-00-AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97-E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (msg.GetBytes ()), "GetBytes");
                }
 
                [Test]
@@ -64,14 +64,14 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                public void Decode1 () 
                {
                        Type3Message msg = new Type3Message (data1);
-                       AssertEquals ("Domain", "URSA-MINOR", msg.Domain);
-                       AssertEquals ("Host", "LIGHTCITY", msg.Host);
-                       AssertEquals ("Username", "Zaphod", msg.Username);
-                       AssertEquals ("Flags", (NtlmFlags)0x8201, msg.Flags);
-                       AssertEquals ("Type", 3, msg.Type);
-                       AssertNull ("Password", msg.Password);
-                       AssertEquals ("LM", "AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97", BitConverter.ToString (msg.LM));
-                       AssertEquals ("NT", "E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (msg.NT));
+                       Assert.AreEqual ("URSA-MINOR", msg.Domain, "Domain");
+                       Assert.AreEqual ("LIGHTCITY", msg.Host, "Host");
+                       Assert.AreEqual ("Zaphod", msg.Username, "Username");
+                       Assert.AreEqual ((NtlmFlags)0x8201, msg.Flags, "Flags");
+                       Assert.AreEqual (3, msg.Type, "Type");
+                       Assert.IsNull (msg.Password, "Password");
+                       Assert.AreEqual ("AD-87-CA-6D-EF-E3-46-85-B9-C4-3C-47-7A-8C-42-D6-00-66-7D-68-92-E7-E8-97", BitConverter.ToString (msg.LM), "LM");
+                       Assert.AreEqual ("E0-E0-0D-E3-10-4A-1B-F2-05-3F-07-C7-DD-A8-2D-3C-48-9A-E9-89-E1-B0-00-D3", BitConverter.ToString (msg.NT), "NT");
                }
 
                [Test]
@@ -79,28 +79,28 @@ namespace MonoTests.Mono.Security.Protocol.Ntlm {
                public void Decode2 () 
                {
                        Type3Message msg = new Type3Message (data2);
-                       AssertEquals ("Domain", "DOMAIN", msg.Domain);
-                       AssertEquals ("Host", "WORKSTATION", msg.Host);
-                       AssertEquals ("Username", "user", msg.Username);
-                       AssertEquals ("Flags", (NtlmFlags)0x201, msg.Flags);
-                       AssertEquals ("Type", 3, msg.Type);
-                       AssertNull ("Password", msg.Password);
-                       AssertEquals ("LM", "C3-37-CD-5C-BD-44-FC-97-82-A6-67-AF-6D-42-7C-6D-E6-7C-20-C2-D3-E7-7C-56", BitConverter.ToString (msg.LM));
-                       AssertEquals ("NT", "25-A9-8C-1C-31-E8-18-47-46-6B-29-B2-DF-46-80-F3-99-58-FB-8C-21-3A-9C-C6", BitConverter.ToString (msg.NT));
+                       Assert.AreEqual ("DOMAIN", msg.Domain, "Domain");
+                       Assert.AreEqual ("WORKSTATION", msg.Host, "Host");
+                       Assert.AreEqual ("user", msg.Username, "Username");
+                       Assert.AreEqual ((NtlmFlags)0x201, msg.Flags, "Flags");
+                       Assert.AreEqual (3, msg.Type, "Type");
+                       Assert.IsNull (msg.Password, "Password");
+                       Assert.AreEqual ("C3-37-CD-5C-BD-44-FC-97-82-A6-67-AF-6D-42-7C-6D-E6-7C-20-C2-D3-E7-7C-56", BitConverter.ToString (msg.LM), "LM");
+                       Assert.AreEqual ("25-A9-8C-1C-31-E8-18-47-46-6B-29-B2-DF-46-80-F3-99-58-FB-8C-21-3A-9C-C6", BitConverter.ToString (msg.NT), "NT");
                }
 
                [Test]
                public void Challenge () 
                {
                        Type3Message msg = new Type3Message ();
-                       AssertNull ("Challenge", msg.Challenge);
+                       Assert.IsNull (msg.Challenge, "Challenge");
                        
                        byte[] c = new byte [8];
                        msg.Challenge = c;
-                       AssertEquals ("Challenge.Length", 8, msg.Challenge.Length);
+                       Assert.AreEqual (8, msg.Challenge.Length, "Challenge.Length");
                        
                        c [0] = 1;
-                       AssertEquals ("Challenge not directly accessible", 0, msg.Challenge [0]);
+                       Assert.AreEqual (0, msg.Challenge [0], "Challenge not directly accessible");
                }
                
                [Test]
index 05e013cd4aa2a26d7080df77256a51e636311396..fe94f26e01bcb9dd8663c2aeceb2686b9c3e4410 100644 (file)
@@ -22,7 +22,7 @@ namespace MonoTests.Mono.Security {
        // sn -k test.snk
 
        [TestFixture]
-       public class StrongNameTest : Assertion {
+       public class StrongNameTest {
 
                // because most crypto stuff works with byte[] buffers
                static public void AssertEquals (string msg, byte[] array1, byte[] array2) 
@@ -30,9 +30,9 @@ namespace MonoTests.Mono.Security {
                        if ((array1 == null) && (array2 == null))
                                return;
                        if (array1 == null)
-                               Fail (msg + " -> First array is NULL");
+                               Assert.Fail (msg + " -> First array is NULL");
                        if (array2 == null)
-                               Fail (msg + " -> Second array is NULL");
+                               Assert.Fail (msg + " -> Second array is NULL");
 
                        bool a = (array1.Length == array2.Length);
                        if (a) {
@@ -47,7 +47,7 @@ namespace MonoTests.Mono.Security {
                                msg += " -> Expected " + BitConverter.ToString (array1, 0);
                                msg += " is different than " + BitConverter.ToString (array2, 0);
                        }
-                       Assert (msg, a);
+                       Assert.IsTrue (a, msg);
                }
 
                static byte[] test = { 
@@ -112,9 +112,9 @@ namespace MonoTests.Mono.Security {
                public void FromBuffer ()
                {
                        StrongName sn = new StrongName (test);
-                       AssertEquals ("buffer.RSA", "<RSAKeyValue><Modulus>y6T/+EoARJMHW0ilpCdn+VbTffWxb1xu187/9Q+S2DwPyZ9LTNKrZgwaYmG4FPWEEH1HJxrxwh8AlD6oTz8CCcnPGKxKVFkubpIbEyvQCSTr22gUjVXXKHc2pfcCeOuNXS9kAOjv2tqpsiDbIsu9mnxfYysHWMDBqA4rxghyvT0=</Modulus><Exponent>AQAB</Exponent><P>6qYUEleRY+Wzyk7xN05UwWRna37U2aQnq2Y2VVyJeceDZPU1u1GYdQmFQw5XgvxKwWx9DAfNh1iSyLe0YmrAcw==</P><Q>3iy1IDIkPrRWBFrCAUhpUNn4/ICiVXTT7KjuEXkGr0+1Cx/V+o3eoVIo/9x2Q3IaxMbQDSa8hisIFunz/iuPjw==</Q><DP>2BouIBpfvzX8mBSOGNZePmG+0YRUeUCyfCs9XO5Fek9h1mfynVpvY1JqVbBuria2nl7Q53SEN+M+A/cT/RO9uw==</DP><DQ>pjma1ljNh2CTTrS8nAsaSJSc1gZD7l33RQRrAgWju7yN/qG2DbzhSZ9X7355uSKA5qK8/Gnz+QnvBn3JwGvE/w==</DQ><InverseQ>3U67bp3lPExfGoiTRvRyHhNtyJs6hAq/Uj7wSHKLHNoLG20kwZux8BwZKpPBBA0bQjkLUiRv9PYs18El/45/wA==</InverseQ><D>bPVOg5FMjWRBhmTbQ3ZWGkGLjRR9KEFDiTJXHs6DWjDgnZceWe9KB6KoJ0Vzkbs/Ovdcr56qBZxC2g6gTS5ALvogBYH2PrUftr4flh/z4qgOrAYCQkTecfHAGIGEldEeF1FItMbqmQa6WzVPVp4tn/+q3PAVmZqrs6/X9EARH10=</D></RSAKeyValue>", sn.RSA.ToXmlString (true));
-                       AssertEquals ("buffer.PublicKey", testPublicKey, sn.PublicKey);
-                       AssertEquals ("buffer.PublicKeyToken", testPublicKeyToken, sn.PublicKeyToken);
+                       Assert.AreEqual ("<RSAKeyValue><Modulus>y6T/+EoARJMHW0ilpCdn+VbTffWxb1xu187/9Q+S2DwPyZ9LTNKrZgwaYmG4FPWEEH1HJxrxwh8AlD6oTz8CCcnPGKxKVFkubpIbEyvQCSTr22gUjVXXKHc2pfcCeOuNXS9kAOjv2tqpsiDbIsu9mnxfYysHWMDBqA4rxghyvT0=</Modulus><Exponent>AQAB</Exponent><P>6qYUEleRY+Wzyk7xN05UwWRna37U2aQnq2Y2VVyJeceDZPU1u1GYdQmFQw5XgvxKwWx9DAfNh1iSyLe0YmrAcw==</P><Q>3iy1IDIkPrRWBFrCAUhpUNn4/ICiVXTT7KjuEXkGr0+1Cx/V+o3eoVIo/9x2Q3IaxMbQDSa8hisIFunz/iuPjw==</Q><DP>2BouIBpfvzX8mBSOGNZePmG+0YRUeUCyfCs9XO5Fek9h1mfynVpvY1JqVbBuria2nl7Q53SEN+M+A/cT/RO9uw==</DP><DQ>pjma1ljNh2CTTrS8nAsaSJSc1gZD7l33RQRrAgWju7yN/qG2DbzhSZ9X7355uSKA5qK8/Gnz+QnvBn3JwGvE/w==</DQ><InverseQ>3U67bp3lPExfGoiTRvRyHhNtyJs6hAq/Uj7wSHKLHNoLG20kwZux8BwZKpPBBA0bQjkLUiRv9PYs18El/45/wA==</InverseQ><D>bPVOg5FMjWRBhmTbQ3ZWGkGLjRR9KEFDiTJXHs6DWjDgnZceWe9KB6KoJ0Vzkbs/Ovdcr56qBZxC2g6gTS5ALvogBYH2PrUftr4flh/z4qgOrAYCQkTecfHAGIGEldEeF1FItMbqmQa6WzVPVp4tn/+q3PAVmZqrs6/X9EARH10=</D></RSAKeyValue>", sn.RSA.ToXmlString (true), "buffer.RSA");
+                       Assert.AreEqual (testPublicKey, sn.PublicKey, "buffer.PublicKey");
+                       Assert.AreEqual (testPublicKeyToken, sn.PublicKeyToken, "buffer.PublicKeyToken");
                }
 
                [Test]
@@ -122,9 +122,9 @@ namespace MonoTests.Mono.Security {
                {
                        StrongName sn1 = new StrongName (test);
                        StrongName sn2 = new StrongName (sn1.RSA);
-                       AssertEquals ("key.RSA", sn1.RSA.ToXmlString (true), sn2.RSA.ToXmlString (true));
-                       AssertEquals ("key.PublicKey", sn1.PublicKey, sn2.PublicKey);
-                       AssertEquals ("key.PublicKeyToken", sn1.PublicKeyToken, sn2.PublicKeyToken);
+                       Assert.AreEqual (sn1.RSA.ToXmlString (true), sn2.RSA.ToXmlString (true), "key.RSA");
+                       Assert.AreEqual (sn1.PublicKey, sn2.PublicKey, "key.PublicKey");
+                       Assert.AreEqual (sn1.PublicKeyToken, sn2.PublicKeyToken, "key.PublicKeyToken");
                }
 
                string Signed;
@@ -820,28 +820,28 @@ namespace MonoTests.Mono.Security {
                {
                        // compare that both hellosigned and hellodelay are the same file expect for signature
                        byte[] s = sn.Hash (Signed);
-                       AssertNotNull ("Hash/Signed", s);
+                       Assert.IsNotNull (s, "Hash/Signed");
                        byte[] d = sn.Hash (Delay);
-                       AssertNotNull ("Hash/Delay", d);
+                       Assert.IsNotNull (d, "Hash/Delay");
                        // are they the same
-                       AssertEquals ("Hash/Compare", s, d);
+                       Assert.AreEqual (s, d, "Hash/Compare");
                        // are they the same as GetHashFromAssemblyFile
                        byte[] knownHash = { 0x7D, 0xF7, 0x1D, 0xD4, 0x24, 0x22, 0xEA, 0xAB, 0xD2, 0x91, 0xCD, 0xAB, 0x1A, 0x55, 0x6A, 0x42, 0x05, 0xBA, 0x6E, 0x7B };
-                       AssertEquals ("Hash/GetHashFromAssemblyFile", knownHash, s);
+                       Assert.AreEqual (knownHash, s, "Hash/GetHashFromAssemblyFile");
                }
 
                [Test]
                public void VerifyValid () 
                {
                        // verify that hellosigned.exe is valid
-                       Assert ("Verify/Valid", sn.Verify (Signed));
+                       Assert.IsTrue (sn.Verify (Signed), "Verify/Valid");
                }
 
                [Test]
                public void VerifyInvalid () 
                {
                        // verify that hellodelay.exe isn't valid
-                       Assert ("Verify/Invalid", !sn.Verify (Delay));
+                       Assert.IsTrue (!sn.Verify (Delay), "Verify/Invalid");
                }
 
                [Test]
@@ -849,7 +849,7 @@ namespace MonoTests.Mono.Security {
                {
                        Stream signed = new MemoryStream (signedData);
                        // verify that hellosigned.exe is valid
-                       Assert ("Verify/Valid", sn.Verify (signed));
+                       Assert.IsTrue (sn.Verify (signed), "Verify/Valid");
                }
 
                [Test]
@@ -857,25 +857,25 @@ namespace MonoTests.Mono.Security {
                {
                        Stream delay = new MemoryStream (delayData);
                        // verify that hellodelay.exe isn't valid
-                       Assert ("Verify/Invalid", !sn.Verify (delay));
+                       Assert.IsTrue (!sn.Verify (delay), "Verify/Invalid");
                }
 
                [Test]
                public void Sign () 
                {
                        // sign the (invalid) hellodelay.exe
-                       Assert ("Sign", sn.Sign (Delay));
+                       Assert.IsTrue (sn.Sign (Delay), "Sign");
                        // and verify it's now valid
-                       Assert ("Sign/Verify", sn.Verify (Delay));
+                       Assert.IsTrue (sn.Verify (Delay), "Sign/Verify");
                }
 
                [Test]
                public void ReSign () 
                {
                        // resign the (already valid) hellosigned.exe
-                       Assert ("ReSign", sn.Sign (Signed));
+                       Assert.IsTrue (sn.Sign (Signed), "ReSign");
                        // and verify it's still valid
-                       Assert ("ReSign/Verify", sn.Verify (Signed));
+                       Assert.IsTrue (sn.Verify (Signed), "ReSign/Verify");
                }
                
                [Test]
@@ -907,7 +907,7 @@ namespace MonoTests.Mono.Security {
                {
                        byte[] ecma = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; 
                        sn = new StrongName (ecma);
-                       Assert ("CanSign", !sn.CanSign);
+                       Assert.IsTrue (!sn.CanSign, "CanSign");
                }
 
                [Test]
index f5cdf537f3e76afaacd8fc7483a6f9a9a9ccf5f8..c3920b5ed882b899f8d9c57777ecd50876ba1464 100644 (file)
@@ -169,17 +169,6 @@ public class TlsTest {
                ServicePointManager.CertificatePolicy = new TestCertificatePolicy ();
                ServicePointManager.SecurityProtocol = (System.Net.SecurityProtocolType) (int) protocol;
 
-               ServicePointManager.ClientCipherSuitesCallback += (System.Net.SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                       Console.WriteLine ("Protocol: {0}", p);
-//                     var ciphers = allCiphers;
-                       var ciphers = from cipher in allCiphers where !cipher.Contains ("EXPORT") select cipher;
-                       string prefix = p == System.Net.SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                       //                      var ciphers = new List<string> { prefix + "RSA_WITH_AES_128_CBC_SHA", prefix + "RSA_WITH_AES_256_CBC_SHA" };
-                       foreach (var cipher in ciphers)
-                               Console.WriteLine ("\t{0}", cipher);
-                       return ciphers;
-               };
-
                Uri uri = new Uri (url);
                HttpWebRequest req = (HttpWebRequest) WebRequest.Create (uri);
 
diff --git a/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.build-failure-exclude.sources b/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.build-failure-exclude.sources
new file mode 100644 (file)
index 0000000..38e0f0a
--- /dev/null
@@ -0,0 +1,20 @@
+# These fail because of reliance on full NUnit framework
+Mono.Math/ArithmeticBigTest.cs
+Mono.Math/BigIntegerSetTest.cs
+Mono.Math/BitwiseTest.cs
+Mono.Math/GcdBigTest.cs
+Mono.Math/ModInverseBigTest.cs
+Mono.Math/ModRingTest.cs
+Mono.Math/PrimeGenerationTest.cs
+Mono.Math/PrimeTestingTest.cs
+Mono.Math/SearchGeneratorTest.cs
+Mono.Security.Authenticode/PrivateKeyTest.cs
+Mono.Security.Cryptography/CryptoConvertTest.cs
+Mono.Security.Cryptography/DiffieHellmanManagedTest.cs
+Mono.Security.Cryptography/PKCS8Test.cs
+Mono.Security.Protocol.Ntlm/ChallengeResponseTest.cs
+Mono.Security.Protocol.Ntlm/MessageBaseTest.cs
+Mono.Security.Protocol.Ntlm/Type1MessageTest.cs
+Mono.Security.Protocol.Ntlm/Type2MessageTest.cs
+Mono.Security.Protocol.Ntlm/Type3MessageTest.cs
+Mono.Security/StrongNameTest.cs
diff --git a/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.exclude.sources b/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..955ebd0
--- /dev/null
@@ -0,0 +1,2 @@
+#include monodroid_Mono.Security_test.dll.build-failure-exclude.sources
+#include monodroid_Mono.Data.Sqlite_test.dll.new-exclude.sources
diff --git a/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.new-exclude.sources b/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..580b47d
--- /dev/null
@@ -0,0 +1,14 @@
+Mono.Security.Authenticode/AuthenticodeDeformatterTest.cs
+Mono.Security.Authenticode/SoftwarePublisherCertificateTest.cs
+Mono.Security/PKCS7Test.cs
+Mono.Security.X509.Extensions/AuthorityKeyIdentifierExtensionTest.cs
+Mono.Security.X509.Extensions/BasicConstraintsExtensionTest.cs
+Mono.Security.X509.Extensions/ExtendedKeyUsageExtensionTest.cs
+Mono.Security.X509.Extensions/KeyUsageExtensionTest.cs
+Mono.Security.X509.Extensions/SubjectAltNameExtensionTest.cs
+Mono.Security.X509.Extensions/SubjectKeyIdentifierExtensionTest.cs
+Mono.Security.X509/PKCS12Test.cs
+Mono.Security.X509/X501NameTest.cs
+Mono.Security.X509/X509CertificateTest.cs
+Mono.Security.X509/X509CrlTest.cs
+Mono.Security.X509/X520AttributesTest.cs
diff --git a/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.sources b/mcs/class/Mono.Security/monodroid_Mono.Security_test.dll.sources
new file mode 100644 (file)
index 0000000..37fa889
--- /dev/null
@@ -0,0 +1 @@
+#include Mono.Security_test.dll.sources
index 423ccd6f4d9abd2414281de45107007cdf7231c1..6c2e89d188014cbb752cd53ab70afa79703f3ab0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 0f63283f6db94a07ddb2d89264e2a4e030348ac0..2549142742184addc6e9678cd7f24e1ca9575fa4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 9e3b282835fa4dc78d72a9ac5e2a625ff6e47f6f..7184cb7c2e5fcdb2f8d140c0e8cf06e22714adcb 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index fa323d910b1044b57da25c859206288970f35f68..88bcc5bf2e1db6c177a74ae2a768f039d4ea15b7 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
       <Name>System.Xml-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
-      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
-      <Name>System.Xml-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 9e0d99d6c0b7de775b2ecfc44b3d2a0067d41f15..4f24b424a7f0f35cb1cc605534aacd209577b7ce 100644 (file)
@@ -5,25 +5,14 @@ include ../../build/rules.make
 LIBRARY = Novell.Directory.Ldap.dll
 
 LIB_REFS = System Mono.Security
-LIB_MCS_FLAGS = \
-       -warn:1 -nowarn:612 \
-       $(RESX_RES:%=/res:%)
+LIB_MCS_FLAGS = -warn:1 -nowarn:612 
 
+RESOURCE_DEFS = ResultCodeMessages,Novell.Directory.Ldap.Utilclass/ResultCodeMessages.txt
 include ../../build/library.make
 
-RESULTCODE_MESSAGES = Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources
-
-RESX_RES = $(RESULTCODE_MESSAGES)
-
-$(the_lib): $(RESULTCODE_MESSAGES)
-
-$(RESULTCODE_MESSAGES): Novell.Directory.Ldap.Utilclass/ResultCodeMessages.txt
-       $(RESGEN) $< $@
-
 EXTRA_DISTFILES = \
        Novell.Directory.Ldap.Rfc2251/RfcLdapURL.cs \
        Novell.Directory.Ldap.Utilclass/ExceptionMessages.resx \
        Novell.Directory.Ldap.Utilclass/ExceptionMessages.txt \
-       Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resx \
-       Novell.Directory.Ldap.Utilclass/ResultCodeMessages.txt 
+       Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resx
 
index 094bcd9c15528d65a9d373282f2d93c3675b3be7..90e5b13419f317c41238330a6020a81ca03f0e0d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,612</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
       <Name>Mono.Security-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-net_4_x.csproj">\r
-      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
-      <Name>System-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Mono.Security/Mono.Security-net_4_x.csproj">\r
-      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
-      <Name>Mono.Security-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources">\r
+    <EmbeddedResource Include="Novell.Directory.Ldap.Utilclass/ResultCodeMessages.txt">\r
       <LogicalName>ResultCodeMessages.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index a97f3a0f3a2977bd8000384c4eb573e91928dc7e..dd4b88112dd7d1bac281c6ff8fd7c9c6d6a275e9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 5539fea58542a651bacf83c80fae6f99cd4f8978..79d7d285b098821fedc2af32b2487ee860625bde 100644 (file)
@@ -197,7 +197,7 @@ namespace RabbitMQ.Client.Apigen {
            m_primitiveTypeFlagMap[amqpType] = isReference;
        }
 
-        public void HandleOption(string opt) {
+        public bool HandleOption(string opt) {
             if (opt.StartsWith("/n:")) {
                 m_framingSubnamespace = opt.Substring(3);
             } else if (opt.StartsWith("/apiName:")) {
@@ -210,9 +210,9 @@ namespace RabbitMQ.Client.Apigen {
             } else if (opt == "/c") {
                 m_emitComments = true;
             } else {
-                Console.Error.WriteLine("Unsupported command-line option: " + opt);
-                Usage();
+               return false;
             }
+           return true;
         }
 
         public void Usage() {
@@ -227,7 +227,8 @@ namespace RabbitMQ.Client.Apigen {
 
         public Apigen(ArrayList args) {
             while (args.Count > 0 && ((string) args[0]).StartsWith("/")) {
-                HandleOption((string) args[0]);
+               if (!HandleOption((string) args[0]))
+                 break;
                 args.RemoveAt(0);
             }
             if ((args.Count < 2)
index 64bca8b3766b0321649bd82fdfaeb1ec72d903e4..21fe03503f4fba1d875c8834f261957f834cef81 100644 (file)
@@ -6,10 +6,13 @@
     <ProductVersion>9.0.30729</ProductVersion>\r
     <SchemaVersion>2.0</SchemaVersion>\r
     <ProjectGuid>{D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
+    <OutputType>Exe</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    <StartupObject>RabbitMQ.Client.Apigen.Apigen</StartupObject>\r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+mono RabbitMQ.Client.Apigen.exe /n:v0_9 "/apiName:AMQP_0_9" $(ProjectDir)..\..\docs\specs\amqp0-9.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-9.cs
+mono RabbitMQ.Client.Apigen.exe /n:v0_8 "/apiName:AMQP_0_8" $(ProjectDir)..\..\docs\specs\amqp0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-8.cs
+mono RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDir)..\..\docs\specs\qpid-amqp.0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-qpid-0-8.cs
+
+
+
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+mono RabbitMQ.Client.Apigen.exe /n:v0_9 "/apiName:AMQP_0_9" $(ProjectDir)..\..\docs\specs\amqp0-9.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-9.cs
+mono RabbitMQ.Client.Apigen.exe /n:v0_8 "/apiName:AMQP_0_8" $(ProjectDir)..\..\docs\specs\amqp0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-8.cs
+mono RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDir)..\..\docs\specs\qpid-amqp.0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-qpid-0-8.cs
+
+
+
 \r
     </PostBuildEvent>\r
   </PropertyGroup>\r
   <ItemGroup>\r
+    <ProjectReference Include="../../../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../../../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
       <Name>System.Xml-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../../../corlib/corlib-net_4_x.csproj">\r
-      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
-      <Name>corlib-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index c1c44bec5124787ba4f3d4039e2312c1439a63c4..e062f5481634cc77b9baf72a0bfdbcad31debe1f 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 90b90edf71783dc9c7b80b6ce1bf1bf16ce1ce14..d20c1ba9eb9fa5fa8ce54dd469a5be393197e23c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\Activity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticsTraceCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticStrings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticTraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EncodingFallbackAwareXmlTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogCategory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogEventId.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\ExceptionUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\LegacyDiagnosticTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\MachineSettingsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\NativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\PiiTraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\PlainXmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\SafeEventLogWriteHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\TraceSourceKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\TraceXPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\Utility.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\Activity.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticsTraceCode.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticStrings.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\DiagnosticTraceSource.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EncodingFallbackAwareXmlTextWriter.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogCategory.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogEventId.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\EventLogger.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\ExceptionUtility.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\LegacyDiagnosticTrace.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\MachineSettingsSection.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\NativeMethods.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\PiiTraceSource.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\PlainXmlWriter.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\SafeEventLogWriteHandle.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\TraceSourceKind.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\TraceXPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\SMDiagnostics\System\ServiceModel\Diagnostics\Utility.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\TraceSR.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index e0b5dab202b7e0cbabc2ea9ac88557a0472f8562..9c35c71ec5627798b735f29e46db1c9224af615b 100644 (file)
@@ -4,18 +4,16 @@ include ../../build/rules.make
 
 LIBRARY = System.ComponentModel.Composition.dll
 LIB_REFS = System System.Core
-LIB_MCS_FLAGS = -d:CLR40 -resource:$(STRING_MESSAGES) -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414
 
-STRING_MESSAGES = Microsoft.Internal.Strings.resources
+RESOURCE_DEFS = Microsoft.Internal.Strings,src/ComponentModel/Strings.resx
+LIB_MCS_FLAGS = -d:CLR40 -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414
+
 
 CLEAN_FILES += $(STRING_MESSAGES)
 
 EXTRA_DISTFILES = \
        src/ComponentModel/Strings.resx
-       
+
 include ../../build/library.make
 
-$(the_lib): $(STRING_MESSAGES)
 
-$(STRING_MESSAGES): src/ComponentModel/Strings.resx
-       $(RESGEN) $< $@
index 305e8f46180ae84bf782b730a1c8b631d90d8bab..598f507463cecd04fba5626b8c97d39b2e052aa2 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,219,414</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Microsoft.Internal.Strings.resources">\r
+    <EmbeddedResource Include="src/ComponentModel/Strings.resx">\r
       <LogicalName>Microsoft.Internal.Strings.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index b74efc8504c7464f5373678b535588a3611a11a9..69eacf9c62079cd72bb359dc9ff3a731ee6b72c7 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AppSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociatedMetadataTypeTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociatedMetadataTypeTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\BindableTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CompareAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ConcurrencyCheckAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CreditCardAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CustomValidationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DataType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DataTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayColumnAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayFormatAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EditableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EmailAddressAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EnumDataTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\FileExtensionsAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\FilterUIHintAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\IValidatableObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\KeyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\LocalizableString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MaxLengthAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MetadataPropertyDescriptorWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MetadataTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MinLengthAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\PhoneAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RangeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RegularExpressionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RequiredAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ScaffoldAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ColumnAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ComplexTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\DatabaseGeneratedAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\DatabaseGeneratedOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ForeignKeyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\InversePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\NotMappedAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\TableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\StringLengthAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\TimestampAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\UIHintAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\UrlAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationAttributeStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Validator.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AppSettings.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociatedMetadataTypeTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociatedMetadataTypeTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\AssociationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\BindableTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CompareAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ConcurrencyCheckAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CreditCardAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\CustomValidationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DataType.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DataTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayColumnAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\DisplayFormatAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EditableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EmailAddressAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\EnumDataTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\FileExtensionsAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\FilterUIHintAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\IValidatableObject.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\KeyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\LocalizableString.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MaxLengthAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MetadataPropertyDescriptorWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MetadataTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\MinLengthAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\PhoneAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RangeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RegularExpressionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\RequiredAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ScaffoldAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ColumnAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ComplexTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\DatabaseGeneratedAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\DatabaseGeneratedOption.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\ForeignKeyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\InversePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\NotMappedAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Schema\TableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\StringLengthAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\TimestampAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\UIHintAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\UrlAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationAttributeStore.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationContext.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationException.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\ValidationResult.cs" />\r
+    <Compile Include="..\referencesource\System.ComponentModel.DataAnnotations\DataAnnotations\Validator.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="DataAnnotationsResources.cs" />\r  </ItemGroup>\r
+    <Compile Include="ReferenceSources\SR.cs" />\r
+    <Compile Include="ReferenceSources\SR.missing.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   <Target Name="BeforeBuild">\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.exclude.sources b/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..f3d94ae
--- /dev/null
@@ -0,0 +1,2 @@
+#include monodroid_System.ComponentModel.DataAnnotations_test.dll.new-exclude.sources
+../../System.Web.DynamicData/Test/Common/AssertExtensions.cs
diff --git a/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.new-exclude.sources b/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..705868f
--- /dev/null
@@ -0,0 +1,6 @@
+System.ComponentModel.DataAnnotations/AssociatedMetadataTypeTypeDescriptionProviderTests.cs
+System.ComponentModel.DataAnnotations/CompareAttributeTest.cs
+System.ComponentModel.DataAnnotations/CreditCardAttributeTest.cs
+System.ComponentModel.DataAnnotations/EmailAddressAttributeTest.cs
+System.ComponentModel.DataAnnotations/FileExtensionsAttributeTest.cs
+System.ComponentModel.DataAnnotations/PhoneAttributeTest.cs
diff --git a/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.sources b/mcs/class/System.ComponentModel.DataAnnotations/monodroid_System.ComponentModel.DataAnnotations_test.dll.sources
new file mode 100644 (file)
index 0000000..4be89ed
--- /dev/null
@@ -0,0 +1 @@
+#include System.ComponentModel.DataAnnotations_test.dll.sources
index 41aaa875146098b0c7ad084f31210f8ebb58a015..d830e4f80397d064a3b6f160b934ee9328036c69 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 9170a00e94c4c3c89b178bd7c5dcdecf03b8ccd7..61bfe7fa885569ab3c0bfd7be709fa77954791c2 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.Core/System.Core-basic.csproj b/mcs/class/System.Core/System.Core-basic.csproj
deleted file mode 100644 (file)
index 0224835..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{4F33488E-A6DF-4A6E-A15B-46648C546475}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <OutputPath>./../../class/lib/basic</OutputPath>\r
-    <NoStdLib>False</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Core</AssemblyName>\r
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;BOOTSTRAP_BASIC;INSIDE_SYSCORE;LIBC;NET_3_5</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;BOOTSTRAP_BASIC;INSIDE_SYSCORE;LIBC;NET_3_5</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="..\corlib\System.Collections.Generic\CollectionDebuggerView.cs" />\r
-    <Compile Include="..\corlib\System.Collections\HashPrimeNumbers.cs" />\r
-    <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\CryptoTools.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\SymmetricTransform.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafePipeHandle.cs" />\r
-    <Compile Include="System.Collections.Generic\HashSet.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRights.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAuditRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeDirection.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeInterfaces.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeOptions.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeSecurity.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStreamImpersonationWorker.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeTransmissionMode.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeUnix.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeWin32.cs" />\r
-    <Compile Include="System.IO\HandleInheritability.cs" />\r
-    <Compile Include="System.Linq.Expressions\BinaryExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\ConditionalExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\ConstantExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\ElementInit.cs" />\r
-    <Compile Include="System.Linq.Expressions\EmitContext.cs" />\r
-    <Compile Include="System.Linq.Expressions\Expression.cs" />\r
-    <Compile Include="System.Linq.Expressions\Expression_T.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionPrinter.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionTransformer.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionType.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionVisitor.cs" />\r
-    <Compile Include="System.Linq.Expressions\Extensions.cs" />\r
-    <Compile Include="System.Linq.Expressions\InvocationExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\LambdaExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\ListInitExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberAssignment.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberBinding.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberBindingType.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberInitExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberListBinding.cs" />\r
-    <Compile Include="System.Linq.Expressions\MemberMemberBinding.cs" />\r
-    <Compile Include="System.Linq.Expressions\MethodCallExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\NewArrayExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\NewExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\ParameterExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\TypeBinaryExpression.cs" />\r
-    <Compile Include="System.Linq.Expressions\UnaryExpression.cs" />\r
-    <Compile Include="System.Linq\Check.cs" />\r
-    <Compile Include="System.Linq\Enumerable.cs" />\r
-    <Compile Include="System.Linq\Grouping.cs" />\r
-    <Compile Include="System.Linq\IGrouping.cs" />\r
-    <Compile Include="System.Linq\ILookup_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedEnumerable_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryable.cs" />\r
-    <Compile Include="System.Linq\IQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryProvider.cs" />\r
-    <Compile Include="System.Linq\Lookup.cs" />\r
-    <Compile Include="System.Linq\OrderedEnumerable.cs" />\r
-    <Compile Include="System.Linq\OrderedSequence.cs" />\r
-    <Compile Include="System.Linq\Queryable.cs" />\r
-    <Compile Include="System.Linq\QueryableEnumerable.cs" />\r
-    <Compile Include="System.Linq\QueryableTransformer.cs" />\r
-    <Compile Include="System.Linq\QuickSort.cs" />\r
-    <Compile Include="System.Linq\SortContext.cs" />\r
-    <Compile Include="System.Linq\SortDirection.cs" />\r
-    <Compile Include="System.Linq\SortSequenceContext.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DynamicAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExecutionScope.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IStrongBox.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StrongBox_T.cs" />\r
-    <Compile Include="System.Security.Cryptography\Aes.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesManaged.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithmGroup.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Threading\LockRecursionException.cs" />\r
-    <Compile Include="System.Threading\LockRecursionPolicy.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlim.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlimExtensions.cs" />\r
-    <Compile Include="System.Threading\ThreadLockState.cs" />\r
-    <Compile Include="System\Actions.cs" />\r
-    <Compile Include="System\Funcs.cs" />\r
-    <Compile Include="System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="System\TimeZoneInfo.AdjustmentRule.cs" />\r
-    <Compile Include="System\TimeZoneInfo.cs" />\r
-    <Compile Include="System\TimeZoneInfo.TransitionTime.cs" />\r
-    <Compile Include="System\TimeZoneNotFoundException.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\System\System-basic-1.csproj">\r
-      <Project>{CE10AD5A-9645-496F-8369-7B687E84456B}</Project>\r
-      <Name>System\System-basic-1</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
diff --git a/mcs/class/System.Core/System.Core-build.csproj b/mcs/class/System.Core/System.Core-build.csproj
deleted file mode 100644 (file)
index ac83cab..0000000
+++ /dev/null
@@ -1,333 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{C371834B-0195-4342-8652-BF015D18C974}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Core</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;INSIDE_SYSCORE;LIBC;NET_3_5;FEATURE_CORE_DLR;FEATURE_REFEMIT;FEATURE_PDBEMIT</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;INSIDE_SYSCORE;LIBC;NET_3_5;FEATURE_CORE_DLR;FEATURE_REFEMIT;FEATURE_PDBEMIT</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BinaryOperationBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BindingRestrictions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSite.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteHelpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteOps.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ConvertBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CreateInstanceBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DeleteIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DeleteMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicMetaObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicMetaObjectBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ExpandoClass.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ExpandoObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\GetIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\GetMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\IDynamicMetaObjectProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\IInvokeOnGetBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\InvokeBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\InvokeMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\RuleCache.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\SetIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\SetMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\UnaryOperationBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\UpdateDelegates.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\BinaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\BlockExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\CatchBlock.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ConditionalExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ConstantExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DebugInfoExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DebugViewWriter.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DefaultExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DynamicExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ElementInit.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\Expression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\Expression.DebuggerProxy.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionStringBuilder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionType.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionVisitor.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\GotoExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\IArgumentProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\IndexExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\InvocationExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LabelExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LabelTarget.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LambdaExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ListArgumentProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ListInitExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LoopExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberAssignment.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberInitExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberListBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberMemberBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MethodCallExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\NewArrayExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\NewExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ParameterExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\RuntimeVariablesExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SwitchCase.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SwitchExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SymbolDocumentInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TypeBinaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TypeUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\UnaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\AnalyzedTree.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\AssemblyGen.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\BoundConstants.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\Closure.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\CompilerScope.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\CompilerScope.Storage.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ConstantCheck.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DebugInfoGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DelegateHelpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DelegateHelpers.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ExpressionQuoter.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\HoistedLocals.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ILGen.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\KeyedQueue.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LabelInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Address.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Binary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.ControlFlow.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Expressions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Lambda.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Logical.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Statements.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Unary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\OffsetTrackingILGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\RuntimeVariableList.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\Set.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Bindings.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Temps.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\SymbolDocumentGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\SymbolGuids.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\VariableBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\CacheDict.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\CollectionExtensions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ContractUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ExceptionFactory.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\Helpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\IRuntimeVariables.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReadOnlyCollectionBuilder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReadOnlyDictionary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReferenceEqualityComparer.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReflectionUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TrueReadOnlyCollection.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TypeExtensions.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedFileHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedViewHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafePipeHandle.cs" />\r
-    <Compile Include="System.Collections.Generic\HashSet.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFile.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileAccess.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileOptions.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileRights.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRights.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAuditRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeDirection.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeInterfaces.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeOptions.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeSecurity.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStreamImpersonationWorker.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeTransmissionMode.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeUnix.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeWin32.cs" />\r
-    <Compile Include="System.IO\HandleInheritability.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionTransformer.cs" />\r
-    <Compile Include="System.Linq.Expressions\Extensions.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryBaseNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryCastNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryChildNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryConcatNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryDefaultEmptyNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryGroupByNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryHeadWorkerNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryJoinNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryMuxNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOptionNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderByNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderedStreamNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderGuardNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryReverseNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySelectManyNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySelectNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySetNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryStartNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryStreamNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryWhereNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryZipNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\SetInclusion.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\WrapHelper.cs" />\r
-    <Compile Include="System.Linq.Parallel\AggregationList.cs" />\r
-    <Compile Include="System.Linq.Parallel\ConcurrentGrouping.cs" />\r
-    <Compile Include="System.Linq.Parallel\ConcurrentLookup.cs" />\r
-    <Compile Include="System.Linq.Parallel\INodeVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\IVisitableNode.cs" />\r
-    <Compile Include="System.Linq.Parallel\OrderingEnumerator.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelExecuter.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelPartitioner.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelQueryEnumerator.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelQuickSort.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryCheckerVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryIsOrderedVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryOptions.cs" />\r
-    <Compile Include="System.Linq.Parallel\RangeList.cs" />\r
-    <Compile Include="System.Linq.Parallel\RepeatList.cs" />\r
-    <Compile Include="System.Linq.Parallel\ReverseList.cs" />\r
-    <Compile Include="System.Linq.Parallel\StripPartitioner.cs" />\r
-    <Compile Include="System.Linq.Parallel\TemporaryArea.cs" />\r
-    <Compile Include="System.Linq\Check.cs" />\r
-    <Compile Include="System.Linq\Enumerable.cs" />\r
-    <Compile Include="System.Linq\EnumerableExecutor.cs" />\r
-    <Compile Include="System.Linq\EnumerableExecutor_T.cs" />\r
-    <Compile Include="System.Linq\EnumerableQuery.cs" />\r
-    <Compile Include="System.Linq\EnumerableQuery_T.cs" />\r
-    <Compile Include="System.Linq\Grouping.cs" />\r
-    <Compile Include="System.Linq\IGrouping.cs" />\r
-    <Compile Include="System.Linq\ILookup_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedEnumerable_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryable.cs" />\r
-    <Compile Include="System.Linq\IQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryProvider.cs" />\r
-    <Compile Include="System.Linq\Lookup.cs" />\r
-    <Compile Include="System.Linq\OrderedEnumerable.cs" />\r
-    <Compile Include="System.Linq\OrderedParallelQuery.cs" />\r
-    <Compile Include="System.Linq\OrderedSequence.cs" />\r
-    <Compile Include="System.Linq\ParallelEnumerable.cs" />\r
-    <Compile Include="System.Linq\ParallelExecutionMode.cs" />\r
-    <Compile Include="System.Linq\ParallelMergeOptions.cs" />\r
-    <Compile Include="System.Linq\ParallelQuery.cs" />\r
-    <Compile Include="System.Linq\Queryable.cs" />\r
-    <Compile Include="System.Linq\QueryableEnumerable.cs" />\r
-    <Compile Include="System.Linq\QueryableTransformer.cs" />\r
-    <Compile Include="System.Linq\QuickSort.cs" />\r
-    <Compile Include="System.Linq\SortContext.cs" />\r
-    <Compile Include="System.Linq\SortDirection.cs" />\r
-    <Compile Include="System.Linq\SortSequenceContext.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DynamicAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IStrongBox.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StrongBox_T.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesManaged.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithmGroup.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExtensions.cs" />\r
-    <Compile Include="System.Threading\LockRecursionException.cs" />\r
-    <Compile Include="System.Threading\LockRecursionPolicy.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlim.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlimExtensions.cs" />\r
-    <Compile Include="System.Threading\ThreadLockState.cs" />\r
-    <Compile Include="System\Actions.cs" />\r
-    <Compile Include="System\Funcs.cs" />\r
-    <Compile Include="System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="System\TimeZoneInfo.AdjustmentRule.cs" />\r
-    <Compile Include="System\TimeZoneInfo.cs" />\r
-    <Compile Include="System\TimeZoneInfo.TransitionTime.cs" />\r
-    <Compile Include="System\TimeZoneNotFoundException.cs" />\r
-    <Compile Include="System\Util.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-build.csproj">\r
-      <Project>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System\System-build-1.csproj">\r
-      <Project>{ACA4A790-62B2-4D59-B96C-CE17F8F6BE58}</Project>\r
-      <Name>System\System-build-1</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\Mono.Posix\Mono.Posix-build.csproj">\r
-      <Project>{AA347918-40BB-4762-8A7F-B94836255127}</Project>\r
-      <Name>Mono.Posix\Mono.Posix-build</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index 1ff7e4d05f904f6eb9836484047b931a83e61e64..2f65fc4c3bec1a546f3eb5e5eac62f4bef381221 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1720</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\DynamicExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\ExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\IArgumentProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\IDynamicExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Extension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Function.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\StrongBox.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\BitHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSetDebugView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSetEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\FuncAndAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\Enums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\Enums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Enumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Expressions\ExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\IQueryable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Channels\AsynchronousChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Channels\SynchronousChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\EmptyEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\EnumerableWrapperWeakToStrong.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\IParallelPartitionable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\OrderedParallelQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelEnumerableWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\QueryAggregationOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\RangeEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\RepeatEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\ArrayMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\AsynchronousChannelMergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\DefaultMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\IMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\MergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\MergeExecutor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingPipeliningMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\SynchronousChannelMergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\IPartitionedStreamRecipient.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\UnorderedHashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\AssociativeAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\GroupJoinQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\JoinQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ZipQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\BinaryQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\CountAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongCountAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ListQueryResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\OrderingQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\QueryExecutionOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\OrdinalIndexState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionedStreamMerger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionerQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOpeningEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QuerySettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ScanQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\AnyAllSearchOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ConcatQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ContainsSearchOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DefaultIfEmptyQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DistinctQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ElementAtQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\FirstQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ForAllOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\GroupByQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedSelectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedWhereQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\LastQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SingleQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\WhereQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\UnaryQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\CancellationState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingSpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryLifecycle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTaskGroupState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\Scheduling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTaskBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\CancellableEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ExceptionAggregator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ExchangeUtilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\FixedMaxHeap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\GrowingArray.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\HashLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\IntValueEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ListChunk.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Lookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Pair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\PairComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ReverseComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Shared.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Sorting.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\TraceHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Util.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Wrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\WrapperEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelExecutionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelMergeOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\SequenceQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\TypeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Runtime\CompilerServices\DynamicAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Runtime\CompilerServices\ExecutionScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\Aes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\AesManaged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\CngKeyBlobFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellman.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellmanPublicKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDsa.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECKeyXmlFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\ReaderWriterLockSlim\LockRecursionException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\ReaderWriterLockSlim\ReaderWriterLockSlim.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\Tasks\TaskExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\TimeZoneInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\TimeZoneNotFoundException.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BinaryOperationBinder.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BindingRestrictions.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReflectionUtils.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TrueReadOnlyCollection.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TypeExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\DynamicExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\ExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\IArgumentProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\IDynamicExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Action.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Extension.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Function.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\StrongBox.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\BitHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSet.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSetDebugView.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSetEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\FuncAndAction.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\InvalidTimeZoneException.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\Enums.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\Enums.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Enumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Expressions\ExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\IQueryable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Channels\AsynchronousChannel.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Channels\SynchronousChannel.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\EmptyEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\EnumerableWrapperWeakToStrong.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\IParallelPartitionable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\OrderedParallelQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelEnumerableWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\QueryAggregationOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\RangeEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\RepeatEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\ArrayMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\AsynchronousChannelMergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\DefaultMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\IMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\MergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\MergeExecutor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingPipeliningMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\SynchronousChannelMergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\IPartitionedStreamRecipient.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\UnorderedHashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\AssociativeAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\GroupJoinQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\JoinQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ZipQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\BinaryQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\CountAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongCountAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ListQueryResults.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\OrderingQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\QueryExecutionOption.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\OrdinalIndexState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionedStreamMerger.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionerQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOpeningEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryResults.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QuerySettings.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ScanQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\AnyAllSearchOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ConcatQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ContainsSearchOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DefaultIfEmptyQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DistinctQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ElementAtQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\FirstQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ForAllOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\GroupByQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedSelectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedWhereQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\LastQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SingleQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\WhereQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\UnaryQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\CancellationState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingSpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryLifecycle.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTaskGroupState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\Scheduling.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTaskBase.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\CancellableEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ExceptionAggregator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ExchangeUtilities.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\FixedMaxHeap.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\GrowingArray.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\HashLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\IntValueEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ListChunk.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Lookup.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Pair.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\PairComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ReverseComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Shared.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Sorting.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\TraceHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Util.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Wrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\WrapperEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelExecutionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelMergeOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\SequenceQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\TypeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Runtime\CompilerServices\DynamicAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Runtime\CompilerServices\ExecutionScope.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\Aes.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\AesManaged.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\CngKeyBlobFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellman.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellmanPublicKey.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDsa.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECKeyXmlFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\ReaderWriterLockSlim\LockRecursionException.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\ReaderWriterLockSlim\ReaderWriterLockSlim.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\Tasks\TaskExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\TimeZoneInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\TimeZoneNotFoundException.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedFileHandle.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedViewHandle.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafePipeHandle.cs" />\r
     <Compile Include="ReferenceSources\Error.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
+    <Compile Include="ReferenceSources\SR.missing.cs" />\r
     <Compile Include="ReferenceSources\Strings.cs" />\r
     <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFile.cs" />\r
     <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedView.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.Core/System.Core-plaincore-build.csproj b/mcs/class/System.Core/System.Core-plaincore-build.csproj
deleted file mode 100644 (file)
index 7d38223..0000000
+++ /dev/null
@@ -1,337 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{212C9C84-54F0-405A-AF36-BDD1667B3C9D}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <OutputPath>./../../class/lib/build/plaincore</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Core</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;INSIDE_SYSCORE;LIBC;NET_3_5;FEATURE_CORE_DLR;FEATURE_REFEMIT;FEATURE_PDBEMIT</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,1720</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;INSIDE_SYSCORE;LIBC;NET_3_5;FEATURE_CORE_DLR;FEATURE_REFEMIT;FEATURE_PDBEMIT</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BinaryOperationBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BindingRestrictions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSite.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteHelpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CallSiteOps.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ConvertBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\CreateInstanceBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DeleteIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DeleteMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicMetaObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicMetaObjectBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\DynamicObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ExpandoClass.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\ExpandoObject.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\GetIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\GetMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\IDynamicMetaObjectProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\IInvokeOnGetBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\InvokeBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\InvokeMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\RuleCache.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\SetIndexBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\SetMemberBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\UnaryOperationBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\UpdateDelegates.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\BinaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\BlockExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\CatchBlock.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ConditionalExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ConstantExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DebugInfoExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DebugViewWriter.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DefaultExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\DynamicExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ElementInit.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\Expression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\Expression.DebuggerProxy.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionStringBuilder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionType.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ExpressionVisitor.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\GotoExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\IArgumentProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\IndexExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\InvocationExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LabelExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LabelTarget.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LambdaExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ListArgumentProvider.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ListInitExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\LoopExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberAssignment.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberInitExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberListBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MemberMemberBinding.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\MethodCallExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\NewArrayExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\NewExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\ParameterExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\RuntimeVariablesExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SwitchCase.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SwitchExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\SymbolDocumentInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TypeBinaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\TypeUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Ast\UnaryExpression.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\AnalyzedTree.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\AssemblyGen.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\BoundConstants.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\Closure.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\CompilerScope.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\CompilerScope.Storage.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ConstantCheck.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DebugInfoGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DelegateHelpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\DelegateHelpers.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ExpressionQuoter.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\HoistedLocals.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\ILGen.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\KeyedQueue.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LabelInfo.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Address.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Binary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.ControlFlow.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Expressions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Lambda.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Logical.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Statements.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\LambdaCompiler.Unary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\OffsetTrackingILGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\RuntimeVariableList.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\Set.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Bindings.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\StackSpiller.Temps.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\SymbolDocumentGenerator.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\SymbolGuids.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Compiler\VariableBinder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\CacheDict.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\CollectionExtensions.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ContractUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ExceptionFactory.Generated.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\Helpers.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\IRuntimeVariables.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReadOnlyCollectionBuilder.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReadOnlyDictionary.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReferenceEqualityComparer.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReflectionUtils.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TrueReadOnlyCollection.cs" />\r
-    <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TypeExtensions.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedFileHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedViewHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafePipeHandle.cs" />\r
-    <Compile Include="System.Collections.Generic\HashSet.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFile.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileAccess.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileOptions.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileRights.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
-    <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\AnonymousPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeClientStream.cs" />\r
-    <Compile Include="System.IO.Pipes\NamedPipeServerStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRights.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAccessRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeAuditRule.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeDirection.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeInterfaces.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeOptions.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeSecurity.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStream.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeStreamImpersonationWorker.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeTransmissionMode.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeUnix.cs" />\r
-    <Compile Include="System.IO.Pipes\PipeWin32.cs" />\r
-    <Compile Include="System.IO\HandleInheritability.cs" />\r
-    <Compile Include="System.Linq.Expressions\ExpressionTransformer.cs" />\r
-    <Compile Include="System.Linq.Expressions\Extensions.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryBaseNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryCastNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryChildNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryConcatNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryDefaultEmptyNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryGroupByNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryHeadWorkerNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryJoinNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryMuxNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOptionNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderByNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderedStreamNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryOrderGuardNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryReverseNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySelectManyNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySelectNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QuerySetNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryStartNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryStreamNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryWhereNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\QueryZipNode.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\SetInclusion.cs" />\r
-    <Compile Include="System.Linq.Parallel.QueryNodes\WrapHelper.cs" />\r
-    <Compile Include="System.Linq.Parallel\AggregationList.cs" />\r
-    <Compile Include="System.Linq.Parallel\ConcurrentGrouping.cs" />\r
-    <Compile Include="System.Linq.Parallel\ConcurrentLookup.cs" />\r
-    <Compile Include="System.Linq.Parallel\INodeVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\IVisitableNode.cs" />\r
-    <Compile Include="System.Linq.Parallel\OrderingEnumerator.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelExecuter.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelPartitioner.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelQueryEnumerator.cs" />\r
-    <Compile Include="System.Linq.Parallel\ParallelQuickSort.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryCheckerVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryIsOrderedVisitor.cs" />\r
-    <Compile Include="System.Linq.Parallel\QueryOptions.cs" />\r
-    <Compile Include="System.Linq.Parallel\RangeList.cs" />\r
-    <Compile Include="System.Linq.Parallel\RepeatList.cs" />\r
-    <Compile Include="System.Linq.Parallel\ReverseList.cs" />\r
-    <Compile Include="System.Linq.Parallel\StripPartitioner.cs" />\r
-    <Compile Include="System.Linq.Parallel\TemporaryArea.cs" />\r
-    <Compile Include="System.Linq\Check.cs" />\r
-    <Compile Include="System.Linq\Enumerable.cs" />\r
-    <Compile Include="System.Linq\EnumerableExecutor.cs" />\r
-    <Compile Include="System.Linq\EnumerableExecutor_T.cs" />\r
-    <Compile Include="System.Linq\EnumerableQuery.cs" />\r
-    <Compile Include="System.Linq\EnumerableQuery_T.cs" />\r
-    <Compile Include="System.Linq\Grouping.cs" />\r
-    <Compile Include="System.Linq\IGrouping.cs" />\r
-    <Compile Include="System.Linq\ILookup_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedEnumerable_T.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable.cs" />\r
-    <Compile Include="System.Linq\IOrderedQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryable.cs" />\r
-    <Compile Include="System.Linq\IQueryable_T.cs" />\r
-    <Compile Include="System.Linq\IQueryProvider.cs" />\r
-    <Compile Include="System.Linq\Lookup.cs" />\r
-    <Compile Include="System.Linq\OrderedEnumerable.cs" />\r
-    <Compile Include="System.Linq\OrderedParallelQuery.cs" />\r
-    <Compile Include="System.Linq\OrderedSequence.cs" />\r
-    <Compile Include="System.Linq\ParallelEnumerable.cs" />\r
-    <Compile Include="System.Linq\ParallelExecutionMode.cs" />\r
-    <Compile Include="System.Linq\ParallelMergeOptions.cs" />\r
-    <Compile Include="System.Linq\ParallelQuery.cs" />\r
-    <Compile Include="System.Linq\Queryable.cs" />\r
-    <Compile Include="System.Linq\QueryableEnumerable.cs" />\r
-    <Compile Include="System.Linq\QueryableTransformer.cs" />\r
-    <Compile Include="System.Linq\QuickSort.cs" />\r
-    <Compile Include="System.Linq\SortContext.cs" />\r
-    <Compile Include="System.Linq\SortDirection.cs" />\r
-    <Compile Include="System.Linq\SortSequenceContext.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DynamicAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IStrongBox.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StrongBox_T.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesManaged.cs" />\r
-    <Compile Include="System.Security.Cryptography\AesTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\CngAlgorithmGroup.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512Cng.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExtensions.cs" />\r
-    <Compile Include="System.Threading\LockRecursionException.cs" />\r
-    <Compile Include="System.Threading\LockRecursionPolicy.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlim.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLockSlimExtensions.cs" />\r
-    <Compile Include="System.Threading\ThreadLockState.cs" />\r
-    <Compile Include="System\Actions.cs" />\r
-    <Compile Include="System\Funcs.cs" />\r
-    <Compile Include="System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="System\TimeZoneInfo.AdjustmentRule.cs" />\r
-    <Compile Include="System\TimeZoneInfo.cs" />\r
-    <Compile Include="System\TimeZoneInfo.TransitionTime.cs" />\r
-    <Compile Include="System\TimeZoneNotFoundException.cs" />\r
-    <Compile Include="System\Util.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PreBuildEvent>
-    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PreBuildEvent>
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="../corlib/corlib-build.csproj">\r
-      <Project>{0CAF787F-F70B-4556-987A-67E036CD71C1}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System/System-bare-build.csproj">\r
-      <Project>{6E4F4BFB-2900-4663-B922-F176B2358C12}</Project>\r
-      <Name>System\System-bare-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Mono.Posix/Mono.Posix-build.csproj">\r
-      <Project>{52643CBD-F1A3-46D6-926B-E5302C18F7F0}</Project>\r
-      <Name>Mono.Posix\Mono.Posix-build</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index 85e07de17a51eece6b9c0d137f1fba6922cbc2a8..110a22b1b29efd2295f370df532da13da5bba1ee 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1720</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/plaincore</OutputPath>\r
+    <IntermediateOutputPath>obj-plaincore</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\DynamicExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\ExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\IArgumentProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Ast\IDynamicExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Extension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\Function.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\Microsoft\Scripting\Utils\StrongBox.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\BitHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSetDebugView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Collections\Generic\HashSetEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\FuncAndAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\Enums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\Enums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Enumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Expressions\ExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\IQueryable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Channels\AsynchronousChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Channels\SynchronousChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\EmptyEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\EnumerableWrapperWeakToStrong.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\IParallelPartitionable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\OrderedParallelQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelEnumerableWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\QueryAggregationOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\RangeEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Enumerables\RepeatEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\ArrayMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\AsynchronousChannelMergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\DefaultMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\IMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\MergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\MergeExecutor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingPipeliningMergeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Merging\SynchronousChannelMergeEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\IPartitionedStreamRecipient.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Partitioning\UnorderedHashRepartitionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\AssociativeAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\GroupJoinQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\JoinQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ZipQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\BinaryQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\CountAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongCountAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongMinMaxAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongSumAggregationOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ListQueryResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\OrderingQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\QueryExecutionOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\OrdinalIndexState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionedStreamMerger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionerQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOpeningEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperatorEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QuerySettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ScanQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\AnyAllSearchOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ConcatQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ContainsSearchOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DefaultIfEmptyQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DistinctQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ElementAtQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\FirstQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ForAllOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\GroupByQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedSelectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedWhereQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\LastQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SingleQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\WhereQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\QueryOperators\UnaryQueryOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\CancellationState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingSpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryLifecycle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTaskGroupState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\Scheduling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTask.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTaskBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\CancellableEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ExceptionAggregator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ExchangeUtilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\FixedMaxHeap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\GrowingArray.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\HashLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\IntValueEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ListChunk.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Lookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Pair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\PairComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\ReverseComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Shared.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Sorting.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\TraceHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Util.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\Wrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\Parallel\Utils\WrapperEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelExecutionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\ParallelMergeOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\SequenceQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Linq\TypeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Runtime\CompilerServices\DynamicAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Runtime\CompilerServices\ExecutionScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\Aes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\AesManaged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\CngKeyBlobFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellman.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellmanPublicKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECDsa.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\Security\Cryptography\ECKeyXmlFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\ReaderWriterLockSlim\LockRecursionException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\ReaderWriterLockSlim\ReaderWriterLockSlim.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\threading\Tasks\TaskExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\TimeZoneInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Core\System\TimeZoneNotFoundException.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BinaryOperationBinder.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Actions\BindingRestrictions.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\ReflectionUtils.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TrueReadOnlyCollection.cs" />\r
     <Compile Include="..\dlr\Runtime\Microsoft.Scripting.Core\Utils\TypeExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\DynamicExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\ExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\IArgumentProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Ast\IDynamicExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Action.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Extension.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\Function.cs" />\r
+    <Compile Include="..\referencesource\System.Core\Microsoft\Scripting\Utils\StrongBox.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\BitHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSet.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSetDebugView.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Collections\Generic\HashSetEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\FuncAndAction.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\InvalidTimeZoneException.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\Enums.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\Enums.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedFileSecurity.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\IO\MemoryMappedFiles\MemoryMappedViewStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Enumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Expressions\ExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\IQueryable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Channels\AsynchronousChannel.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Channels\SynchronousChannel.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\EmptyEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\EnumerableWrapperWeakToStrong.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\IParallelPartitionable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\OrderedParallelQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelEnumerableWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\ParallelQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\QueryAggregationOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\RangeEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Enumerables\RepeatEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\ArrayMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\AsynchronousChannelMergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\DefaultMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\IMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\MergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\MergeExecutor.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\OrderPreservingPipeliningMergeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Merging\SynchronousChannelMergeEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\HashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\IPartitionedStreamRecipient.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\OrderedHashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\PartitionedStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Partitioning\UnorderedHashRepartitionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\AssociativeAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\GroupJoinQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\JoinQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Binary\ZipQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\BinaryQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\CountAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DecimalSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\DoubleSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\FloatSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\InlinedAggregationOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\IntSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongCountAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\LongSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableFloatSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableIntSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongMinMaxAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Inlined\NullableLongSumAggregationOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ListQueryResults.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\OrderingQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Options\QueryExecutionOption.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\OrdinalIndexState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionedStreamMerger.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\PartitionerQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOpeningEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryOperatorEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QueryResults.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\QuerySettings.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\ScanQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\AnyAllSearchOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ConcatQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ContainsSearchOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DefaultIfEmptyQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\DistinctQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ElementAtQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\FirstQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ForAllOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\GroupByQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedSelectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\IndexedWhereQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\LastQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SelectQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SingleQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\Unary\WhereQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\QueryOperators\UnaryQueryOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\CancellationState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\OrderPreservingSpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryLifecycle.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\QueryTaskGroupState.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\Scheduling.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTask.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Scheduling\SpoolingTaskBase.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\CancellableEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ExceptionAggregator.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ExchangeUtilities.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\FixedMaxHeap.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\GrowingArray.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\HashLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\IntValueEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ListChunk.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Lookup.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Pair.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\PairComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\ReverseComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Shared.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Sorting.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\TraceHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Util.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\Wrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\Parallel\Utils\WrapperEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelExecutionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\ParallelMergeOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\SequenceQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Linq\TypeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Runtime\CompilerServices\DynamicAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Runtime\CompilerServices\ExecutionScope.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\Aes.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\AesManaged.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\CngKeyBlobFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellman.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDiffieHellmanPublicKey.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECDsa.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\Security\Cryptography\ECKeyXmlFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\ReaderWriterLockSlim\LockRecursionException.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\ReaderWriterLockSlim\ReaderWriterLockSlim.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\threading\Tasks\TaskExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\TimeZoneInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Core\System\TimeZoneNotFoundException.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedFileHandle.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafeMemoryMappedViewHandle.cs" />\r
     <Compile Include="Microsoft.Win32.SafeHandles\SafePipeHandle.cs" />\r
     <Compile Include="ReferenceSources\Error.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
+    <Compile Include="ReferenceSources\SR.missing.cs" />\r
     <Compile Include="ReferenceSources\Strings.cs" />\r
     <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedFile.cs" />\r
     <Compile Include="System.IO.MemoryMappedFiles\MemoryMappedView.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index b61fcb2bf4dbda1e403cf6b0c84d9539361b605d..27191c37ed2b7b121d2f1926471d459add1d013f 100644 (file)
@@ -379,7 +379,9 @@ namespace MonoTests.System.IO.MemoryMappedFiles {
                [Test]
                public void CreateViewStreamAlignToPageSize ()
                {
-#if MONOTOUCH
+#if __WATCHOS__
+                       int pageSize = 4096;
+#elif MONOTOUCH
                        // iOS bugs on ARM64 - bnc #27667 - apple #
                        int pageSize = (IntPtr.Size == 4) ? Environment.SystemPageSize : 4096;
 #else
diff --git a/mcs/class/System.Core/mobile_static_System.Core_test.dll.exclude.sources b/mcs/class/System.Core/mobile_static_System.Core_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..f98bf05
--- /dev/null
@@ -0,0 +1 @@
+System.IO.Pipes/PipeSecurityTest.cs
diff --git a/mcs/class/System.Core/mobile_static_System.Core_test.dll.excludes b/mcs/class/System.Core/mobile_static_System.Core_test.dll.excludes
deleted file mode 100644 (file)
index f98bf05..0000000
+++ /dev/null
@@ -1 +0,0 @@
-System.IO.Pipes/PipeSecurityTest.cs
diff --git a/mcs/class/System.Core/monodroid_System.Core_test.dll.exclude.sources b/mcs/class/System.Core/monodroid_System.Core_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..40eb2dc
--- /dev/null
@@ -0,0 +1,2 @@
+#include mobile_static_System.Core_test.dll.exclude.sources
+#include monodroid_System.Core_test.dll.new-exclude.sources
diff --git a/mcs/class/System.Core/monodroid_System.Core_test.dll.new-exclude.sources b/mcs/class/System.Core/monodroid_System.Core_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..cabaa42
--- /dev/null
@@ -0,0 +1,5 @@
+../../corlib/Test/System.Security.Cryptography/HashAlgorithmTest.cs
+../../corlib/Test/System.Security.Cryptography/SHA1Test.cs
+../../corlib/Test/System.Security.Cryptography/SHA256Test.cs
+../../corlib/Test/System.Security.Cryptography/SHA384Test.cs
+../../corlib/Test/System.Security.Cryptography/SHA512Test.cs
diff --git a/mcs/class/System.Core/monodroid_System.Core_test.dll.sources b/mcs/class/System.Core/monodroid_System.Core_test.dll.sources
new file mode 100644 (file)
index 0000000..33e2a10
--- /dev/null
@@ -0,0 +1 @@
+#include System.Core_test.dll.sources
index ba4fe8a506ddf395f6a0f5f35f2d3c7fd1f03690..8d845d576bfdb841b95a8725dad1639f3457a468 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\DataRowComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\DataRowExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\DataSetUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\DataTableExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\EnumerableRowCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\EnumerableRowCollectionExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\LinqDataView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\OrderedEnumerableRowCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\SortExpressionBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\TypedTableBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.DataSetExtensions\System\Data\TypedTableBaseExtensions.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\DataRowComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\DataRowExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\DataSetUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\DataTableExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\EnumerableRowCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\EnumerableRowCollectionExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\LinqDataView.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\OrderedEnumerableRowCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\SortExpressionBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\TypedTableBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.DataSetExtensions\System\Data\TypedTableBaseExtensions.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\Strings.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c78915cad5c024e8e2322fb294f78077224c5344..25275651f16facb771430c017c4c282435c06060 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\misc\HResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\AbstractExpressions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Aggregates.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\BasicCommandTreeVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\BasicExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbDeleteCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbExpressionVisitor_TResultType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbFunctionCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbInsertCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbLambda.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbModificationClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbModificationCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbQueryCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbSetClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbUpdateCommandTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DefaultExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBindings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\DbExpressionBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\EdmFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Internal\ArgumentValidation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Internal\EnumerableValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Row.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Spatial\SpatialEdmFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\DbExpressionRules.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionCopier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionDumper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionKeyGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionPrinter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ParameterRetriever.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\PatternMatchRules.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\Validator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ViewSimplifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\XmlExpressionDumper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\OperatorExpressions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\RelationalExpressions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ValueExpressions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DataRecordInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DbCommandDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DbProviderManifest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DbProviderServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\DbXmlEnabledProviderManifest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntityRecordInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\AliasedExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\AstNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\BuiltInExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\CaseExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Command.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\ConstructorExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\CreateRefExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\DotExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\FunctionDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\GroupAggregateExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\GroupPartitionExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Identifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Literal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\MethodExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\NamespaceImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\NavigationExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\ParenExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\RefExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\TypeDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlErrorHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlLexer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlLexerHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlParserHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\EntitySqlParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\FunctionOverloadResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\ParseResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\ParserOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\SemanticAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\SemanticResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\StaticContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntitySql\TypeResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\EntityUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\FieldMetadata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\FieldNameLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\DbTypeMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\ColumnMapKeyBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CompensatingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Coordinator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CoordinatorFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CoordinatorScratchpad.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordStateFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordStateScratchpad.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Shaper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\ShaperFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Translator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Util.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Internal\MultipartIdentifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\CompiledQueryCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\CompiledQueryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\EntityClientCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\EntitySqlQueryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\LinqQueryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\QueryCache\ShaperFactoryQueryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\AliasGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\BoolExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Clause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\ConversionContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\DomainConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\IdentifierService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\KnowledgeBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Literal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\NegationPusher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Sentence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Simplifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Solver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Vertex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Visitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\ByValueEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\CommandHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\DisposableCollectionWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Helpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\InternalBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\KeyToListMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Memoizer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\MetadataHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\ModifiableIteratorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Pair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Set.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\Singleton.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\StringUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\ThreadSafeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\TrailingSpaceComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Common\Utils\TreePrinter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\DbConnectionOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\DbParameterCollectionHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\DbParameterHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityCommandDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityConnection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityConnectionStringBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityProviderFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityProviderServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\EntityTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityClient\NameValuePair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityCommandCompilationException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityCommandExecutionException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\BooleanFacetDescriptionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ByteFacetDescriptionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\CollectionKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\CollectionTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ConcurrencyMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Documentation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerAssociationSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerAssociationSetEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerEntitySet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerEntitySetDefiningQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerRelationshipSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerRelationshipSetEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityKeyElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ErrorCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FacetDescriptionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FacetEnabledSchemaElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FilteredSchemaElementLookUpTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Function.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FunctionCommandText.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FunctionImportElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IntegerFacetDescriptionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IRelationship.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IRelationshipEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ISchemaElementLookUpTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ItemType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\KeyProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ModelFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ModelFunctionTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\NavigationProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\OnOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Operation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Parameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\PrimitiveSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Property.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferenceSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferenceTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferentialConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferentialConstraintRoleElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Relationship.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RelationshipEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RelationshipEndCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReturnType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReturnValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RowTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RowTypePropertyElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ScalarType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Schema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaComplexType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaDataModelOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElementLookUpTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElementLookUpTableEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaEnumMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaEnumType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaLookupTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SridFacetDescriptionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StoreGeneratedPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StructuredProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StructuredType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TextElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeModifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeRefElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeUsageBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Utils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ValidationHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\XmlSchemaResource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntitySqlException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\EntityState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\IEntityAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\IEntityStateEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\IEntityStateManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\IExtendedDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\InternalMappingException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\InvalidCommandTreeException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\BaseMetadataMappingVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\DefaultObjectMappingItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\EntityViewContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\EntityViewGenerationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMapping.ReturnTypeRenameMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMappingComposable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMappingNonComposable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Mapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\MappingItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\MetadataMappingHasherVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\MetadataMappingHasherVisitor.HashSourceBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectAssociationEndMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectComplexPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectMemberMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectMslConstructs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectNavigationPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ObjectTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageAssociationSetMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageAssociationTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageComplexPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageComplexTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageConditionPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageEndPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntityContainerMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntitySetMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntityTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingErrorCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingFragment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemCollection.ViewDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageModificationFunctionMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageMslConstructs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StoragePropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageScalarPropertyMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageSetMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\StorageTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\AssociationSetMetadata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ChangeNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\CompositeKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\DynamicUpdateCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ExtractedStateEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ExtractorMetadata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\FunctionMappingTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\FunctionUpdateCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Graph.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\KeyManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.Evaluator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.ExtentPlaceholderCreator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.JoinPredicateVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.SubstitutingCloneVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\PropagatorFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\PropagatorResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\RecordConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\RelationshipConstraintValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\SourceInterpreter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\TableChangeProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UndirectedGraph.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCommandOrderer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ViewLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\BasicViewGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellCreator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellPartitioner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellTreeSimplifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ConfigViewGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\AliasedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\BooleanProjectedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CaseCqlBlock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlBlock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlIdentifiers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\ExtentCqlBlock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\JoinCqlBlock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\SlotInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\UnionCqlBlock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\DiscriminatorMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\GeneratedView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQueryKB.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQueryProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\QueryRewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingPass.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingSimplifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RoleBoolean.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\Tile.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolExpressionVisitors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolLiteral.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CaseStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CaseStatementProjectedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Cell.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellIdBoolean.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellLabel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeNodeVisitors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeOpType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Constant.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ConstantProjectedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Domain.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ErrorLog.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\LeafCellTreeNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\LeftCellWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberDomainMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberMaps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberPath.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberProjectedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberProjectionIndex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\NegatedConstant.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\OpCellTreeNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ProjectedSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\QualifiedCellIdBoolean.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ScalarConstant.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ScalarRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\TypeConstant.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\TypeRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\WithStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ExceptionHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ExternalCalls.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ViewGenErrorCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\BasicCellRelation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\BasicKeyConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\CellRelation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ConstraintBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ErrorPatternMatcher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ExtentKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ForeignConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\KeyConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\SchemaConstraints.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewCellRelation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewCellSlot.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewKeyConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewgenContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewgenGatekeeper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewGenResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Mapping\ViewValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\MappingException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\AspProxy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\CacheForPrimitiveTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ClrPerspective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\CustomAssemblyResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\DataSpace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\DefaultAssemblyResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationEndMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationSetEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AttributeKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\BuiltInKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\CollectionType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ComplexType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Documentation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmConstants.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySetBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySetBaseCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityTypeBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EnumMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EnumType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Facet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetDescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetValueContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetValues.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FilteredReadOnlyMetadataCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FunctionParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\GlobalItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\LightweightCodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MemberCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataItem_Static.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyvalue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\NavigationProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\NavigationPropertyAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\OperationAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ParameterMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\PrimitiveType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\PrimitiveTypeKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\ClrProviderManifest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifestFunctionBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifestSpatialFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ReadOnlyMetadataCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ReferentialConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RefType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipEndMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipMultiplicity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RowType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SafeLink.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SafeLinkCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SimpleType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\StructuralType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\TypeUsage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Edm\util.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemCollection.OcAssemblyCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmSchemaError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmSchemaErrorSeverity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\EdmValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Helper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MappingMetadataHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactAssemblyResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderComposite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderCompositeFile.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderCompositeResource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderFile.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderResource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderXmlReaderWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\MetadataWorkspace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ModelPerspective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\AssemblyCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\AssemblyCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ImmutableAssemblyCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\KnownAssembliesSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\KnownAssemblyEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\LoadMessageLogger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\LockedAssemblyCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\MetadataAssemblyHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\MutableAssemblyCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemAssemblyLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemAttributeAssemblyLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemCachedAssemblyLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemConventionAssemblyLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemLoadingSessionData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemNoOpAssemblyLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\ParameterTypeSemantics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\Perspective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\StoreItemCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\StoreItemCollection.Loader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\TargetPerspective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\TypeHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\TypeSemantics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Metadata\XmlConstants.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\MetadataException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\ObjectNotFoundException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\AdditionalEntityFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\CompiledQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\ComplexObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmComplexPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmComplexTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmEntityTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmEnumTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmFunctionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmRelationshipNavigationPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmRelationshipRoleAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmScalarPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmSchemaAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityReference_TResultType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityChangeTracker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithChangeTracker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithRelationships.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IRelatedEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IRelationshipFixer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelatedEnd.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipFixer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipKind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipNavigation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\StructuralObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\DataRecordObjectView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\BindingContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\CompiledELinqQueryState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ELinqQueryState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\EntityExpressionVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ExpressionConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ExpressionVisitorHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\Funcletizer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\InitializerFacet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\LinqExpressionNormalizer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\MethodCallTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ObjectQueryProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\OrderByLifter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ReflectionUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\SpatialMethodCallTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\SpatialPropertyTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\Translator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ELinq\TypeSystem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\EntityEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\EntityFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\FieldDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\BaseEntityWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ComplexTypeMaterializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityProxyFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityProxyTypeInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntitySqlQueryBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntitySqlQueryState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWithChangeTrackerStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWithKeyStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWrapperFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ForeignKeyFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\IChangeTrackingStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\IEntityKeyStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\IEntityWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\IPropertyAccessorStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\LazyLoadBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\LightweightEntityWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\NullEntityWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectFullSpanRewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectQueryExecutionPlan.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectQueryState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectSpanRewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\PocoEntityKeyStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\PocoPropertyAccessorStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\SnapshotChangeTrackingStrategy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Internal\TransactionManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\IObjectSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\IObjectView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\IObjectViewData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\MergeOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\NextResultGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectMaterializedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery_EntitySqlExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery_TResultType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectResult_TResultType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryBaseUpdatableDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryDbDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryDbUpdatableDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryOriginalDbUpdatableDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateManagerMetadata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewEntityCollectionData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewQueryResultData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\ProxyDataContractResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\RefreshMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\RelationshipEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\RelationshipWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\SaveOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\Span.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\SpanIndex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\SqlClient\SqlFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Objects\SqlClient\SqlSpatialFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\OptimisticConcurrencyException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\PropertyConstraintException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\ProviderIncompatibleException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\AncillaryOps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\BasicValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapCopier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Command.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Dump.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ExplicitDiscriminatorMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Metadata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\NodeCounter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\NodeInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Nodes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\OpCopier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Ops.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\PhysicalOps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RelOps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RelPropertyHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Rule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RulePatternOps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RuleProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ScalarOps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Vars.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Visitors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\AggregatePushdown.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CodeGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ColumnMapProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ColumnMapTranslator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CommandPlan.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ConstraintManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CTreeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ITreeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\JoinElimination.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\JoinGraph.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\KeyPullup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\NestPullup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\NominalTypeEliminator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Normalizer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PlanCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PlanCompilerUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Predicate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PreProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ProjectionPruner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PropertyPushdownHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PropertyRef.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ProviderCommandInfoUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\StructuredTypeInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\SubqueryTrackingVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TransformationRules.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TypeInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TypeUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Validator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarRefManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarRemapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\ResultAssembly\BridgeDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Query\ResultAssembly\BridgeDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbGeography.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbGeographyWellKnownValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbGeometry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbGeometryWellKnownValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbSpatialDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DbSpatialServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\DefaultSpatialServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\ExtensionMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\Internal\SpatialExceptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\Spatial\SpatialHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\IDbSpatialValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\DmlSqlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\ISqlFragment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\JoinSymbol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\OptionalColumn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Sql8ConformanceChecker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Sql8ExpressionRewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlFunctionCallHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlSelectClauseBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlSelectStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Symbol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolPair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolUsageManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\TopClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderManifest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderUtilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialServices.Generated.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlTypesAssembly.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\SqlClient\SqlVersion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\System\Data\UpdateException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.Entity\Util\AppSettings.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\misc\HResults.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\AbstractExpressions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Aggregates.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\BasicCommandTreeVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\BasicExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbDeleteCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbExpressionVisitor_TResultType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbFunctionCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbInsertCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbLambda.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbModificationClause.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbModificationCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbQueryCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbSetClause.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DbUpdateCommandTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\DefaultExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBindings.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\DbExpressionBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\EdmFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Internal\ArgumentValidation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Internal\EnumerableValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Row.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ExpressionBuilder\Spatial\SpatialEdmFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\DbExpressionRules.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionCopier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionDumper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionKeyGen.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ExpressionPrinter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ParameterRetriever.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\PatternMatchRules.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\Validator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\ViewSimplifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\Internal\XmlExpressionDumper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\OperatorExpressions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\RelationalExpressions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\CommandTrees\ValueExpressions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DataRecordInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DbCommandDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DbProviderManifest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DbProviderServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\DbXmlEnabledProviderManifest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntityRecordInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\AliasedExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\AstNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\BuiltInExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\CaseExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Command.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\ConstructorExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\CreateRefExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\DotExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\FunctionDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\GroupAggregateExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\GroupPartitionExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Identifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\Literal.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\MethodExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\NamespaceImport.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\NavigationExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\ParenExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\QueryStatement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\RefExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\AST\TypeDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlErrorHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlLexer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlLexerHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlParserHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\CqlQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\EntitySqlParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\FunctionOverloadResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\ParseResult.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\ParserOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\SemanticAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\SemanticResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\StaticContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntitySql\TypeResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\EntityUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\FieldMetadata.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\FieldNameLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\DbTypeMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\ColumnMapKeyBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CompensatingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Coordinator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CoordinatorFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\CoordinatorScratchpad.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordStateFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\RecordStateScratchpad.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Shaper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\ShaperFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Translator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\Materialization\Util.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Internal\MultipartIdentifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\CompiledQueryCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\CompiledQueryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\EntityClientCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\EntitySqlQueryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\LinqQueryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\QueryCacheManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\QueryCache\ShaperFactoryQueryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\AliasGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\BoolExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Clause.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\ConversionContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Converter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\DomainConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\IdentifierService.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\KnowledgeBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Literal.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\NegationPusher.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Sentence.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Simplifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Solver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Vertex.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Boolean\Visitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\ByValueEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\CommandHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\DisposableCollectionWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Helpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\InternalBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\KeyToListMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Memoizer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\MetadataHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\ModifiableIteratorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Pair.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Set.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\Singleton.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\StringUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\ThreadSafeList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\TrailingSpaceComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Common\Utils\TreePrinter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\DbConnectionOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\DbParameterCollectionHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\DbParameterHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityCommandDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityConnection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityConnectionStringBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityProviderFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityProviderServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\EntityTransaction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityClient\NameValuePair.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityCommandCompilationException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityCommandExecutionException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Action.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\BooleanFacetDescriptionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ByteFacetDescriptionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\CollectionKind.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\CollectionTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ConcurrencyMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Documentation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerAssociationSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerAssociationSetEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerEntitySet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerEntitySetDefiningQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerRelationshipSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityContainerRelationshipSetEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\EntityKeyElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ErrorCode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FacetDescriptionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FacetEnabledSchemaElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FilteredSchemaElementLookUpTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Function.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FunctionCommandText.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\FunctionImportElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IntegerFacetDescriptionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IRelationship.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\IRelationshipEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ISchemaElementLookUpTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ItemType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\KeyProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ModelFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ModelFunctionTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\NavigationProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\OnOperation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Operation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Parameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\PrimitiveSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Property.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferenceSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferenceTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferentialConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReferentialConstraintRoleElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Relationship.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RelationshipEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RelationshipEndCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReturnType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ReturnValue.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RowTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\RowTypePropertyElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ScalarType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Schema.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaComplexType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaDataModelOption.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElementLookUpTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaElementLookUpTableEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaEnumMember.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaEnumType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaLookupTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\SridFacetDescriptionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StoreGeneratedPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StructuredProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\StructuredType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TextElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeModifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeRefElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\TypeUsageBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\Utils.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\ValidationHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityModel\SchemaObjectModel\XmlSchemaResource.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntitySqlException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\EntityState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\IEntityAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\IEntityStateEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\IEntityStateManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\IExtendedDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\InternalMappingException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\InvalidCommandTreeException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\BaseMetadataMappingVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\DefaultObjectMappingItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\EntityViewContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\EntityViewGenerationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMapping.ReturnTypeRenameMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMappingComposable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\FunctionImportMappingNonComposable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Mapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\MappingItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\MetadataMappingHasherVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\MetadataMappingHasherVisitor.HashSourceBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectAssociationEndMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectComplexPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectMemberMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectMslConstructs.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectNavigationPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ObjectTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageAssociationSetMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageAssociationTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageComplexPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageComplexTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageConditionPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageEndPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntityContainerMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntitySetMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageEntityTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingErrorCode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingFragment.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemCollection.ViewDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMappingItemLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageModificationFunctionMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageMslConstructs.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StoragePropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageScalarPropertyMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageSetMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\StorageTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\AssociationSetMetadata.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ChangeNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\CompositeKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\DynamicUpdateCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ExtractedStateEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ExtractorMetadata.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\FunctionMappingTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\FunctionUpdateCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Graph.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\KeyManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.Evaluator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.ExtentPlaceholderCreator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.JoinPredicateVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.SubstitutingCloneVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\PropagatorFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\PropagatorResult.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\RecordConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\RelationshipConstraintValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\SourceInterpreter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\TableChangeProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UndirectedGraph.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCommandOrderer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\UpdateTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\Update\Internal\ViewLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\BasicViewGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellCreator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellPartitioner.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CellTreeSimplifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ConfigViewGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\AliasedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\BooleanProjectedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CaseCqlBlock.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlBlock.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlIdentifiers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\CqlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\ExtentCqlBlock.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\JoinCqlBlock.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\SlotInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGeneration\UnionCqlBlock.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\CqlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\DiscriminatorMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\GeneratedView.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQueryKB.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\FragmentQueryProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\QueryRewriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingPass.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingSimplifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RewritingValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\RoleBoolean.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\QueryRewriting\Tile.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolExpressionVisitors.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\BoolLiteral.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CaseStatement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CaseStatementProjectedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Cell.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellIdBoolean.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellLabel.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeNodeVisitors.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\CellTreeOpType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Constant.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ConstantProjectedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\Domain.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ErrorLog.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\LeafCellTreeNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\LeftCellWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberDomainMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberMaps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberPath.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberProjectedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberProjectionIndex.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\MemberRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\NegatedConstant.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\OpCellTreeNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ProjectedSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\QualifiedCellIdBoolean.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ScalarConstant.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\ScalarRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\TypeConstant.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\TypeRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Structures\WithStatement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ExceptionHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ExternalCalls.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Utils\ViewGenErrorCode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\BasicCellRelation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\BasicKeyConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\CellRelation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ConstraintBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ErrorPatternMatcher.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ExtentKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ForeignConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\KeyConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\SchemaConstraints.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewCellRelation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewCellSlot.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validation\ViewKeyConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\Validator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewgenContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewgenGatekeeper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewGeneration\ViewGenResults.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Mapping\ViewValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\MappingException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\AspProxy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\CacheForPrimitiveTypes.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ClrPerspective.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Converter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\CustomAssemblyResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\DataSpace.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\DefaultAssemblyResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationEndMember.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationSetEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AssociationType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\AttributeKind.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\BuiltInKind.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\CollectionType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ComplexType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Documentation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmConstants.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmMember.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EdmType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySetBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntitySetBaseCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EntityTypeBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EnumMember.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\EnumType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Facet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetDescription.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetValueContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FacetValues.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FilteredReadOnlyMetadataCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\FunctionParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\GlobalItem.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\LightweightCodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MemberCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataItem.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataItem_Static.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\MetadataPropertyvalue.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\NavigationProperty.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\NavigationPropertyAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\OperationAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ParameterMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\PrimitiveType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\PrimitiveTypeKind.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\ClrProviderManifest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifestFunctionBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\Provider\EdmProviderManifestSpatialFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ReadOnlyMetadataCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\ReferentialConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RefType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipEndMember.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipMultiplicity.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RelationshipType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\RowType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SafeLink.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SafeLinkCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\SimpleType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\StructuralType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\TypeUsage.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Edm\util.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmError.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemCollection.OcAssemblyCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmItemError.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmSchemaError.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmSchemaErrorSeverity.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\EdmValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Helper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MappingMetadataHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactAssemblyResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderComposite.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderCompositeFile.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderCompositeResource.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderFile.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderResource.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataArtifactLoaderXmlReaderWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\MetadataWorkspace.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ModelPerspective.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\AssemblyCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\AssemblyCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ImmutableAssemblyCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\KnownAssembliesSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\KnownAssemblyEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\LoadMessageLogger.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\LockedAssemblyCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\MetadataAssemblyHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\MutableAssemblyCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemAssemblyLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemAttributeAssemblyLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemCachedAssemblyLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemConventionAssemblyLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemLoadingSessionData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ObjectLayer\ObjectItemNoOpAssemblyLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\ParameterTypeSemantics.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\Perspective.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\StoreItemCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\StoreItemCollection.Loader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\TargetPerspective.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\TypeHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\TypeSemantics.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Metadata\XmlConstants.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\MetadataException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\ObjectNotFoundException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\AdditionalEntityFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\CompiledQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\ComplexObject.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmComplexPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmComplexTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmEntityTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmEnumTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmFunctionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmRelationshipNavigationPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmRelationshipRoleAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmScalarPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmSchemaAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EdmTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityObject.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityReference.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\EntityReference_TResultType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityChangeTracker.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithChangeTracker.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IEntityWithRelationships.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IRelatedEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\IRelationshipFixer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelatedEnd.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipFixer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipKind.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\RelationshipNavigation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataClasses\StructuralObject.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\DataRecordObjectView.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\BindingContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\CompiledELinqQueryState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ELinqQueryState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\EntityExpressionVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ExpressionConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ExpressionVisitorHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\Funcletizer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\InitializerFacet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\LinqExpressionNormalizer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\MethodCallTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ObjectQueryProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\OrderByLifter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\ReflectionUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\SpatialMethodCallTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\SpatialPropertyTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\Translator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ELinq\TypeSystem.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\EntityEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\EntityFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\FieldDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\BaseEntityWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ComplexTypeMaterializer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityProxyFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityProxyTypeInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntitySqlQueryBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntitySqlQueryState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWithChangeTrackerStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWithKeyStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\EntityWrapperFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ForeignKeyFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\IChangeTrackingStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\IEntityKeyStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\IEntityWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\IPropertyAccessorStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\LazyLoadBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\LightweightEntityWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\NullEntityWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectFullSpanRewriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectQueryExecutionPlan.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectQueryState.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\ObjectSpanRewriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\PocoEntityKeyStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\PocoPropertyAccessorStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\SnapshotChangeTrackingStrategy.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Internal\TransactionManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\IObjectSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\IObjectView.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\IObjectViewData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\MergeOption.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\NextResultGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectMaterializedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery_EntitySqlExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectQuery_TResultType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectResult.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectResult_TResultType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryBaseUpdatableDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryDbDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryDbUpdatableDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateEntryOriginalDbUpdatableDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectStateManagerMetadata.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectView.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewEntityCollectionData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewListener.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ObjectViewQueryResultData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\ProxyDataContractResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\RefreshMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\RelationshipEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\RelationshipWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\SaveOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\Span.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\SpanIndex.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\SqlClient\SqlFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Objects\SqlClient\SqlSpatialFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\OptimisticConcurrencyException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\PropertyConstraintException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\ProviderIncompatibleException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\AncillaryOps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\BasicValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapCopier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ColumnMapVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Command.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Dump.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ExplicitDiscriminatorMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Metadata.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\NodeCounter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\NodeInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Nodes.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\OpCopier.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Ops.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\PhysicalOps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RelOps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RelPropertyHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Rule.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RulePatternOps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\RuleProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\ScalarOps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Vars.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\InternalTrees\Visitors.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\AggregatePushdown.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CodeGen.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ColumnMapProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ColumnMapTranslator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CommandPlan.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ConstraintManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\CTreeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ITreeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\JoinElimination.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\JoinGraph.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\KeyPullup.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\NestPullup.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\NominalTypeEliminator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Normalizer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PlanCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PlanCompilerUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Predicate.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PreProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ProjectionPruner.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PropertyPushdownHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\PropertyRef.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\ProviderCommandInfoUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\StructuredTypeInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\SubqueryTrackingVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TransformationRules.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TypeInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\TypeUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\Validator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarRefManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\PlanCompiler\VarRemapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\ResultAssembly\BridgeDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Query\ResultAssembly\BridgeDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbGeography.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbGeographyWellKnownValue.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbGeometry.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbGeometryWellKnownValue.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbSpatialDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DbSpatialServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\DefaultSpatialServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\ExtensionMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\Internal\SpatialExceptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\Spatial\SpatialHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\IDbSpatialValue.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\DmlSqlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\ISqlFragment.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\JoinSymbol.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\OptionalColumn.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Sql8ConformanceChecker.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Sql8ExpressionRewriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlFunctionCallHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlSelectClauseBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlSelectStatement.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SqlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\Symbol.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolPair.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\SymbolUsageManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlGen\TopClause.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderManifest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlProviderUtilities.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialServices.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlSpatialServices.Generated.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlTypesAssembly.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\SqlClient\SqlVersion.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\System\Data\UpdateException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.Entity\Util\AppSettings.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="EntityRes.cs" />\r
     <Compile Include="EntityResCategoryAttribute.cs" />\r
     <Compile Include="EntityResDescriptionAttribute.cs" />\r
     <Compile Include="Error.cs" />\r
-    <Compile Include="Strings.cs" />\r  </ItemGroup>\r
+    <Compile Include="ReferenceSources\SR.cs" />\r
+    <Compile Include="ReferenceSources\Strings.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   <Target Name="BeforeBuild">\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 77f2f55a06ca3585a00b0e5d49f6df4165a3c92c..02e0b4aba48b76bfea5950cb7ce2047824976016 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 62165028ac9d8a184db73367557d7180ffc18519..e569ce44aadc5670c18fb99983c1862d418eb8d4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 108d98cf1499262eecf3a67dcca510a3d5711b57..f635e808fc329658af874cfc435ce89e38f985b1 100644 (file)
@@ -4,13 +4,11 @@ include ../../build/rules.make
 
 LIBRARY = System.Data.Services.Client.dll
 
-Client/System.Data.Services.Client.resources: Client/System.Data.Services.Client.txt
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = System.Data.Services.Client,Client/System.Data.Services.Client.txt
 
 LIB_REFS = System System.Core System.Xml.Linq System.Data System.Xml
 LIB_MCS_FLAGS = \
        -d:NET_3_5      \
-       -resource:Client/System.Data.Services.Client.resources \
        -warn:2
 
 ifndef NO_WINDOWS_BASE
@@ -21,7 +19,5 @@ endif
 
 include ../../build/library.make
 
-$(the_lib): Client/System.Data.Services.Client.resources
-
 EXTRA_DISTFILES = Client/System.Data.Services.Client.txt
-CLEAN_FILES += Client/System.Data.Services.Client.resources
+
index 82027455d0d6ef8182358cb7660350f0d2a50e84..e5d64222fa84dd2641e4f4a7f659b3028e15c7fd 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Client/System.Data.Services.Client.resources">\r
+    <EmbeddedResource Include="Client/System.Data.Services.Client.txt">\r
       <LogicalName>System.Data.Services.Client.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 37e35dd1808050ce1b988c6466ce93edf5425d91..6a4ef89e6c8bf13b70136105c1fa71096935b7c4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 23229be5f1c1fa726cf74a075c07bc37bb9efe79..552ec452530cb80208bf70b344bf1986735968df 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,169,219,414,649</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\bid\inc\cs\bidPrivateBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\Microsoft\SqlServer\Server\SqlTriggerContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\Misc\ExternDll.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\Misc\HResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\Misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\AcceptRejectRule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\AggregateType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\BaseCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\CatalogLocation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\CodeGen\datacache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\CodeGen\StrongTypingException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ColumnTypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\CommandBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\CommandType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\ActivityCorrelator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\AdapterSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\AdapterUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\BigIntegerStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\BooleanStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\ByteStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\CharStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataColumnMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataColumnMappingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataRecordInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataTableMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DataTableMappingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DateTimeOffsetStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DateTimeStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBCommandBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBConnection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbConnectionOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbConnectionPoolKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBConnectionString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbConnectionStringBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbConnectionStringCommon.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbDataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBDataPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBDataPermissionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\dbdatarecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbDataSourceEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\dbenumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbProviderConfigurationHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbProviderFactories.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbProviderFactoriesConfigurationHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbProviderFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbProviderSpecificTypePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBSchemaRow.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DBSchemaTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DbTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DecimalStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\DoubleStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\FieldNameLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\GreenMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\Groupbybehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\HandlerBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\identifiercase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\Int16Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\Int32Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\Int64Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\MultipartIdentifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\NameValuePair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\NameValuePermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\NativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\ObjectStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\RowUpdatedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\RowUpdatingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SafeNativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SByteStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SchemaTableColumn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SchemaTableOptionalColumn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SingleStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLBinaryStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQlBooleanStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLBytesStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLByteStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLCharsStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDateTimeStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDecimalStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDoubleStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLGuidStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt16Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt32Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt64Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLMoneyStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLSingleStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SQLStringStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SqlUDTStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SQLTypes\SqlXmlStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\StringStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\SupportedJoinOperators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\System.Data_BID.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\TimeSpanStorage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\UInt16Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\UInt32Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\UInt64Storage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Common\UnsafeNativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ConflictOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ConnectionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Constraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ConstraintCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ConstraintConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ConstraintEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataColumn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataColumnChangeEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataColumnChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataColumnCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataColumnPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRelation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRelationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRelationPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRow.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowChangeEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowCreatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowVersion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataRowView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataSerializationFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataSetDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataSysAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableClearEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableClearEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableNewRowEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableNewRowEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTablePropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableReaderListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataTableTypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewManagerListItemTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewRowState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewSetting.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DataViewSettingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DBConcurrencyException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\dbtype.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\DefaultValueTypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\FillErrorEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\FillErrorEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\AggregateNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\BinaryNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\ConstNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\DataExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\ExpressionNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\ExpressionParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\FilterException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\FunctionNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\IFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\LookupNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\NameNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\Operators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\UnaryNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Filter\ZeroOpNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ForeignKeyConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IColumnMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IColumnMappingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDataParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDataParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDbCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDbConnection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDbDataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDbDataParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IDbTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\IsolationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ITableMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ITableMappingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\LoadOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\MappingType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\MergeFailedEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\MergeFailedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Merger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\MissingMappingAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\MissingSchemaAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\DbDataRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\Odbc32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcCommandBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionOpen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionPoolProviderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcConnectionStringbuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcDataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcEnvironment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcEnvironmentHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcInfoMessageEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\odbcmetadatacollectionnames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\odbcmetadatacolumnnames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\odbcmetadatafactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcRowUpdatingEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcStatementHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Odbc\OdbcUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\ColumnBinding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\DBBindings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\DBPropSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OLEDB_Enum.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OLEDB_Util.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbCommandBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbConnection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbConnectionFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbConnectionInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbConnectionPoolGroupProviderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\oledbconnectionstring.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OledbConnectionStringbuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbDataAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbHResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbInfoMessageEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbInfoMessageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbLiteral.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\oledbmetadatacollectionnames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\oledbmetadatacolumnnames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbMetaDataFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbPropertySetGuid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbPropertyStatus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatedEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatingEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbSchemaGuid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbStruct.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\OleDbWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\PropertyAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\PropertyIDSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\PropertyInfoSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\RowBinding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OleDb\SafeHandles.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\OperationAbortedException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ParameterDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\PrimaryKeyTypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\PropertyCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DataReaderContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbBuffer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionClosed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPool.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolAuthenticationContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolAuthenticationContextKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolCounters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolGroupProviderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolIdentity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolProviderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataCollectionNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataColumnNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\DbReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\SchemaMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\TimeoutTimer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\ProviderBase\WrappedIUnknown.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Range.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RbTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RecordManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RecordsAffectedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RecordsAffectedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RelatedView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\RelationshipConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Rule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SchemaSerializationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Select.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Selection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SimpleType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\IBinarySerialize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\invalidudtexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlDataSourceEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlFacetAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlFunctionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlGenericUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlNotificationRequest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlProcedureAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlTriggerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlUserDefinedAggregateAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\SqlUserDefinedTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\Sql\TriggerAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\ApplicationIntent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\LocalDBAPI.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlClientEncryptionType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlClientPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlConnectionString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlConnectionStringBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlInfoMessageEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\SqlUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\TdsEnums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlClient\TdsParserStaticMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SqlDbType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\INullable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLBinary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLBoolean.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLByte.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLBytes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLChars.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SqlCharStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLDecimal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLDouble.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLGuid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLInt16.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLInt32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLInt64.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLMoney.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLResource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLSingle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SqlTypesSchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SQLUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\SQLTypes\SqlXml.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\StateChangeEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\StateChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\StatementType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\UniqueConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\UpdateRowSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\updatestatus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XDRSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlDataLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XMLDiffLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlKeywords.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlReadMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\xmlsaver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XMLSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlToDatasetMap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\Data\XmlWriteMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\BaseTreeIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\DataDocumentXPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\DataPointer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\DataSetMappper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\IXmlDataVirtualNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\RegionIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\TreeIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\XmlBoundElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\XmlDataDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\XmlDataImplementation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data\System\NewXml\XPathNodePointer.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Data\bid\inc\cs\bidPrivateBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data\Microsoft\SqlServer\Server\SqlTriggerContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data\Misc\ExternDll.cs" />\r
+    <Compile Include="..\referencesource\System.Data\Misc\HResults.cs" />\r
+    <Compile Include="..\referencesource\System.Data\Misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\AcceptRejectRule.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\AggregateType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\BaseCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\CatalogLocation.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\CodeGen\datacache.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\CodeGen\StrongTypingException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ColumnTypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\CommandBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\CommandType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\ActivityCorrelator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\AdapterSwitches.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\AdapterUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\BigIntegerStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\BooleanStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\ByteStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\CharStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataColumnMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataColumnMappingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataRecordInternal.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataTableMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DataTableMappingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DateTimeOffsetStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DateTimeStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBCommandBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBConnection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbConnectionOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbConnectionPoolKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBConnectionString.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbConnectionStringBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbConnectionStringCommon.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbDataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBDataPermission.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBDataPermissionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\dbdatarecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbDataSourceEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\dbenumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbProviderConfigurationHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbProviderFactories.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbProviderFactoriesConfigurationHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbProviderFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbProviderSpecificTypePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBSchemaRow.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DBSchemaTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DbTransaction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DecimalStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\DoubleStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\FieldNameLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\GreenMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\Groupbybehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\HandlerBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\identifiercase.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\Int16Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\Int32Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\Int64Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\MultipartIdentifier.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\NameValuePair.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\NameValuePermission.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\NativeMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\ObjectStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\RowUpdatedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\RowUpdatingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SafeNativeMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SByteStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SchemaTableColumn.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SchemaTableOptionalColumn.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SingleStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLBinaryStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQlBooleanStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLBytesStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLByteStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLCharsStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDateTimeStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDecimalStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLDoubleStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLGuidStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt16Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt32Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLInt64Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLMoneyStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLSingleStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SQLStringStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SqlUDTStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SQLTypes\SqlXmlStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\StringStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\SupportedJoinOperators.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\System.Data_BID.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\TimeSpanStorage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\UInt16Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\UInt32Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\UInt64Storage.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Common\UnsafeNativeMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ConflictOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ConnectionState.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Constraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ConstraintCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ConstraintConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ConstraintEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataColumn.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataColumnChangeEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataColumnChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataColumnCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataColumnPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataError.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRelation.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRelationCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRelationPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRow.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowChangeEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowCreatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowState.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowVersion.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataRowView.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataSerializationFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataSetDateTime.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataSysAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTable.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableClearEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableClearEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableNewRowEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableNewRowEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTablePropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableReaderListener.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataTableTypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataView.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewListener.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewManagerListItemTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewRowState.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewSetting.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DataViewSettingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DBConcurrencyException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\dbtype.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\DefaultValueTypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\FillErrorEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\FillErrorEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\AggregateNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\BinaryNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\ConstNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\DataExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\ExpressionNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\ExpressionParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\FilterException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\FunctionNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\IFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\LookupNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\NameNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\Operators.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\UnaryNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Filter\ZeroOpNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ForeignKeyConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IColumnMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IColumnMappingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDataParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDataParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDbCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDbConnection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDbDataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDbDataParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IDbTransaction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\IsolationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ITableMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ITableMappingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\LoadOption.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\MappingType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\MergeFailedEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\MergeFailedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Merger.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\MissingMappingAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\MissingSchemaAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\DbDataRecord.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\Odbc32.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcCommandBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionOpen.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionPoolProviderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionString.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcConnectionStringbuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcDataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcEnvironment.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcEnvironmentHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcError.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcInfoMessageEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\odbcmetadatacollectionnames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\odbcmetadatacolumnnames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\odbcmetadatafactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcPermission.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcRowUpdatingEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcStatementHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcTransaction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Odbc\OdbcUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\ColumnBinding.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\DBBindings.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\DBPropSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OLEDB_Enum.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OLEDB_Util.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbCommandBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbConnection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbConnectionFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbConnectionInternal.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbConnectionPoolGroupProviderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\oledbconnectionstring.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OledbConnectionStringbuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbDataAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbError.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbHResult.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbInfoMessageEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbInfoMessageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbLiteral.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\oledbmetadatacollectionnames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\oledbmetadatacolumnnames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbMetaDataFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbPermission.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbPropertySetGuid.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbPropertyStatus.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatedEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatingEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbRowUpdatingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbSchemaGuid.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbStruct.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbTransaction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\OleDbWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\PropertyAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\PropertyIDSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\PropertyInfoSet.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\RowBinding.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OleDb\SafeHandles.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\OperationAbortedException.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ParameterDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\PrimaryKeyTypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\PropertyCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DataReaderContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbBuffer.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionClosed.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionInternal.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPool.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolAuthenticationContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolAuthenticationContextKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolCounters.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolGroupProviderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolIdentity.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbConnectionPoolProviderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataCollectionNames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataColumnNames.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbMetaDataFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\DbReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\SchemaMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\TimeoutTimer.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\ProviderBase\WrappedIUnknown.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Range.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RbTree.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RecordManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RecordsAffectedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RecordsAffectedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RelatedView.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\RelationshipConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Rule.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SchemaSerializationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Select.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Selection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SimpleType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\IBinarySerialize.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\invalidudtexception.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlDataSourceEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlFacetAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlFunctionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlGenericUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlNotificationRequest.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlProcedureAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlTriggerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlUserDefinedAggregateAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\SqlUserDefinedTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\Sql\TriggerAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\ApplicationIntent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\LocalDBAPI.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlClientEncryptionType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlClientPermission.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlConnectionString.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlConnectionStringBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlError.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlInfoMessageEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\SqlUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\TdsEnums.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlClient\TdsParserStaticMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SqlDbType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\INullable.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLBinary.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLBoolean.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLByte.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLBytes.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLChars.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SqlCharStream.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLDateTime.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLDecimal.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLDouble.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLGuid.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLInt16.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLInt32.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLInt64.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLMoney.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLResource.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLSingle.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLString.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SqlTypesSchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SQLUtility.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\SQLTypes\SqlXml.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\StateChangeEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\StateChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\StatementType.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\UniqueConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\UpdateRowSource.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\updatestatus.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XDRSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlContent.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlDataLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XMLDiffLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlKeywords.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlReadMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\xmlsaver.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XMLSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlToDatasetMap.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\Data\XmlWriteMode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\BaseTreeIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\DataDocumentXPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\DataPointer.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\DataSetMappper.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\IXmlDataVirtualNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\RegionIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\TreeIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\XmlBoundElement.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\XmlDataDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\XmlDataImplementation.cs" />\r
+    <Compile Include="..\referencesource\System.Data\System\NewXml\XPathNodePointer.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.SqlServer.Server\SqlDataRecord.cs" />\r
     <Compile Include="Microsoft.SqlServer.Server\SqlMetaData.cs" />\r
     <Compile Include="ReferenceSources\NativeOledbWrapper.cs" />\r
     <Compile Include="ReferenceSources\Res.cs" />\r
+    <Compile Include="ReferenceSources\Res.missing.cs" />\r
     <Compile Include="ReferenceSources\ResCategoryAttribute.cs" />\r
     <Compile Include="ReferenceSources\ResDescriptionAttribute.cs" />\r
     <Compile Include="ReferenceSources\SqlInternalConnectionTds.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 8673fc48022bf86c218f9fbb97b6079e121206c1..66c126fd520bd656e795eea1109cf12028a27684 100644 (file)
@@ -447,7 +447,7 @@ namespace MonoTests.System.Data
                {
                        DataTable dt = DataProvider.CreateParentDataTable();
                        dt.Constraints.Add("UniqueConstraint",dt.Columns["ParentId"],true);
-                       Assert.AreEqual(1,dt.Constraints.Count,1); 
+                       Assert.AreEqual(1,(double) dt.Constraints.Count,1); 
                        Assert.AreEqual("UniqueConstraint",dt.Constraints[0].ConstraintName,"CN34");                    
                }
                
index 5b2fd8ca9f3d66c97964d7d1ae0b44fc596f32cd..e8487efaf6bc0cae842a9839adafe27c6a84960a 100644 (file)
@@ -41,7 +41,7 @@ using System.Data;
 namespace MonoTests.System.Data
 {
        [TestFixture]
-       public class DataRowTest : Assertion {
+       public class DataRowTest {
                private DataTable table;                                                
                 private DataRow row;    
 
@@ -101,7 +101,7 @@ namespace MonoTests.System.Data
                 private  void GetColumnErrorTest ()
                 {
                         // Print the error of a specified column.
-                        AssertEquals ("#A01", "Some error!", row.GetColumnError (1));
+                        Assert.AreEqual ("Some error!", row.GetColumnError (1), "#A01");
                 }
 
                 private void GetAllErrorsTest ()
@@ -112,7 +112,7 @@ namespace MonoTests.System.Data
                                 colArr = row.GetColumnsInError ();
                                                                                                     
                                 for (int i = 0; i < colArr.Length; i++) {
-                                        AssertEquals ("#A02", table.Columns [1], colArr [i]);
+                                        Assert.AreEqual (table.Columns [1], colArr [i], "#A02");
                                 }
                                 row.ClearErrors ();
                         }
@@ -135,7 +135,7 @@ namespace MonoTests.System.Data
                         int cnt = 1;
                         for (int i = 1; i < table.Rows.Count; i++) {
                                 DataRow r = table.Rows [i];
-                                AssertEquals ("#A03", "Name " + cnt, r ["fName"]);
+                                Assert.AreEqual ("Name " + cnt, r ["fName"], "#A03");
                                 cnt++;
                         }
                                                                                                     
@@ -146,20 +146,20 @@ namespace MonoTests.System.Data
                        rc [2].Delete ();
                                                                                                     
                                                                                                     
-                        AssertEquals ("#A04", "Deleted", rc [0].RowState.ToString ());
-                        AssertEquals ("#A05", "Deleted", rc [2].RowState.ToString ());
+                        Assert.AreEqual ("Deleted", rc [0].RowState.ToString (), "#A04");
+                        Assert.AreEqual ("Deleted", rc [2].RowState.ToString (), "#A05");
                                                                                                     
                                                                                                     
                         // Accept changes
                         table.AcceptChanges ();
-                        AssertEquals ("#A06", "Name 1", (table.Rows [0]) [1]);
+                        Assert.AreEqual ("Name 1", (table.Rows [0]) [1], "#A06");
                         try  {
                                 object o = rc [2];
-                                Fail ("#A07");
+                                Assert.Fail ("#A07");
                         }
                         catch (Exception e) {
                                // Never premise English.
-                                //AssertEquals ("#A08", "There is no row at position 2.", e.Message);
+                                //Assert.AreEqual ("#A08", "There is no row at position 2.", e.Message);
                         }
                 }
 
@@ -179,40 +179,40 @@ namespace MonoTests.System.Data
                                                                                                     
                                 // Stage 1
                                 //Initially: After Add (Row) But Before Accept Changes");
-                                AssertEquals ("#A09", "My FName", row [1, DataRowVersion.Default]);
-                                AssertEquals ("#A10", "LName", row [2, DataRowVersion.Default]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Default], "#A09");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Default], "#A10");
                                                                                                     
-                                AssertEquals ("#A11", "My FName", row [1, DataRowVersion.Current]);
-                                AssertEquals ("#A12", "LName", row [2, DataRowVersion.Current]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Current], "#A11");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Current], "#A12");
                                                                                                     
                                 try {
                                       object o = row [1, DataRowVersion.Original];
                                       o = row [1, DataRowVersion.Proposed];
-                                        Fail ("#A13");
+                                        Assert.Fail ("#A13");
                                 }
                                 catch (Exception e) {
                                         if (e.GetType () != typeof (AssertionException)) {
-                                                AssertEquals ("#A14", typeof (VersionNotFoundException), e.GetType ());
+                                                Assert.AreEqual (typeof (VersionNotFoundException), e.GetType (), "#A14");
                                         }
                                 }
                                                                                                     
                                 // Stage 2
                                 //After Accept Changes
                                 table.AcceptChanges ();
-                                AssertEquals ("#A15", "My FName", row [1, DataRowVersion.Default]);
-                                AssertEquals ("#A16", "LName", row [2, DataRowVersion.Default]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Default], "#A15");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Default], "#A16");
                                                                                                     
                                                                                                     
-                                AssertEquals ("#A17", "My FName", row [1, DataRowVersion.Current]);
-                                AssertEquals ("#A18", "LName", row [2, DataRowVersion.Current]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Current], "#A17");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Current], "#A18");
                                 
                                try {
                                       object o = row [1, DataRowVersion.Proposed];
-                                        Fail ("#A19");
+                                        Assert.Fail ("#A19");
                                 }
                                 catch (Exception e) {
                                         if (e.GetType () != typeof (AssertionException)) {
-                                                AssertEquals ("#A20", typeof (VersionNotFoundException), e.GetType ());
+                                                Assert.AreEqual (typeof (VersionNotFoundException), e.GetType (), "#A20");
                                         }
                                 }
                                                                                                     
@@ -221,63 +221,64 @@ namespace MonoTests.System.Data
                                 table.Rows [0].BeginEdit ();
                                 table.Rows [0] ["LName"] = "My LName";
                                                                                                     
-                                AssertEquals ("#A21", "My FName", row [1, DataRowVersion.Default]);
-                                AssertEquals ("#A22", "My LName", row [2, DataRowVersion.Default]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Default], "#A21");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Default], "#A22");
                                                                                                                                                                                                          
-                                AssertEquals ("#A23", "My FName", row [1, DataRowVersion.Current]);
-                                AssertEquals ("#A24", "LName", row [2, DataRowVersion.Current]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Current], "#A23");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Current], "#A24");
                                                                                                     
                                                                                                     
-                                AssertEquals ("#A25", "My FName", row [1, DataRowVersion.Original]);                                AssertEquals ("#A26", "LName", row [2, DataRowVersion.Original]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Original], "#A25");
+                                Assert.AreEqual ("LName", row [2, DataRowVersion.Original], "#A26");
                                                                                                     
-                                AssertEquals ("#A26", "My FName", row [1, DataRowVersion.Proposed]);
-                               AssertEquals ("#A27", "My LName", row [2, DataRowVersion.Proposed]);                                                                                                    
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Proposed], "#A26");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Proposed], "#A27");                                                                                                    
                                                                                                     
                                                                                                     
                                 // Stage 4
                                 //After Edit sessions
                                 for (int i=0; i < table.Rows.Count;i++)
                                         table.Rows [i].EndEdit ();
-                                AssertEquals ("#A28", "My FName", row [1, DataRowVersion.Default]);
-                                AssertEquals ("#A29", "My LName", row [2, DataRowVersion.Default]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Default], "#A28");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Default], "#A29");
                                                                                                                                                                                                          
-                                AssertEquals ("#A30", "My FName", row [1, DataRowVersion.Original]);                                AssertEquals ("#A31", "LName", row [2, DataRowVersion.Original]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Original], "#A30");                                Assert.AreEqual ("LName", row [2, DataRowVersion.Original], "#A31");
                                                                                                     
                                                                                                     
-                                AssertEquals ("#A32", "My FName", row [1, DataRowVersion.Current]);
-                                AssertEquals ("#A33", "My LName", row [2, DataRowVersion.Current]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Current], "#A32");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Current], "#A33");
                                                                                                     
                                 try {
                                       object o = row [1, DataRowVersion.Proposed];
-                                        Fail ("#A34");
+                                        Assert.Fail ("#A34");
                                 }
                                 catch (Exception e) {
                                         if (e.GetType ()!=typeof (AssertionException)) {
-                                                AssertEquals ("#A35", typeof (VersionNotFoundException), e.GetType ());
+                                                Assert.AreEqual (typeof (VersionNotFoundException), e.GetType (), "#A35");
                                         }
                                 }
                                                                                                     
                                 //Stage 5
                                 //After Accept Changes
                                table.AcceptChanges ();
-                               AssertEquals ("#A36", "My FName", row [1, DataRowVersion.Default]);
-                                AssertEquals ("#A37", "My LName", row [2, DataRowVersion.Default]);
+                               Assert.AreEqual ("My FName", row [1, DataRowVersion.Default], "#A36");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Default], "#A37");
                                                                                                     
                                                                                                     
-                                AssertEquals ("#A38", "My FName", row [1, DataRowVersion.Original]);                                AssertEquals ("#A39", "My LName", row [2, DataRowVersion.Original]);                                                                                                    
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Original], "#A38");                                Assert.AreEqual (row [2, DataRowVersion.Original], "#A39", "My LName");                                                                                                    
                                                                                                     
-                                AssertEquals ("#A40", "My FName", row [1, DataRowVersion.Current]);
-                                AssertEquals ("#A41", "My LName", row [2, DataRowVersion.Current]);
+                                Assert.AreEqual ("My FName", row [1, DataRowVersion.Current], "#A40");
+                                Assert.AreEqual ("My LName", row [2, DataRowVersion.Current], "#A41");
                                                                                                     
                                                                                                     
                                 try {
                                       object o = row [1, DataRowVersion.Proposed];
-                                        Fail ("#A42");
+                                        Assert.Fail ("#A42");
                                 }
                                 catch (Exception e) {
                                                 if (e.GetType () != typeof (AssertionException)) {
-                                                        AssertEquals ("#A43", typeof (VersionNotFoundException),
-                                                                e.GetType ());
+                                                        Assert.AreEqual (typeof (VersionNotFoundException), e.GetType (),
+                                                                "#A43");
                                                 }
                                         }
                                                                                                     
@@ -328,22 +329,22 @@ namespace MonoTests.System.Data
                                                                                                     
                         rowC.SetParentRow (table.Rows [0], dr);
                                                                                                     
-                        AssertEquals ("#PRT-01", table.Rows [0], (tableC.Rows [0]).GetParentRow (dr));
-                       AssertEquals ("#PRT-02", tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0]);
+                        Assert.AreEqual (table.Rows [0], (tableC.Rows [0]).GetParentRow (dr), "#PRT-01");
+                       Assert.AreEqual (tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0], "#PRT-02");
 
                         ds.Relations.Clear ();
                         dr = new DataRelation ("PO", table.Columns ["Id"], tableC.Columns ["Id"], false);
                         ds.Relations.Add (dr);
                         rowC.SetParentRow (table.Rows [0], dr);
-                        AssertEquals ("#PRT-03", table.Rows [0], (tableC.Rows [0]).GetParentRow (dr));
-                       AssertEquals ("#PRT-04", tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0]);
+                        Assert.AreEqual (table.Rows [0], (tableC.Rows [0]).GetParentRow (dr), "#PRT-03");
+                       Assert.AreEqual (tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0], "#PRT-04");
 
                         ds.Relations.Clear ();
                         dr = new DataRelation ("PO", table.Columns ["Id"], tableC.Columns ["Id"], false);
                         tableC.ParentRelations.Add (dr);
                         rowC.SetParentRow (table.Rows [0]);
-                        AssertEquals ("#PRT-05", table.Rows [0], (tableC.Rows [0]).GetParentRow (dr));
-                        AssertEquals ("#PRT-06", tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0]);
+                        Assert.AreEqual (table.Rows [0], (tableC.Rows [0]).GetParentRow (dr), "#PRT-05");
+                        Assert.AreEqual (tableC.Rows [0], (table.Rows [0]).GetChildRows (dr) [0], "#PRT-06");
                                                
                 } 
 
@@ -377,8 +378,8 @@ namespace MonoTests.System.Data
                         rowC.SetParentRow (row, dr);
                         DataRow [] rows = rowC.GetParentRows (dr);
 
-                        AssertEquals ("#A49", 1, rows.Length);
-                        AssertEquals ("#A50", tableP.Rows [0], rows [0]);
+                        Assert.AreEqual (1, rows.Length, "#A49");
+                        Assert.AreEqual (tableP.Rows [0], rows [0], "#A50");
 
                         try{
                                 rows = row.GetParentRows (dr);
@@ -386,10 +387,10 @@ namespace MonoTests.System.Data
                                 //Test done
                                 return ;
                         }catch(Exception e){
-                                Fail("#A51, InvalidConstraintException expected, got : " + e);
+                                Assert.Fail("#A51, InvalidConstraintException expected, got : " + e);
                         }
                         
-                        Fail("#A52, InvalidConstraintException expected but got none.");
+                        Assert.Fail("#A52, InvalidConstraintException expected but got none.");
                 }
 
                 [Test]
@@ -434,8 +435,8 @@ namespace MonoTests.System.Data
                                                                                                     
                         DataRow [] rows = (table.Rows [0]).GetChildRows (dr);
 
-                        AssertEquals ("#A45", 1, rows.Length);
-                        AssertEquals ("#A46", tableC.Rows [0], rows [0]);
+                        Assert.AreEqual (1, rows.Length, "#A45");
+                        Assert.AreEqual (tableC.Rows [0], rows [0], "#A46");
                         
                 } 
 
@@ -469,8 +470,8 @@ namespace MonoTests.System.Data
                         rowC.SetParentRow (row, dr);
                         DataRow [] rows = row.GetChildRows (dr);
                         
-                        AssertEquals ("#A47", 1, rows.Length);
-                        AssertEquals ("#A48", tableC.Rows [0], rows [0]);
+                        Assert.AreEqual (1, rows.Length, "#A47");
+                        Assert.AreEqual (tableC.Rows [0], rows [0], "#A48");
 
                         try{
                             rows = rowC.GetChildRows (dr);
@@ -478,10 +479,10 @@ namespace MonoTests.System.Data
                             //Test done
                             return ;
                         }catch(Exception e){
-                            Fail("#A53, InvalidConstraintException expected, got : " + e);
+                            Assert.Fail("#A53, InvalidConstraintException expected, got : " + e);
                         }
                         
-                        Fail("#A54, InvalidConstraintException expected but got none.");
+                        Assert.Fail("#A54, InvalidConstraintException expected but got none.");
                 }
 
                 [Category ("NotWorking")] //Mismatch in Exception namespace/class reference
@@ -528,35 +529,35 @@ namespace MonoTests.System.Data
                                 //Test Done
                                 return ;
                             }catch (Exception e){
-                                Fail ("#A55, VersionNotFoundException expected, got : " + e);
+                                Assert.Fail ("#A55, VersionNotFoundException expected, got : " + e);
                             }
-                            Fail ("#A56, VersionNotFoundException expected but got none.");
+                            Assert.Fail ("#A56, VersionNotFoundException expected but got none.");
                         }catch (Exception e){
-                            Fail ("#A57, VersionNotFoundException expected, got : " + e);
+                            Assert.Fail ("#A57, VersionNotFoundException expected, got : " + e);
                         }
                         
-                        Fail("#A58, VersionNotFoundException expected but got none.");
+                        Assert.Fail("#A58, VersionNotFoundException expected but got none.");
                 }
 
                // tests item at row, column in table to be DBNull.Value
                private void DBNullTest (string message, DataTable dt, int row, int column) 
                {
                        object val = dt.Rows[row].ItemArray[column];
-                       AssertEquals(message, DBNull.Value, val);
+                       Assert.AreEqual(DBNull.Value, val, message);
                }
 
                // tests item at row, column in table to be null
                private void NullTest (string message, DataTable dt, int row, int column) 
                {
                        object val = dt.Rows[row].ItemArray[column];
-                       AssertEquals(message, null, val);
+                       Assert.AreEqual(null, val, message);
                }
 
                // tests item at row, column in table to be 
                private void ValueTest (string message, DataTable dt, int row, int column, object value) 
                {
                        object val = dt.Rows[row].ItemArray[column];
-                       AssertEquals(message, value, val);
+                       Assert.AreEqual(value, val, message);
                }
 
                // test set null, DBNull.Value, and ItemArray short count
@@ -588,7 +589,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e1) {
-                               Fail("DR1: Exception Caught: " + e1);
+                               Assert.Fail("DR1: Exception Caught: " + e1);
                        }
                        
                        table.Rows.Add(row);
@@ -606,7 +607,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR2: Exception Caught: " + e2);
+                               Assert.Fail("DR2: Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -624,7 +625,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR3: Exception Caught: " + e3);
+                               Assert.Fail("DR3: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -646,7 +647,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR4: Exception Caught: " + e3);
+                               Assert.Fail("DR4: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -698,7 +699,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e1) {
-                               Fail("DR17: Exception Caught: " + e1);
+                               Assert.Fail("DR17: Exception Caught: " + e1);
                        }
                        
                        table.Rows.Add(row);
@@ -715,7 +716,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR18: Exception Caught: " + e2);
+                               Assert.Fail("DR18: Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -733,7 +734,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR19: Exception Caught: " + e3);
+                               Assert.Fail("DR19: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -753,7 +754,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR20: Exception Caught: " + e3);
+                               Assert.Fail("DR20: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -802,7 +803,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e1) {
-                               Fail("DR28:  Exception Caught: " + e1);
+                               Assert.Fail("DR28:  Exception Caught: " + e1);
                        }
                        
                        table.Rows.Add(row);
@@ -819,7 +820,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR29:  Exception Caught: " + e2);
+                               Assert.Fail("DR29:  Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -836,7 +837,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR30: Exception Caught: " + e2);
+                               Assert.Fail("DR30: Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -853,7 +854,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR31: Exception Caught: " + e2);
+                               Assert.Fail("DR31: Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -872,7 +873,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR32: Exception Caught: " + e3);
+                               Assert.Fail("DR32: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -889,7 +890,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e2) {
-                               Fail("DR48: Exception Caught: " + e2);
+                               Assert.Fail("DR48: Exception Caught: " + e2);
                        }
                        
                        table.Rows.Add(row);
@@ -909,7 +910,7 @@ namespace MonoTests.System.Data
                                row.ItemArray = obj;
                        }
                        catch(Exception e3) {
-                               Fail("DR33: Exception Caught: " + e3);
+                               Assert.Fail("DR33: Exception Caught: " + e3);
                        }
                        
                        table.Rows.Add(row);
@@ -986,7 +987,7 @@ namespace MonoTests.System.Data
                        DataRow childRow = child.Rows.Add(new object[] { id });
                        if (parentRow == childRow.GetParentRow(relateParentChild)) {
                            foreach(DataColumn dc in parent.Columns)
-                               AssertEquals(100,parentRow[dc]);
+                               Assert.AreEqual(100,parentRow[dc]);
                            
                        }
                                        
@@ -1002,9 +1003,9 @@ namespace MonoTests.System.Data
                        dt.Rows.Add ((new object [] {"val"}));
 
                        DataRow dr = dt.NewRow ();
-                       AssertEquals (DataRowState.Detached, dr.RowState);
+                       Assert.AreEqual (DataRowState.Detached, dr.RowState);
                        dr.CancelEdit ();
-                       AssertEquals (DataRowState.Detached, dr.RowState);
+                       Assert.AreEqual (DataRowState.Detached, dr.RowState);
                        object o = dr ["col"];
                }
 
@@ -1056,20 +1057,20 @@ namespace MonoTests.System.Data
                        parent2.Rows.Add(parent2Row);
 
                        childRow1.SetParentRow(parent1Row);
-                       AssertEquals ("p1c1", childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual ("p1c1", childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
                        childRow1.SetParentRow(parent2Row);
-                       AssertEquals ("p1c1", childRow1[childColumn1]);
-                       AssertEquals ("p2c2", childRow1[childColumn2]);
+                       Assert.AreEqual ("p1c1", childRow1[childColumn1]);
+                       Assert.AreEqual ("p2c2", childRow1[childColumn2]);
 
                        childRow1.SetParentRow(null);
-                       AssertEquals (DBNull.Value, childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
                        childRow1.SetParentRow(parent2Row);
-                       AssertEquals (DBNull.Value, childRow1[childColumn1]);
-                       AssertEquals ("p2c2", childRow1[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn1]);
+                       Assert.AreEqual ("p2c2", childRow1[childColumn2]);
                }
 
                [Test]
@@ -1108,29 +1109,29 @@ namespace MonoTests.System.Data
 
 
                        childRow1.SetParentRow (null, relation2);
-                       AssertEquals (DBNull.Value, childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
                        try {
                                childRow1.SetParentRow(parent1Row, relation2);
-                               Fail ("Must throw InvalidConstaintException");
+                               Assert.Fail ("Must throw InvalidConstaintException");
                        } catch (InvalidConstraintException e) {
                        }
-                       AssertEquals (DBNull.Value, childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
                        childRow1.SetParentRow(parent1Row, relation1);
-                       AssertEquals ("p1c1", childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual ("p1c1", childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
 
                        childRow1.SetParentRow (null, relation2);
-                       AssertEquals ("p1c1", childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual ("p1c1", childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
 
                        childRow1.SetParentRow (null, relation1);
-                       AssertEquals (DBNull.Value, childRow1[childColumn1]);
-                       AssertEquals (DBNull.Value, childRow1[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn1]);
+                       Assert.AreEqual (DBNull.Value, childRow1[childColumn2]);
                }
 
                [Test]
@@ -1161,8 +1162,8 @@ namespace MonoTests.System.Data
                        parent2.Rows.Add(parentRow);
 
                        childRow.SetParentRow(parentRow);
-                       AssertEquals (DBNull.Value, childRow[childColumn1]);
-                       AssertEquals ("value", childRow[childColumn2]);
+                       Assert.AreEqual (DBNull.Value, childRow[childColumn1]);
+                       Assert.AreEqual ("value", childRow[childColumn2]);
                }
 
        }
index 51885f37bcb0a2cc4f5e2cd883495bc9b3166c38..60dbb9d39339dc98b2a526703428273d5b7a10e9 100644 (file)
@@ -36,7 +36,7 @@ using System.ComponentModel;
 namespace MonoTests.System.Data
 {
        [TestFixture]
-       public class DataRowViewTest : Assertion
+       public class DataRowViewTest 
        {
                private DataView CreateTestView ()
                {
@@ -96,8 +96,8 @@ namespace MonoTests.System.Data
                        DataView dv = new DataView (dt1);
                        DataRowView dvr = dv [0];
                        DataView v = dvr.CreateChildView (dr);
-                       AssertEquals ("RowFilter", "", v.RowFilter);
-                       AssertEquals ("Sort", "", v.Sort);
+                       Assert.AreEqual ("", v.RowFilter, "RowFilter");
+                       Assert.AreEqual ("", v.Sort, "Sort");
                }
 
                [Test]
@@ -110,12 +110,12 @@ namespace MonoTests.System.Data
                        DataView dv = new DataView (dt);
                        DataRowView drv = dv [0];
                        dt.Rows [0].BeginEdit ();
-                       AssertEquals ("DataView.Item", true, drv.IsEdit);
+                       Assert.AreEqual (true, drv.IsEdit, "DataView.Item");
 
                        drv = dv.AddNew ();
                        drv.Row ["col"] = "test";
                        drv.Row.CancelEdit ();
-                       AssertEquals ("AddNew", false, drv.IsEdit);
+                       Assert.AreEqual (false, drv.IsEdit, "AddNew");
                }
 
                [Test]
@@ -127,7 +127,7 @@ namespace MonoTests.System.Data
                        DataView dv = new DataView (dt);
                        DataRowView drv = dv [0];
                        dt.Rows [0].BeginEdit ();
-                       AssertEquals ("DataView.Item", "val", drv ["col"]);
+                       Assert.AreEqual ("val", drv ["col"], "DataView.Item");
                }
 
                [Test]
@@ -153,18 +153,18 @@ namespace MonoTests.System.Data
                        dt.Rows.Add (new object [] {1});
                        DataView dv = new DataView (dt);
                        DataRowView drv = dv.AddNew ();
-                       AssertEquals (DataRowVersion.Current, drv.RowVersion);
-                       AssertEquals (DataRowVersion.Current, dv [0].RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, drv.RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, dv [0].RowVersion);
                        drv ["col"] = "mod";
-                       AssertEquals (DataRowVersion.Current, drv.RowVersion);
-                       AssertEquals (DataRowVersion.Current, dv [0].RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, drv.RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, dv [0].RowVersion);
                        dt.AcceptChanges ();
-                       AssertEquals (DataRowVersion.Current, drv.RowVersion);
-                       AssertEquals (DataRowVersion.Current, dv [0].RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, drv.RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, dv [0].RowVersion);
                        drv.EndEdit ();
                        dv [0].EndEdit ();
-                       AssertEquals (DataRowVersion.Current, drv.RowVersion);
-                       AssertEquals (DataRowVersion.Current, dv [0].RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, drv.RowVersion);
+                       Assert.AreEqual (DataRowVersion.Current, dv [0].RowVersion);
                }
        }
 }
index 05d0eddc7fba37c4b61b41c75063272fec799956..bf34b01d1c61a9fe7921050a5e0f168b7e3430ba 100644 (file)
@@ -37,7 +37,7 @@ namespace MonoTests.System.Data
 {
 
        [TestFixture]
-       public class DataTableCollectionTest : Assertion {
+       public class DataTableCollectionTest {
                // common variables here
                private DataSet [] _dataset;
                private DataTable [] _tables;
@@ -76,11 +76,11 @@ namespace MonoTests.System.Data
                        
                        foreach( DataTable table in tbcol )
                        {
-                               AssertEquals("test#1",_tables[i].TableName,table.TableName);
+                               Assert.AreEqual(_tables[i].TableName,table.TableName,"test#1");
                                j=0;
                                foreach( DataColumn column in table.Columns )
                                {
-                                       AssertEquals("test#2",_tables[i].Columns[j].ColumnName,column.ColumnName);
+                                       Assert.AreEqual(_tables[i].Columns[j].ColumnName,column.ColumnName,"test#2");
                                        j++;
                                }
                                i++;
@@ -90,11 +90,11 @@ namespace MonoTests.System.Data
                        i=0;
                        foreach( DataTable table in tbcol )
                        {
-                               AssertEquals("test#3",_tables[i].TableName,table.TableName);
+                               Assert.AreEqual(_tables[i].TableName,table.TableName,"test#3");
                                j=0;
                                foreach( DataColumn column in table.Columns )
                                {
-                                       AssertEquals("test#4",_tables[i].Columns[j].ColumnName,column.ColumnName);
+                                       Assert.AreEqual(_tables[i].Columns[j].ColumnName,column.ColumnName,"test#4");
                                        j++;
                                }
                                i++;
@@ -143,9 +143,9 @@ namespace MonoTests.System.Data
                {
                        DataTableCollection tbcol = _dataset[0].Tables;
                        tbcol.Add(_tables[0]);
-                       AssertEquals("test#1",1, tbcol.Count);
+                       Assert.AreEqual(1,tbcol.Count, "test#1");
                        tbcol.Add(_tables[1]);
-                       AssertEquals("test#2",2, tbcol.Count);
+                       Assert.AreEqual(2,tbcol.Count, "test#2");
                }
                
                [Test]
@@ -159,11 +159,11 @@ namespace MonoTests.System.Data
                        i=0;
                        foreach( DataTable table in tbcol )
                        {
-                               AssertEquals("test#1",_tables[i].TableName,table.TableName);
+                               Assert.AreEqual(_tables[i].TableName,table.TableName,"test#1");
                                j=0;
                                foreach( DataColumn column in table.Columns )
                                {
-                                       AssertEquals("test#2",_tables[i].Columns[j].ColumnName,column.ColumnName);
+                                       Assert.AreEqual(_tables[i].Columns[j].ColumnName,column.ColumnName,"test#2");
                                        j++;
                                }
                                i++;
@@ -179,11 +179,11 @@ namespace MonoTests.System.Data
                        tbcol.AddRange(_tables);
                        DataTable tbl = null;
                        /* checking for a recently input table, expecting true */
-                       AssertEquals("test#1",true,tbcol.CanRemove(_tables[0]));
+                       Assert.AreEqual(true,tbcol.CanRemove(_tables[0]),"test#1");
                        /* trying to check with a null reference, expecting false */
-                       AssertEquals("test#2",false,tbcol.CanRemove(tbl));
+                       Assert.AreEqual(false,tbcol.CanRemove(tbl),"test#2");
                        /* trying to check with a table that does not exist in collection, expecting false */
-                       AssertEquals("test#3",false,tbcol.CanRemove(new DataTable("newTable")));
+                       Assert.AreEqual(false,tbcol.CanRemove(new DataTable("newTable")),"test#3");
                }
                
                [Test]
@@ -197,27 +197,27 @@ namespace MonoTests.System.Data
                        /* removing a recently added table */
                        int count = tbcol.Count;
                        tbcol.Remove(_tables[0]);
-                       AssertEquals("test#1",count-1,tbcol.Count);
+                       Assert.AreEqual(count-1,tbcol.Count,"test#1");
                        DataTable tbl = null;
                        /* removing a null reference. must generate an Exception */
                        try
                        {
                                tbcol.Remove(tbl);
-                               Fail("Err:: tbcol.Rmove(null) must fail");
+                               Assert.Fail("Err:: tbcol.Rmove(null) must fail");
                        }
                        catch(Exception e)
                        {
-                               AssertEquals ("test#2", typeof (ArgumentNullException), e.GetType());
+                               Assert.AreEqual (typeof (ArgumentNullException), e.GetType(), "test#2");
                        }
                        /* removing a table that is not there in collection */
                        try
                        {
                                tbcol.Remove(new DataTable("newTable"));
-                               Fail("Err:: cannot remove a table that is not there in collection");
+                               Assert.Fail("Err:: cannot remove a table that is not there in collection");
                        }
                        catch(Exception e)
                        {
-                               AssertEquals ("test#3", typeof (ArgumentException), e.GetType());
+                               Assert.AreEqual (typeof (ArgumentException), e.GetType(), "test#3");
                        }
                        
                }
@@ -227,11 +227,11 @@ namespace MonoTests.System.Data
                        DataTableCollection tbcol = _dataset[0].Tables;
                        tbcol.Add(_tables[0]);
                        tbcol.Clear();
-                       AssertEquals("Test#1",0,tbcol.Count);
+                       Assert.AreEqual(0,tbcol.Count,"Test#1");
                        
                        tbcol.AddRange(new DataTable[] {_tables[0],_tables[1]});
                        tbcol.Clear();
-                       AssertEquals("Test#2",0,tbcol.Count);
+                       Assert.AreEqual(0,tbcol.Count,"Test#2");
                }
                [Test]
                public void Contains()
@@ -242,11 +242,11 @@ namespace MonoTests.System.Data
                        tbcol.AddRange(_tables);
                        string tblname = "";
                        /* checking for a recently input table, expecting true */
-                       AssertEquals("test#1",true,tbcol.Contains(_tables[0].TableName));
+                       Assert.AreEqual(true,tbcol.Contains(_tables[0].TableName),"test#1");
                        /* trying to check with a empty string, expecting false */
-                       AssertEquals("test#2",false,tbcol.Contains(tblname));
+                       Assert.AreEqual(false,tbcol.Contains(tblname),"test#2");
                        /* trying to check for a table that donot exist, expecting false */
-                       AssertEquals("test#3",false,tbcol.Contains("InvalidTableName"));
+                       Assert.AreEqual(false,tbcol.Contains("InvalidTableName"),"test#3");
                }
                
                [Test]
@@ -261,21 +261,21 @@ namespace MonoTests.System.Data
                        DataTable [] array = new DataTable[4];
                        /* copying to the beginning of the array */
                        tbcol.CopyTo(array,0);
-                       AssertEquals ("test#01", 4, array.Length);
-                       AssertEquals ("test#02", "Table1", array[0].TableName);
-                       AssertEquals ("test#03", "Table2", array[1].TableName);
-                       AssertEquals ("test#04", "Table3", array[2].TableName);
-                       AssertEquals ("test#05", "Table4", array[3].TableName);
+                       Assert.AreEqual (4, array.Length, "test#01");
+                       Assert.AreEqual ("Table1", array[0].TableName, "test#02");
+                       Assert.AreEqual ("Table2", array[1].TableName, "test#03");
+                       Assert.AreEqual ("Table3", array[2].TableName, "test#04");
+                       Assert.AreEqual ("Table4", array[3].TableName, "test#05");
 
                        /* copying with in a array */
                        DataTable [] array1 = new DataTable[6];
                        tbcol.CopyTo(array1,2);
-                       AssertEquals("test#06",null,array1[0]);
-                       AssertEquals("test#07",null,array1[1]);
-                       AssertEquals("test#08","Table1",array1[2].TableName);
-                       AssertEquals("test#09","Table2",array1[3].TableName);
-                       AssertEquals("test#10","Table3",array1[4].TableName);
-                       AssertEquals("test#11","Table4",array1[5].TableName);                   
+                       Assert.AreEqual(null,array1[0],"test#06");
+                       Assert.AreEqual(null,array1[1],"test#07");
+                       Assert.AreEqual("Table1",array1[2].TableName,"test#08");
+                       Assert.AreEqual("Table2",array1[3].TableName,"test#09");
+                       Assert.AreEqual("Table3",array1[4].TableName,"test#10");
+                       Assert.AreEqual("Table4",array1[5].TableName,"test#11");                        
                }
                [Test]
                public void Equals()
@@ -287,16 +287,16 @@ namespace MonoTests.System.Data
                        tbcol2.Add(_tables[1]);
                        tbcol3 = tbcol1;
                        
-                       AssertEquals("test#1",true,tbcol1.Equals(tbcol1));
-                       AssertEquals("test#2",true,tbcol1.Equals(tbcol3));
-                       AssertEquals("test#3",true,tbcol3.Equals(tbcol1));
+                       Assert.AreEqual(true,tbcol1.Equals(tbcol1),"test#1");
+                       Assert.AreEqual(true,tbcol1.Equals(tbcol3),"test#2");
+                       Assert.AreEqual(true,tbcol3.Equals(tbcol1),"test#3");
                        
-                       AssertEquals("test#4",false,tbcol1.Equals(tbcol2));
-                       AssertEquals("test#5",false,tbcol2.Equals(tbcol1));
+                       Assert.AreEqual(false,tbcol1.Equals(tbcol2),"test#4");
+                       Assert.AreEqual(false,tbcol2.Equals(tbcol1),"test#5");
                        
-                       AssertEquals("test#6",true,Object.Equals(tbcol1,tbcol3));
-                       AssertEquals("test#7",true,Object.Equals(tbcol1,tbcol1));
-                       AssertEquals("test#8",false,Object.Equals(tbcol1,tbcol2));
+                       Assert.AreEqual(true,Object.Equals(tbcol1,tbcol3),"test#6");
+                       Assert.AreEqual(true,Object.Equals(tbcol1,tbcol1),"test#7");
+                       Assert.AreEqual(false,Object.Equals(tbcol1,tbcol2),"test#8");
                }
                [Test]
                public void IndexOf()
@@ -306,16 +306,16 @@ namespace MonoTests.System.Data
                        tbcol.Add("table1");
                        tbcol.Add("table2");
                        
-                       AssertEquals("test#1",0,tbcol.IndexOf(_tables[0]));
-                       AssertEquals("test#2",-1,tbcol.IndexOf(_tables[1]));
-                       AssertEquals("test#3",1,tbcol.IndexOf("table1"));
-                       AssertEquals("test#4",2,tbcol.IndexOf("table2"));
+                       Assert.AreEqual(0,tbcol.IndexOf(_tables[0]),"test#1");
+                       Assert.AreEqual(-1,tbcol.IndexOf(_tables[1]),"test#2");
+                       Assert.AreEqual(1,tbcol.IndexOf("table1"),"test#3");
+                       Assert.AreEqual(2,tbcol.IndexOf("table2"),"test#4");
                        
-                       AssertEquals("test#5",0,tbcol.IndexOf(tbcol[0]));
-                       AssertEquals("test#6",1,tbcol.IndexOf(tbcol[1]));
-                       AssertEquals("test#7",-1,tbcol.IndexOf("_noTable_"));
+                       Assert.AreEqual(0,tbcol.IndexOf(tbcol[0]),"test#5");
+                       Assert.AreEqual(1,tbcol.IndexOf(tbcol[1]),"test#6");
+                       Assert.AreEqual(-1,tbcol.IndexOf("_noTable_"),"test#7");
                        DataTable tb = new DataTable("new_table");
-                       AssertEquals("test#8",-1,tbcol.IndexOf(tb));
+                       Assert.AreEqual(-1,tbcol.IndexOf(tb),"test#8");
                        
                }
                [Test]
@@ -328,7 +328,7 @@ namespace MonoTests.System.Data
                        try
                        {
                                tbcol.RemoveAt(-1);
-                               Fail("the index was out of bound: must have failed");
+                               Assert.Fail("the index was out of bound: must have failed");
                        }
                        catch(IndexOutOfRangeException e)
                        {
@@ -336,15 +336,15 @@ namespace MonoTests.System.Data
                        try
                        {
                                tbcol.RemoveAt(101);
-                               Fail("the index was out of bound: must have failed");
+                               Assert.Fail("the index was out of bound: must have failed");
                        }
                        catch(IndexOutOfRangeException e)
                        {
                        }
                        tbcol.RemoveAt (1);
-                       AssertEquals ("test#5", 1, tbcol.Count);
+                       Assert.AreEqual (1, tbcol.Count, "test#5");
                        tbcol.RemoveAt (0);
-                       AssertEquals ("test#6", 0, tbcol.Count);
+                       Assert.AreEqual (0, tbcol.Count, "test#6");
                }
 
                [Test]
@@ -354,46 +354,46 @@ namespace MonoTests.System.Data
                        tbcol.Add("Table1");
                        tbcol.Add("Table2");
                        tbcol.Add("Table3");
-                       AssertEquals("test#1","System.Data.DataTableCollection",tbcol.ToString());
+                       Assert.AreEqual("System.Data.DataTableCollection",tbcol.ToString(),"test#1");
                }
 
                [Test]
                public void TableDataSetNamespaces ()
                {
                        DataTable dt = new DataTable ("dt1");
-                       AssertEquals ("#1-1", String.Empty, dt.Namespace);
-                       AssertNull ("#1-2", dt.DataSet);
+                       Assert.AreEqual (String.Empty, dt.Namespace, "#1-1");
+                       Assert.IsNull (dt.DataSet, "#1-2");
 
                        DataSet ds1 = new DataSet ("ds1");
                        ds1.Tables.Add (dt);
-                       AssertEquals ("#2-1", String.Empty, dt.Namespace);
-                       AssertEquals ("#2-2", ds1, dt.DataSet);
+                       Assert.AreEqual (String.Empty, dt.Namespace, "#2-1");
+                       Assert.AreEqual (ds1, dt.DataSet, "#2-2");
 
                        ds1.Namespace = "ns1";
-                       AssertEquals ("#3", "ns1", dt.Namespace);
+                       Assert.AreEqual ("ns1", dt.Namespace, "#3");
 
                        // back to null again
                        ds1.Tables.Remove (dt);
-                       AssertEquals ("#4-1", String.Empty, dt.Namespace);
-                       AssertNull ("#4-2", dt.DataSet);
+                       Assert.AreEqual (String.Empty, dt.Namespace, "#4-1");
+                       Assert.IsNull (dt.DataSet, "#4-2");
 
                        // This table is being added to _already namespaced_
                        // dataset.
                        dt = new DataTable ("dt2");
 
                        ds1.Tables.Add (dt);
-                       AssertEquals ("#5-1", "ns1", dt.Namespace);
-                       AssertEquals ("#5-2", ds1, dt.DataSet);
+                       Assert.AreEqual ("ns1", dt.Namespace, "#5-1");
+                       Assert.AreEqual (ds1, dt.DataSet, "#5-2");
 
                        ds1.Tables.Remove (dt);
-                       AssertEquals ("#6-1", String.Empty, dt.Namespace);
-                       AssertNull ("#6-2", dt.DataSet);
+                       Assert.AreEqual (String.Empty, dt.Namespace, "#6-1");
+                       Assert.IsNull (dt.DataSet, "#6-2");
 
                        DataSet ds2 = new DataSet ("ds2");
                        ds2.Namespace = "ns2";
                        ds2.Tables.Add (dt);
-                       AssertEquals ("#7-1", "ns2", dt.Namespace);
-                       AssertEquals ("#7-2", ds2, dt.DataSet);
+                       Assert.AreEqual ("ns2", dt.Namespace, "#7-1");
+                       Assert.AreEqual (ds2, dt.DataSet, "#7-2");
                }
        }
 }
index 57b5eb30846c9f6fddbfbce275d26caa6ad3bf71..392f9b0d4f4e28b48cfa26448425de1e06edbe34 100644 (file)
@@ -36,7 +36,7 @@ using System.ComponentModel;
 namespace MonoTests.System.Data
 {
        [TestFixture]
-       public class DataViewManagerTest : Assertion
+       public class DataViewManagerTest 
        {
                [Test]
                public void Ctor ()
@@ -46,40 +46,40 @@ namespace MonoTests.System.Data
                        string deleted = @"<DataViewSettingCollectionString><table2-1 Sort="""" RowFilter="""" RowStateFilter=""Deleted""/></DataViewSettingCollectionString>";
 
                        DataViewManager m = new DataViewManager (null);
-                       AssertNull (m.DataSet);
-                       AssertEquals ("", m.DataViewSettingCollectionString);
-                       AssertNotNull (m.DataViewSettings);
+                       Assert.IsNull (m.DataSet);
+                       Assert.AreEqual ("", m.DataViewSettingCollectionString);
+                       Assert.IsNotNull (m.DataViewSettings);
                        DataSet ds = new DataSet ("ds");
                        m.DataSet = ds;
-                       AssertEquals ("default#1", defaultString,
-                               m.DataViewSettingCollectionString);
+                       Assert.AreEqual (defaultString, m.DataViewSettingCollectionString,
+                               "default#1");
 
                        DataSet ds2 = new DataSet ("ds2");
-                       AssertEquals ("default#2", defaultString,
-                               ds.DefaultViewManager.DataViewSettingCollectionString);
+                       Assert.AreEqual (defaultString, ds.DefaultViewManager.DataViewSettingCollectionString,
+                               "default#2");
                        DataTable dt2_1 = new DataTable ("table2-1");
                        dt2_1.Namespace ="urn:foo"; // It is ignored though.
                        ds2.Tables.Add (dt2_1);
                        m.DataSet = ds2;
-                       AssertEquals ("#3", current, m.DataViewSettingCollectionString);
+                       Assert.AreEqual (current, m.DataViewSettingCollectionString, "#3");
 
                        // Note that " Deleted " is trimmed.
                        m.DataViewSettingCollectionString = @"<DataViewSettingCollectionString><table2-1 Sort='' RowFilter='' RowStateFilter=' Deleted '/></DataViewSettingCollectionString>";
-                       AssertEquals ("#4", deleted, m.DataViewSettingCollectionString);
+                       Assert.AreEqual (deleted, m.DataViewSettingCollectionString, "#4");
 
                        m.DataSet = ds2; //resets modified string.
-                       AssertEquals ("#5", current, m.DataViewSettingCollectionString);
+                       Assert.AreEqual (current, m.DataViewSettingCollectionString, "#5");
 
                        m.DataViewSettingCollectionString = @"<DataViewSettingCollectionString><table2-1 Sort='' RowFilter='' RowStateFilter='Deleted'/></DataViewSettingCollectionString>";
                        // it does not clear anything.
                        m.DataViewSettingCollectionString = "<DataViewSettingCollectionString/>";
-                       AssertEquals ("#6", deleted, m.DataViewSettingCollectionString);
+                       Assert.AreEqual (deleted, m.DataViewSettingCollectionString, "#6");
 
                        // text node is not rejected (ignored).
                        // RowFilter is not examined.
                        m.DataViewSettingCollectionString = "<DataViewSettingCollectionString>blah<table2-1 RowFilter='a=b' ApplyDefaultSort='true' /></DataViewSettingCollectionString>";
                        // LAMESPEC: MS.NET ignores ApplyDefaultSort.
-//                     AssertEquals ("#7", @"<DataViewSettingCollectionString><table2-1 Sort="""" RowFilter=""a=b"" RowStateFilter=""Deleted""/></DataViewSettingCollectionString>", m.DataViewSettingCollectionString);
+//                     Assert.AreEqual (@"<DataViewSettingCollectionString><table2-1 Sort="""" RowFilter=""a=b"" RowStateFilter=""Deleted""/></DataViewSettingCollectionString>", m.DataViewSettingCollectionString, "#7");
                }
 
                [Test]
index 4be1824f6674c064bd460a4a3f0cab070727b250..8829819a4503b3337adf66c5a9ac6d08436f5ca3 100644 (file)
@@ -42,7 +42,7 @@ using System.IO;
 namespace MonoTests.System.Data
 {
        [TestFixture]
-       public class DataViewTest : Assertion
+       public class DataViewTest
        {
                DataTable dataTable;
                DataView  dataView;
@@ -145,7 +145,7 @@ namespace MonoTests.System.Data
                        dv.Sort = "abc";
                        dv.Sort = string.Empty;
                        dv.Sort = "abc";
-                       AssertEquals ("test#01", "abc", dv.Sort);
+                       Assert.AreEqual ("abc", dv.Sort, "test#01");
                }
 
                [Test]
@@ -154,24 +154,24 @@ namespace MonoTests.System.Data
                        DataView dv1,dv2,dv3;
                        dv1 = new DataView ();
                        // AssertEquals ("test#01",null,dv1.Table);
-                       AssertEquals ("test#02",true,dv1.AllowNew);
-                       AssertEquals ("test#03",true,dv1.AllowEdit);
-                       AssertEquals ("test#04",true,dv1.AllowDelete);
-                       AssertEquals ("test#05",false,dv1.ApplyDefaultSort);
-                       AssertEquals ("test#06",string.Empty,dv1.RowFilter);
-                       AssertEquals ("test#07",DataViewRowState.CurrentRows,dv1.RowStateFilter);
-                       AssertEquals ("test#08",string.Empty,dv1.Sort);
+                       Assert.AreEqual (true,dv1.AllowNew,"test#02");;
+                       Assert.AreEqual (true,dv1.AllowEdit,"test#03");;
+                       Assert.AreEqual (true,dv1.AllowDelete,"test#04");;
+                       Assert.AreEqual (false,dv1.ApplyDefaultSort,"test#05");;
+                       Assert.AreEqual (string.Empty,dv1.RowFilter,"test#06");;
+                       Assert.AreEqual (DataViewRowState.CurrentRows,dv1.RowStateFilter,"test#07");;
+                       Assert.AreEqual (string.Empty,dv1.Sort,"test#08");;
                        
                        dv2 = new DataView (dataTable);
-                       AssertEquals ("test#09","itemTable",dv2.Table.TableName);
-                       AssertEquals ("test#10",string.Empty,dv2.Sort);
-                       AssertEquals ("test#11",false,dv2.ApplyDefaultSort);
-                       AssertEquals ("test#12",dataTable.Rows[0],dv2[0].Row);
+                       Assert.AreEqual ("itemTable",dv2.Table.TableName,"test#09");;
+                       Assert.AreEqual (string.Empty,dv2.Sort,"test#10");;
+                       Assert.AreEqual (false,dv2.ApplyDefaultSort,"test#11");;
+                       Assert.AreEqual (dataTable.Rows[0],dv2[0].Row,"test#12");;
                        
                        dv3 = new DataView (dataTable,"","itemId DESC",DataViewRowState.CurrentRows);
-                       AssertEquals ("test#13","",dv3.RowFilter);
-                       AssertEquals ("test#14","itemId DESC",dv3.Sort);
-                       AssertEquals ("test#15",DataViewRowState.CurrentRows,dv3.RowStateFilter);
+                       Assert.AreEqual ("",dv3.RowFilter,"test#13");;
+                       Assert.AreEqual ("itemId DESC",dv3.Sort,"test#14");;
+                       Assert.AreEqual (DataViewRowState.CurrentRows,dv3.RowStateFilter,"test#15");;
                        //AssertEquals ("test#16",dataTable.Rows.[(dataTable.Rows.Count-1)],dv3[0]);
                }
 
@@ -179,20 +179,20 @@ namespace MonoTests.System.Data
                 public void TestValue ()
                 {
                        DataView TestView = new DataView (dataTable);
-                       Assertion.AssertEquals ("Dv #1", "item 1", TestView [0]["itemId"]);
+                       Assert.AreEqual ("item 1", TestView [0]["itemId"], "Dv #1");
                 }
 
                 [Test]
                 public void TestCount ()
                 {
                        DataView TestView = new DataView (dataTable);
-                       Assertion.AssertEquals ("Dv #3", 5, TestView.Count);
+                       Assert.AreEqual (5, TestView.Count, "Dv #3");
                 }
 
                [Test]
                public void AllowNew ()
                {
-                       AssertEquals ("test#01",true,dataView.AllowNew);
+                       Assert.AreEqual (true, dataView.AllowNew, "test#01");
                }
 
                [Test]
@@ -203,7 +203,7 @@ namespace MonoTests.System.Data
                        dataView.ApplyDefaultSort = true;
                        // dataView.Sort = "itemName";
                        // AssertEquals ("test#01","item 1",dataView[0]["itemId"]);
-                       AssertEquals ("test#02",ListChangedType.Reset,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.Reset,listChangedArgs.ListChangedType, "test#02");
                        // UnComment the line below to see if dataView is sorted
                        //   PrintTableOrView (dataView,"* OnApplyDefaultSort");
                }
@@ -212,7 +212,7 @@ namespace MonoTests.System.Data
                public void RowStateFilter ()
                {
                        dataView.RowStateFilter = DataViewRowState.Deleted;
-                       AssertEquals ("test#01",ListChangedType.Reset,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.Reset,listChangedArgs.ListChangedType, "test#01");
                }
 
                [Test]
@@ -239,16 +239,16 @@ namespace MonoTests.System.Data
                        dataView [0] ["col1"] = -1;
                        dataView.RowStateFilter = DataViewRowState.ModifiedOriginal;
                        v = dataView [0] [0].ToString ();
-                       AssertEquals ("ModifiedOriginal.Count", 1, dataView.Count);
-                       AssertEquals ("ModifiedOriginal.Value", "1", v);
+                       Assert.AreEqual (1, dataView.Count, "ModifiedOriginal.Count");
+                       Assert.AreEqual ("1", v, "ModifiedOriginal.Value");
 
                        // Deleting the row
                        dataView.Delete (0);
                        dataView.RowStateFilter = DataViewRowState.Deleted;
 
                        v = dataView [0] [0].ToString ();
-                       AssertEquals ("Deleted.Count", 1, dataView.Count);
-                       AssertEquals ("Deleted.Value", "1", v);
+                       Assert.AreEqual (1, dataView.Count, "Deleted.Count");
+                       Assert.AreEqual ("1", v, "Deleted.Value");
                }
 
                //xamarin bug #18898 # / novell bug #595899
@@ -276,10 +276,10 @@ namespace MonoTests.System.Data
                        another_new_row[0] = "9";
                        another_new_row[1] = "10";
 
-                       AssertEquals ("#1", dv[2][0], "9");
+                       Assert.AreEqual (dv[2][0], "9", "#1");
 
                        //This should not throw a System.Data.VersionNotFoundException: "There is no Proposed data to accces"
-                       AssertEquals ("#1", dv[1][0], "7");     
+                       Assert.AreEqual (dv[1][0], "7", "#1");  
 
                }
 
@@ -288,7 +288,7 @@ namespace MonoTests.System.Data
                {
                        DataView dataview = new DataView ();
                        PropertyDescriptorCollection col = ((ITypedList)dataview).GetItemProperties (null);
-                       AssertEquals ("1", 0, col.Count);
+                       Assert.AreEqual (0, col.Count, "1");
                }
 
                #region Sort Tests
@@ -296,7 +296,7 @@ namespace MonoTests.System.Data
                public void SortListChangedTest ()
                {
                        dataView.Sort = "itemName DESC";
-                       AssertEquals ("test#01",ListChangedType.Reset,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.Reset,listChangedArgs.ListChangedType, "test#01");
                        // UnComment the line below to see if dataView is sorted
                        // PrintTableOrView (dataView);
                }
@@ -338,60 +338,60 @@ namespace MonoTests.System.Data
                        DataView dataView = dataTable.DefaultView;
 
                        string s = "Default sorting: ";
-                       AssertEquals (s + "First entry has wrong item", 1, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 0, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 3, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 2, dataView[3][0]);
+                       Assert.AreEqual (1, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (0, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (3, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (2, dataView[3][0], s + "Fourth entry has wrong item");
 
                        s = "Ascending sorting 1: ";
                        dataView.Sort = "itemId ASC";
-                       AssertEquals (s + "First entry has wrong item", 0, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 1, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 2, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 3, dataView[3][0]);
+                       Assert.AreEqual (0, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (1, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (2, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (3, dataView[3][0], s + "Fourth entry has wrong item");
 
                        // bug #77104 (2-5)
                        s = "Ascending sorting 2: ";
                        dataView.Sort = "itemId     ASC";
-                       AssertEquals (s + "First entry has wrong item", 0, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 1, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 2, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 3, dataView[3][0]);
+                       Assert.AreEqual (0, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (1, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (2, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (3, dataView[3][0], s + "Fourth entry has wrong item");
 
                        s = "Ascending sorting 3: ";
                        dataView.Sort = "[itemId] ASC";
-                       AssertEquals (s + "First entry has wrong item", 0, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 1, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 2, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 3, dataView[3][0]);
+                       Assert.AreEqual (0, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (1, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (2, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (3, dataView[3][0], s + "Fourth entry has wrong item");
 
                        s = "Ascending sorting 4: ";
                        dataView.Sort = "[itemId]       ASC";
-                       AssertEquals (s + "First entry has wrong item", 0, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 1, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 2, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 3, dataView[3][0]);
+                       Assert.AreEqual (0, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (1, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (2, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (3, dataView[3][0], s + "Fourth entry has wrong item");
 
                        s = "Ascending sorting 5: ";
                        try {
                                dataView.Sort = "itemId \tASC";
-                               AssertEquals (s + "Tab cannot be a separator" , true, false);
+                               Assert.AreEqual (true, false, s + "Tab cannot be a separator");
                        }catch (IndexOutOfRangeException e) {
                        }
 
                        s = "Descending sorting : ";
                        dataView.Sort = "itemId DESC";
-                       AssertEquals (s + "First entry has wrong item", 3, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 2, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 1, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 0, dataView[3][0]);
+                       Assert.AreEqual (3, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (2, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (1, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (0, dataView[3][0], s + "Fourth entry has wrong item");
 
                        s = "Reverted to default sorting: ";
                        dataView.Sort = null;
-                       AssertEquals (s + "First entry has wrong item", 1, dataView[0][0]);
-                       AssertEquals (s + "Second entry has wrong item", 0, dataView[1][0]);
-                       AssertEquals (s + "Third entry has wrong item", 3, dataView[2][0]);
-                       AssertEquals (s + "Fourth entry has wrong item", 2, dataView[3][0]);
+                       Assert.AreEqual (1, dataView[0][0], s + "First entry has wrong item");
+                       Assert.AreEqual (0, dataView[1][0], s + "Second entry has wrong item");
+                       Assert.AreEqual (3, dataView[2][0], s + "Third entry has wrong item");
+                       Assert.AreEqual (2, dataView[3][0], s + "Fourth entry has wrong item");
                }
                
                #endregion // Sort Tests
@@ -409,21 +409,21 @@ namespace MonoTests.System.Data
                {
                        dataView.AllowNew = true;
                        DataRowView drv = dataView.AddNew ();
-                       AssertEquals ("test#01",ListChangedType.ItemAdded,listChangedArgs.ListChangedType);
-                       AssertEquals ("test#02",-1,listChangedArgs.OldIndex);
-                       AssertEquals ("test#03",5,listChangedArgs.NewIndex);
-                       AssertEquals ("test#04",drv["itemName"],dataView [dataView.Count - 1]["itemName"]);
+                       Assert.AreEqual (ListChangedType.ItemAdded,listChangedArgs.ListChangedType, "test#01");
+                       Assert.AreEqual (-1,listChangedArgs.OldIndex, "test#02");
+                       Assert.AreEqual (5,listChangedArgs.NewIndex, "test#03");
+                       Assert.AreEqual (drv["itemName"],dataView [dataView.Count - 1]["itemName"], "test#04");
                        listChangedArgs = null;
                        drv["itemId"] = "item " + 1001;
                        drv["itemName"] = "name " + rndm.Next();
                        drv["itemPrice"] = "Rs. " + (rndm.Next() % 1000);
                        drv["itemCategory"] = "Cat " + ((rndm.Next() % 10) + 1);
                        // Actually no events are arisen when items are set.
-                       AssertNull ("test#05", listChangedArgs);
+                       Assert.IsNull (listChangedArgs, "test#05");
                        drv.CancelEdit ();
-                       AssertEquals ("test#06",ListChangedType.ItemDeleted,listChangedArgs.ListChangedType);
-                       AssertEquals ("test#07",-1,listChangedArgs.OldIndex);
-                       AssertEquals ("test#08",5,listChangedArgs.NewIndex);
+                       Assert.AreEqual (ListChangedType.ItemDeleted,listChangedArgs.ListChangedType, "test#06");
+                       Assert.AreEqual (-1,listChangedArgs.OldIndex, "test#07");
+                       Assert.AreEqual (5,listChangedArgs.NewIndex, "test#08");
                }
 
                [Test]
@@ -439,15 +439,15 @@ namespace MonoTests.System.Data
                        table.Columns.AddRange (new DataColumn[] {col1,col2});
 
                        dv.Table = table;
-                       AssertNull ("#1", dv.Table);
+                       Assert.IsNull (dv.Table, "#1");
                        dv.EndInit ();
 
-                       AssertNull ("#2", dv.Table); // still.
-                       AssertEquals ("#3", 0, table.Columns.Count);
+                       Assert.IsNull (dv.Table, "#2"); // still.
+                       Assert.AreEqual (0, table.Columns.Count, "#3");
 
                        table.EndInit ();
-                       AssertEquals ("#5", table, dv.Table);
-                       AssertEquals ("#4", 2, table.Columns.Count);
+                       Assert.AreEqual (table, dv.Table, "#4");
+                       Assert.AreEqual (2, table.Columns.Count, "#5");
                }
 
                private bool dvInitialized;
@@ -472,19 +472,19 @@ namespace MonoTests.System.Data
                        table.Columns.AddRange (new DataColumn[] {col1,col2});
 
                        dv.Table = table;
-                       AssertNull ("#1", dv.Table);
+                       Assert.IsNull (dv.Table, "#1");
                        dv.EndInit ();
                        
-                       AssertNull ("#2", dv.Table);
-                       AssertEquals ("#3", 0, table.Columns.Count);
+                       Assert.IsNull (dv.Table, "#2");
+                       Assert.AreEqual (0, table.Columns.Count, "#3");
 
                        table.EndInit ();
 
                        dv.Initialized -= new EventHandler (OnDataViewInitialized); // this should not be unregistered before table.EndInit().
                        
-                       AssertEquals ("#4", 2, table.Columns.Count);
-                       AssertEquals ("#6", table, dv.Table);
-                       AssertEquals ("DataViewInitialized #5", true, dvInitialized);
+                       Assert.AreEqual (2, table.Columns.Count, "#4");
+                       Assert.AreEqual (table, dv.Table, "#6");
+                       Assert.AreEqual (true, dvInitialized, "DataViewInitialized #5");
                }
 
                [Test]
@@ -503,21 +503,21 @@ namespace MonoTests.System.Data
                        randInt = rndm.Next () % rowCount;
                        dataView.Sort = "itemId";
                        drv = dataView [randInt];
-                       AssertEquals ("test#01",randInt,dataView.Find (drv ["itemId"]));
+                       Assert.AreEqual (randInt,dataView.Find (drv ["itemId"]), "test#01");
                        
                        dataView.Sort = "itemId DESC";
                        drv = dataView [randInt];
-                       AssertEquals ("test#02",randInt,dataView.Find (drv ["itemId"]));
+                       Assert.AreEqual (randInt,dataView.Find (drv ["itemId"]), "test#02");
                        
                        dataView.Sort = "itemId, itemName";
                        drv = dataView [randInt];
                        object [] keys = new object [2];
                        keys [0] = drv ["itemId"];
                        keys [1] = drv ["itemName"];
-                       AssertEquals ("test#03",randInt,dataView.Find (keys));
+                       Assert.AreEqual (randInt,dataView.Find (keys), "test#03");
                        
                        dataView.Sort = "itemId";
-                       AssertEquals ("test#04",-1,dataView.Find("no item"));
+                       Assert.AreEqual (-1,dataView.Find("no item"), "test#04");
 
                }
 
@@ -540,7 +540,7 @@ namespace MonoTests.System.Data
                [Test]
                public void ToStringTest ()
                {
-                       AssertEquals ("test#01","System.Data.DataView",dataView.ToString());
+                       Assert.AreEqual ("System.Data.DataView",dataView.ToString(), "test#01");
                }
 
                [Test]
@@ -556,38 +556,38 @@ namespace MonoTests.System.Data
                        dataTable.Rows.Add(dr);
 
                        //PrintTableOrView(dataView, "ItemAdded");
-                       AssertEquals ("test#01",ListChangedType.ItemAdded,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.ItemAdded,listChangedArgs.ListChangedType, "test#01");
                        listChangedArgs = null;
 
                        dr ["itemId"] = "aitem 0";
                        // PrintTableOrView(dataView, "ItemChanged");
-                       AssertEquals ("test#02",ListChangedType.ItemChanged,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.ItemChanged,listChangedArgs.ListChangedType, "test#02");
                        listChangedArgs = null;
 
                        dr ["itemId"] = "zitem 0";
                        // PrintTableOrView(dataView, "ItemMoved");
-                       AssertEquals ("test#03",ListChangedType.ItemMoved,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.ItemMoved,listChangedArgs.ListChangedType, "test#03");
                        listChangedArgs = null;
 
                        dataTable.Rows.Remove (dr);
                        // PrintTableOrView(dataView, "ItemDeleted");
-                       AssertEquals ("test#04",ListChangedType.ItemDeleted,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.ItemDeleted,listChangedArgs.ListChangedType, "test#04");
                        
                        listChangedArgs = null;
                        DataColumn dc5 = new DataColumn ("itemDesc");
                        dataTable.Columns.Add (dc5);
                        // PrintTableOrView(dataView, "PropertyDescriptorAdded");
-                       AssertEquals ("test#05",ListChangedType.PropertyDescriptorAdded,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.PropertyDescriptorAdded,listChangedArgs.ListChangedType, "test#05");
                        
                        listChangedArgs = null;
                        dc5.ColumnName = "itemDescription";
                        // PrintTableOrView(dataView, "PropertyDescriptorChanged");
-                       // AssertEquals ("test#06",ListChangedType.PropertyDescriptorChanged,listChangedArgs.ListChangedType);
+                       // Assert.AreEqual ("test#06",ListChangedType.PropertyDescriptorChanged,listChangedArgs.ListChangedType);
                        
                        listChangedArgs = null;
                        dataTable.Columns.Remove (dc5);
                        // PrintTableOrView(dataView, "PropertyDescriptorDeleted");
-                       AssertEquals ("test#07",ListChangedType.PropertyDescriptorDeleted,listChangedArgs.ListChangedType);
+                       Assert.AreEqual (ListChangedType.PropertyDescriptorDeleted,listChangedArgs.ListChangedType, "test#07");
                }
        
                [Test]
@@ -596,8 +596,8 @@ namespace MonoTests.System.Data
                        DataView TestView = new DataView (dataTable);
                        TestView.Sort = "itemId";
                        DataRowView[] Result = TestView.FindRows ("item 3");
-                       Assertion.AssertEquals ("Dv #1", 1, Result.Length);
-                       Assertion.AssertEquals ("Dv #2", "item 3", Result [0]["itemId"]);
+                       Assert.AreEqual (1, Result.Length, "Dv #1");
+                       Assert.AreEqual ("item 3", Result [0]["itemId"], "Dv #2");
                }
 
                [Test]
@@ -642,7 +642,7 @@ namespace MonoTests.System.Data
                        DataView TestView = new DataView (dataTable);
                        TestView.Delete (0);
                        DataRow r = TestView.Table.Rows [0];
-                       Assertion.Assert ("Dv #1", !((string)r ["itemId"] == "item 1"));
+                       Assert.IsTrue (!((string)r ["itemId"] == "item 1"), "Dv #1");
                }
 
                [Test]
@@ -685,13 +685,13 @@ namespace MonoTests.System.Data
 
                        DataView dataView = new DataView (dataset.Tables[0]);
 
-                       AssertEquals ("before delete", 3, dataView.Count);
+                       Assert.AreEqual (3, dataView.Count, "before delete");
                        dataView.AllowDelete = true;
 
                        // Deleting the first row
                        dataView.Delete (0);
 
-                       AssertEquals ("before delete", 2, dataView.Count);
+                       Assert.AreEqual (2, dataView.Count, "before delete");
                }
 
                [Test]
@@ -746,7 +746,7 @@ namespace MonoTests.System.Data
                        eventWriter.Write (" ------" + dv.Count);
                        DataRowView a3 = dv.AddNew ();
 
-                       AssertEquals (reference, eventWriter.ToString ());
+                       Assert.AreEqual (reference, eventWriter.ToString ());
                }
 
                [Test]
@@ -766,7 +766,7 @@ table was set.
 
                        dc2.ColumnName = "new_column_name";
 
-                       AssertEquals (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
+                       Assert.AreEqual (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
                }
 
                private void ListChanged (object o, ListChangedEventArgs e)
@@ -830,7 +830,7 @@ removed relation 2
                        ds.Relations.Remove (dr);
                        eventWriter.WriteLine ("removed relation 2");
 
-                       AssertEquals (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
+                       Assert.AreEqual (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
                }
 
                [Test]
@@ -942,7 +942,7 @@ table changed.
                        dv.Table = new DataTable ("table2");
                        eventWriter.WriteLine ("table changed.");
 
-                       AssertEquals (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
+                       Assert.AreEqual (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
                }
 
                [Test]
@@ -982,7 +982,7 @@ table was set.
                        dt.Columns.Add ("");
                        eventWriter.WriteLine (" add a column with an empty name.");
 
-                       AssertEquals (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
+                       Assert.AreEqual (result.Replace ("\r\n", "\n"), eventWriter.ToString ().Replace ("\r\n", "\n"));
                        GC.KeepAlive (dv);
                }
 
index 6e5d2a4df927114b5c0499ff38153f2b41c00ba5..21742eb3aa3cef106b3dd46a42018b4ba70a5d05 100644 (file)
@@ -38,7 +38,7 @@ using System.Data;
 namespace MonoTests.System.Data
 {
        [TestFixture]
-       public class ForeignKeyConstraintTest : Assertion
+       public class ForeignKeyConstraintTest
        {
                private DataSet _ds;
 
@@ -73,23 +73,23 @@ namespace MonoTests.System.Data
                {
                        DataTable Table =  _ds.Tables [0];
                        
-                       AssertEquals ("test#01", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#01");
                        Table =  _ds.Tables [1];
-                       AssertEquals ("test#02", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#02");
                        
                        // ctor (string, DataColumn, DataColumn
                        ForeignKeyConstraint Constraint = new ForeignKeyConstraint ("test", _ds.Tables [0].Columns [2], _ds.Tables [1].Columns [0]);
                        Table = _ds.Tables [1];
                        Table.Constraints.Add (Constraint);
                        
-                       AssertEquals ("test#03", 1, Table.Constraints.Count);
-                       AssertEquals ("test#04", "test", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#05", typeof (ForeignKeyConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#03");
+                       Assert.AreEqual ("test", Table.Constraints [0].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (ForeignKeyConstraint), Table.Constraints [0].GetType (), "test#05");
 
                        Table = _ds.Tables [0];
-                       AssertEquals ("test#06", 1, Table.Constraints.Count);
-                       AssertEquals ("test#07", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#08", typeof (UniqueConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#06");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#07");
+                       Assert.AreEqual (typeof (UniqueConstraint), Table.Constraints [0].GetType (), "test#08");
                }
                
                // Tests ctor (DataColumn, DataColumn)
@@ -98,23 +98,23 @@ namespace MonoTests.System.Data
                {
                        DataTable Table =  _ds.Tables [0];
                        
-                       AssertEquals ("test#01", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#01");
                        Table =  _ds.Tables [1];
-                       AssertEquals ("test#02", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#02");
                        
                        // ctor (string, DataColumn, DataColumn
                        ForeignKeyConstraint Constraint = new ForeignKeyConstraint (_ds.Tables [0].Columns [2], _ds.Tables [1].Columns [0]);
                        Table = _ds.Tables [1];
                        Table.Constraints.Add (Constraint);
                        
-                       AssertEquals ("test#03", 1, Table.Constraints.Count);
-                       AssertEquals ("test#04", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#05", typeof (ForeignKeyConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#03");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (ForeignKeyConstraint), Table.Constraints [0].GetType (), "test#05");
 
                        Table = _ds.Tables [0];
-                       AssertEquals ("test#06", 1, Table.Constraints.Count);
-                       AssertEquals ("test#07", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#08", typeof (UniqueConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#06");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#07");
+                       Assert.AreEqual (typeof (UniqueConstraint), Table.Constraints [0].GetType (), "test#08");
                }
                
                // Test ctor (DataColumn [], DataColumn [])
@@ -123,9 +123,9 @@ namespace MonoTests.System.Data
                {
                        DataTable Table =  _ds.Tables [0];
                        
-                       AssertEquals ("test#01", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#01");
                        Table =  _ds.Tables [1];
-                       AssertEquals ("test#02", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#02");
                                                
                        DataColumn [] Cols1 = new DataColumn [2];
                        Cols1 [0] = _ds.Tables [0].Columns [1];
@@ -139,14 +139,14 @@ namespace MonoTests.System.Data
                        Table = _ds.Tables [1];
                        Table.Constraints.Add (Constraint);
                        
-                       AssertEquals ("test#03", 1, Table.Constraints.Count);
-                       AssertEquals ("test#04", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#05", typeof (ForeignKeyConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#03");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (ForeignKeyConstraint), Table.Constraints [0].GetType (), "test#05");
 
                        Table = _ds.Tables [0];
-                       AssertEquals ("test#06", 1, Table.Constraints.Count);
-                       AssertEquals ("test#07", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#08", typeof (UniqueConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#06");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#07");
+                       Assert.AreEqual (typeof (UniqueConstraint), Table.Constraints [0].GetType (), "test#08");
 
                }
        
@@ -156,9 +156,9 @@ namespace MonoTests.System.Data
                {
                        DataTable Table =  _ds.Tables [0];
                        
-                       AssertEquals ("test#01", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#01");
                        Table =  _ds.Tables [1];
-                       AssertEquals ("test#02", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#02");
                                                
                        DataColumn [] Cols1 = new DataColumn [2];
                        Cols1 [0] = _ds.Tables [0].Columns [1];
@@ -172,14 +172,14 @@ namespace MonoTests.System.Data
                        Table = _ds.Tables [1];
                        Table.Constraints.Add (Constraint);
                        
-                       AssertEquals ("test#03", 1, Table.Constraints.Count);
-                       AssertEquals ("test#04", "Test", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#05", typeof (ForeignKeyConstraint), Table.Constraints [0].GetType ());
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#03");
+                       Assert.AreEqual ("Test", Table.Constraints [0].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (ForeignKeyConstraint), Table.Constraints [0].GetType (), "test#05");
 
                        Table = _ds.Tables [0];
-                       AssertEquals ("test#06", 1, Table.Constraints.Count);
-                       AssertEquals ("test#07", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#08", typeof (UniqueConstraint), Table.Constraints [0].GetType ());                  
+                       Assert.AreEqual (1, Table.Constraints.Count, "test#06");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#07");
+                       Assert.AreEqual (typeof (UniqueConstraint), Table.Constraints [0].GetType (), "test#08");
                }
                
                [Test]
@@ -211,7 +211,7 @@ namespace MonoTests.System.Data
                         ForeignKeyConstraint fkc = new ForeignKeyConstraint ("hello world", parentTableName, parentColumnNames, childColumnNames, AcceptRejectRule.Cascade, Rule.Cascade, Rule.Cascade);                                                                                                                            // Assert that the Constraint object does not belong to any table yet
                        try {
                                DataTable tmp = fkc.Table;
-                               Fail ("When table is null, get_Table causes an InvalidOperationException.");
+                               Assert.Fail ("When table is null, get_Table causes an InvalidOperationException.");
                        } catch (NullReferenceException) { // actually .NET throws this (bug)
                        } catch (InvalidOperationException) {
                        }
@@ -234,9 +234,12 @@ namespace MonoTests.System.Data
                         // OK - So AddRange() is the only way!
                         table2.Constraints.AddRange (constraints);
                           // After AddRange(), Check the properties of ForeignKeyConstraint object
-                        Assertion.Assert("#A04", fkc.RelatedColumns [0].ColumnName.Equals ("col1"));                        Assertion.Assert("#A05", fkc.RelatedColumns [1].ColumnName.Equals ("col2"));                        Assertion.Assert("#A06", fkc.RelatedColumns [2].ColumnName.Equals ("col3"));                        Assertion.Assert("#A07", fkc.Columns [0].ColumnName.Equals ("col4"));
-                        Assertion.Assert("#A08", fkc.Columns [1].ColumnName.Equals ("col5"));
-                        Assertion.Assert("#A09", fkc.Columns [2].ColumnName.Equals ("col6"));
+                        Assert.IsTrue(fkc.RelatedColumns [0].ColumnName.Equals ("col1"), "#A04");
+                        Assert.IsTrue(fkc.RelatedColumns [1].ColumnName.Equals ("col2"), "#A05");
+                        Assert.IsTrue(fkc.RelatedColumns [2].ColumnName.Equals ("col3"), "#A06");
+                        Assert.IsTrue(fkc.Columns [0].ColumnName.Equals ("col4"), "#A07");
+                        Assert.IsTrue(fkc.Columns [1].ColumnName.Equals ("col5"), "#A08");
+                        Assert.IsTrue(fkc.Columns [2].ColumnName.Equals ("col6"), "#A09");
 #endif
                         // Try to add columns with names which do not exist in the table
                         parentColumnNames [2] = "noColumn";
@@ -255,7 +258,7 @@ namespace MonoTests.System.Data
                         
 #if false // FIXME: Here this test crashes under MS.NET.
                         // Check whether the child table really contains the foreign key constraint named "hello world"
-                        Assertion.Assert("#A11 ", table2.Constraints.Contains ("hello world"));
+                        Assert.IsTrue(table2.Constraints.Contains ("hello world"), "#A11 ");
 #endif
                 }
 
@@ -267,20 +270,20 @@ namespace MonoTests.System.Data
                {
                        DataTable Table =  _ds.Tables [0];
                        
-                       AssertEquals ("test#01", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#01");
                        Table =  _ds.Tables [1];
-                       AssertEquals ("test#02", 0, Table.Constraints.Count);
+                       Assert.AreEqual (0, Table.Constraints.Count, "test#02");
                                                
                        
                        ForeignKeyConstraint Constraint = new ForeignKeyConstraint ("Test", _ds.Tables [0].Columns [0], _ds.Tables [0].Columns [2]);
                        Table = _ds.Tables [0];
                        Table.Constraints.Add (Constraint);
                        
-                       AssertEquals ("test#03", 2, Table.Constraints.Count);
-                       AssertEquals ("test#04", "Constraint1", Table.Constraints [0].ConstraintName);
-                       AssertEquals ("test#05", typeof (UniqueConstraint), Table.Constraints [0].GetType ());
-                       AssertEquals ("test#04", "Test", Table.Constraints [1].ConstraintName);
-                       AssertEquals ("test#05", typeof (ForeignKeyConstraint), Table.Constraints [1].GetType ());
+                       Assert.AreEqual (2, Table.Constraints.Count, "test#03");
+                       Assert.AreEqual ("Constraint1", Table.Constraints [0].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (UniqueConstraint), Table.Constraints [0].GetType (), "test#05");
+                       Assert.AreEqual ("Test", Table.Constraints [1].ConstraintName, "test#04");
+                       Assert.AreEqual (typeof (ForeignKeyConstraint), Table.Constraints [1].GetType (), "test#05");
 
                }
 
@@ -297,45 +300,45 @@ namespace MonoTests.System.Data
                        try
                        {
                                fkc = new ForeignKeyConstraint((DataColumn)null,(DataColumn)null);
-                               Fail("Failed to throw ArgumentNullException.");
+                               Assert.Fail("Assert.Failed to throw ArgumentNullException.");
                        }
                        catch (NullReferenceException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("A1: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("A1: Wrong Exception type. " + exc.ToString());
                        }
 
                        //zero length collection
                        try
                        {
                                fkc = new ForeignKeyConstraint(new DataColumn[]{},new DataColumn[]{});
-                               Fail("B1: Failed to throw ArgumentException.");
+                               Assert.Fail("B1: Assert.Failed to throw ArgumentException.");
                        }
                        catch (ArgumentException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("A2: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("A2: Wrong Exception type. " + exc.ToString());
                        }
 
                        //different datasets
                        try
                        {
                                fkc = new ForeignKeyConstraint(_ds.Tables[0].Columns[0], localTable.Columns[0]);
-                               Fail("Failed to throw InvalidOperationException.");
+                               Assert.Fail("Assert.Failed to throw InvalidOperationException.");
                        }
                        catch (InvalidOperationException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("A3: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("A3: Wrong Exception type. " + exc.ToString());
                        }
 
                        try
                        {
                                fkc = new ForeignKeyConstraint(_ds.Tables[0].Columns[0], localTable.Columns[1]);
-                               Fail("Failed to throw InvalidConstraintException.");
+                               Assert.Fail("Assert.Failed to throw InvalidConstraintException.");
                        }
                        // tables in different datasets
                        catch (InvalidOperationException) {}
@@ -345,7 +348,7 @@ namespace MonoTests.System.Data
                         try                                           
                         {                                             
                                 fkc = new ForeignKeyConstraint(new DataColumn [] {_ds.Tables[0].Columns[0], _ds.Tables[0].Columns[1]}, new DataColumn [] {localTable.Columns[1], _ds.Tables[1].Columns [0]});    
-                                Fail("Failed to throw InvalidOperationException.");                                         
+                                Assert.Fail("Assert.Failed to throw InvalidOperationException.");                                         
                         }                                             
                         catch (InvalidConstraintException) {}         
                         catch (AssertionException exc) {throw exc;} 
@@ -362,13 +365,13 @@ namespace MonoTests.System.Data
                        try 
                        {
                                fkc = new ForeignKeyConstraint(col, _ds.Tables[0].Columns[0]);
-                               Fail("FTT1: Failed to throw ArgumentException.");
+                               Assert.Fail("FTT1: Assert.Failed to throw ArgumentException.");
                        }
                        catch (ArgumentException) {}
                        catch (AssertionException exc) {throw exc;}
 //                     catch (Exception exc)
 //                     {
-//                             Fail("WET1: Wrong Exception type. " + exc.ToString());
+//                             Assert.Fail("WET1: Wrong Exception type. " + exc.ToString());
 //                     }
 
                        //Columns must belong to the same table
@@ -382,13 +385,13 @@ namespace MonoTests.System.Data
                                                                 _ds.Tables[0].Columns[1],
                                                                _ds.Tables[0].Columns[0]});
                                        
-                               Fail("FTT2: Failed to throw InvalidConstraintException.");
+                               Assert.Fail("FTT2: Assert.Failed to throw InvalidConstraintException.");
                        }
                        catch (InvalidConstraintException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("WET2: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("WET2: Wrong Exception type. " + exc.ToString());
                        }
 
 
@@ -403,13 +406,13 @@ namespace MonoTests.System.Data
                                fkc = new ForeignKeyConstraint(twoCol, 
                                        new DataColumn[] { _ds.Tables[0].Columns[0]});
                                        
-                               Fail("FTT3: Failed to throw ArgumentException.");
+                               Assert.Fail("FTT3: Assert.Failed to throw ArgumentException.");
                        }
                        catch (ArgumentException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("WET3: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("WET3: Wrong Exception type. " + exc.ToString());
                        }
 
                        //InvalidOperation: Parent and child are the same column.
@@ -418,13 +421,13 @@ namespace MonoTests.System.Data
                                fkc = new ForeignKeyConstraint( _ds.Tables[0].Columns[0],
                                        _ds.Tables[0].Columns[0] );
                                        
-                               Fail("FTT4: Failed to throw InvalidOperationException.");
+                               Assert.Fail("FTT4: Assert.Failed to throw InvalidOperationException.");
                        }
                        catch (InvalidOperationException) {}
                        catch (AssertionException exc) {throw exc;}
                        catch (Exception exc)
                        {
-                               Fail("WET4: Wrong Exception type. " + exc.ToString());
+                               Assert.Fail("WET4: Wrong Exception type. " + exc.ToString());
                        }
 
                }
@@ -446,14 +449,14 @@ namespace MonoTests.System.Data
                        ForeignKeyConstraint fkcDiff = 
                                new ForeignKeyConstraint( tbl.Columns[1], tbl.Columns[2]);
                
-                       Assert( "Equals failed. 1" , fkc.Equals(fkc2));
-                       Assert( "Equals failed. 2" , fkc2.Equals(fkc));
-                       Assert( "Equals failed. 3" , fkc.Equals(fkc));
+                       Assert.IsTrue( fkc.Equals(fkc2) , "Equals Assert.IsTrue.Failed. 1");
+                       Assert.IsTrue( fkc2.Equals(fkc) , "Equals Assert.IsTrue.Failed. 2");
+                       Assert.IsTrue( fkc.Equals(fkc) , "Equals Assert.IsTrue.Failed. 3");
 
-                       Assert( "Equals failed diff. 1" , fkc.Equals(fkcDiff) == false);
+                       Assert.IsTrue( fkc.Equals(fkcDiff) == false , "Equals Assert.IsTrue.Failed diff. 1");
 
-                       //Assert( "Hash Code Failed. 1", fkc.GetHashCode() == fkc2.GetHashCode() );
-                       Assert( "Hash Code Failed. 2", fkc.GetHashCode() != fkcDiff.GetHashCode() );
+                       //Assert.IsTrue( "Hash Code Assert.IsTrue.Failed. 1", fkc.GetHashCode() == fkc2.GetHashCode() );
+                       Assert.IsTrue( fkc.GetHashCode() != fkcDiff.GetHashCode() , "Hash Code Assert.IsTrue.Failed. 2");
        
                }
 
@@ -512,7 +515,7 @@ namespace MonoTests.System.Data
                        t2.Rows.Add (new object [] {10});
 
                        t1.Rows [0][0]=20;
-                       Assert("#1", (int)t2.Rows [0][0] == 20);
+                       Assert.IsTrue((int)t2.Rows [0][0] == 20, "#1");
                }
 
                [Test]
index cc8196e0c9681eb1f568b93e8cc7f6ccb8e2b72c..0a99b71bc323319293eddc6fbbfde4d7053512f7 100644 (file)
@@ -38,7 +38,7 @@ using NUnit.Framework;
 namespace MonoTests.System.Xml
 {
        [TestFixture]
-       public class XmlDataDocumentTest2 : Assertion
+       public class XmlDataDocumentTest2 
        {
                string xml = "<NewDataSet><table><row><col1>1</col1><col2>2</col2></row></table></NewDataSet>";
 
@@ -53,8 +53,8 @@ namespace MonoTests.System.Xml
                public void TestDefaultCtor ()
                {
                        XmlDataDocument doc = new XmlDataDocument ();
-                       AssertNotNull (doc.DataSet);
-                       AssertEquals ("NewDataSet", doc.DataSet.DataSetName);
+                       Assert.IsNotNull (doc.DataSet);
+                       Assert.AreEqual ("NewDataSet", doc.DataSet.DataSetName);
                }
 
                [Test]
@@ -117,73 +117,73 @@ namespace MonoTests.System.Xml
                        ds.Relations.Add (rel);\r
                        XmlDataDocument doc = new XmlDataDocument (ds);\r
                        doc.LoadXml ("<set><tab1><col1>1</col1><col2/><child><ref>1</ref><val>aaa</val></child></tab1></set>");\r
-                       AssertEquals (1, ds.Tables [0].Rows.Count);\r
-                       AssertEquals (1, ds.Tables [1].Rows.Count);\r
+                       Assert.AreEqual (1, ds.Tables [0].Rows.Count);\r
+                       Assert.AreEqual (1, ds.Tables [1].Rows.Count);\r
 \r
                        // document element - no mapped row\r
                        XmlElement el = doc.DocumentElement;\r
-                       AssertNull (doc.GetRowFromElement (el));\r
+                       Assert.IsNull (doc.GetRowFromElement (el));\r
 \r
                        // tab1 element - has mapped row\r
                        el = el.FirstChild as XmlElement;\r
                        DataRow row = doc.GetRowFromElement (el);\r
-                       AssertNotNull (row);\r
-                       AssertEquals (DataRowState.Added, row.RowState);\r
+                       Assert.IsNotNull (row);\r
+                       Assert.AreEqual (DataRowState.Added, row.RowState);\r
 \r
                        // col1 - it is column. no mapped row\r
                        el = el.FirstChild as XmlElement;\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertNull (row);\r
+                       Assert.IsNull (row);\r
 \r
                        // col2 - it is column. np mapped row\r
                        el = el.NextSibling as XmlElement;\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertNull (row);\r
+                       Assert.IsNull (row);\r
 \r
                        // child - has mapped row\r
                        el = el.NextSibling as XmlElement;\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertNotNull (row);\r
-                       AssertEquals (DataRowState.Added, row.RowState);\r
+                       Assert.IsNotNull (row);\r
+                       Assert.AreEqual (DataRowState.Added, row.RowState);\r
 \r
                        // created (detached) table 1 element (used later)\r
                        el = doc.CreateElement ("tab1");\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertEquals (DataRowState.Detached, row.RowState);\r
-                       AssertEquals (1, dt.Rows.Count); // not added yet\r
+                       Assert.AreEqual (DataRowState.Detached, row.RowState);\r
+                       Assert.AreEqual (1, dt.Rows.Count); // not added yet\r
 \r
                        // adding a node before setting EnforceConstraints\r
                        // raises an error\r
                        try {\r
                                doc.DocumentElement.AppendChild (el);\r
-                               Fail ("Invalid Operation should occur; EnforceConstraints prevents addition.");\r
+                               Assert.Fail ("Invalid Operation should occur; EnforceConstraints prevents addition.");\r
                        } catch (InvalidOperationException) {\r
                        }\r
 \r
                        // try again...\r
                        ds.EnforceConstraints = false;\r
-                       AssertEquals (1, dt.Rows.Count); // not added yet\r
+                       Assert.AreEqual (1, dt.Rows.Count); // not added yet\r
                        doc.DocumentElement.AppendChild (el);\r
-                       AssertEquals (2, dt.Rows.Count); // added\r
+                       Assert.AreEqual (2, dt.Rows.Count); // added\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertEquals (DataRowState.Added, row.RowState); // changed\r
+                       Assert.AreEqual (DataRowState.Added, row.RowState); // changed\r
 \r
                        // Irrelevant element\r
                        XmlElement el2 = doc.CreateElement ("hoge");\r
                        row = doc.GetRowFromElement (el2);\r
-                       AssertNull (row);\r
+                       Assert.IsNull (row);\r
 \r
                        // created table 2 element (used later)\r
                        el = doc.CreateElement ("child");\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertEquals (DataRowState.Detached, row.RowState);\r
+                       Assert.AreEqual (DataRowState.Detached, row.RowState);\r
 \r
                        // Adding it to irrelevant element performs no row state change.\r
-                       AssertEquals (1, dt2.Rows.Count); // not added yet\r
+                       Assert.AreEqual (1, dt2.Rows.Count); // not added yet\r
                        el2.AppendChild (el);\r
-                       AssertEquals (1, dt2.Rows.Count); // still not added\r
+                       Assert.AreEqual (1, dt2.Rows.Count); // still not added\r
                        row = doc.GetRowFromElement (el);\r
-                       AssertEquals (DataRowState.Detached, row.RowState); // still detached here\r
+                       Assert.AreEqual (DataRowState.Detached, row.RowState); // still detached here\r
                }\r
 
                // bug #54505
@@ -244,8 +244,8 @@ namespace MonoTests.System.Xml
                        StringReader sr = new StringReader (sw.ToString());
                        doc1.Load (sr);
 
-                       AssertEquals ("#1", 1, ds1.Tables [0].Rows.Count);
-                       AssertEquals ("#2", 1, ds1.Tables [0].Rows [0][0]);
+                       Assert.AreEqual (1, ds1.Tables [0].Rows.Count, "#1");
+                       Assert.AreEqual (1, ds1.Tables [0].Rows [0][0], "#2");
                }
 
                [Test]
@@ -267,8 +267,8 @@ namespace MonoTests.System.Xml
                        StringReader sr = new StringReader (sw.ToString());
                        doc1.Load (sr);
 
-                       AssertEquals ("#1", 1, ds1.Tables [0].Rows [0][0]);
-                       AssertEquals ("#2", true, ds1.Tables [0].Rows [0].IsNull (1));
+                       Assert.AreEqual (1, ds1.Tables [0].Rows [0][0], "#1");
+                       Assert.AreEqual (true, ds1.Tables [0].Rows [0].IsNull (1), "#2");
                }
 
                [Test]
@@ -301,9 +301,9 @@ namespace MonoTests.System.Xml
                        StringReader sreader = new StringReader (swriter.ToString ());
                        DataSet ds1 = ds.Clone ();
                        XmlDataDocument doc1 = new XmlDataDocument (ds1);
-                       AssertEquals ("#2" , 0, ds1.Tables [0].Rows.Count);
+                       Assert.AreEqual (0 , ds1.Tables [0].Rows.Count, "#2");
                        doc1.Load (sreader);
-                       AssertEquals ("#3" , 3, ds1.Tables [0].Rows.Count);
+                       Assert.AreEqual (3 , ds1.Tables [0].Rows.Count, "#3");
                }
        }
 }
diff --git a/mcs/class/System.Data/mobile_static_System.Data_test.dll.exclude.sources b/mcs/class/System.Data/mobile_static_System.Data_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..0022a9e
--- /dev/null
@@ -0,0 +1,18 @@
+System.Data.Odbc/OdbcCommandBuilderTest.cs
+System.Data.Odbc/OdbcCommandTest.cs
+System.Data.Odbc/OdbcConnectionStringBuilderTest.cs
+System.Data.Odbc/OdbcConnectionTest.cs
+System.Data.Odbc/OdbcDataAdapterTest.cs
+System.Data.Odbc/OdbcDataReaderTest.cs
+System.Data.Odbc/OdbcMetaDataCollectionNamesTest.cs
+System.Data.Odbc/OdbcParameterCollectionTest.cs
+System.Data.Odbc/OdbcParameterTest.cs
+System.Data.Odbc/OdbcPermissionAttributeTest.cs
+System.Data.Odbc/OdbcPermissionTest.cs
+System.Data.OleDb/OleDbCommandTest.cs
+System.Data.OleDb/OleDbConnectionTest.cs
+System.Data.OleDb/OleDbDataAdapterTest.cs
+System.Data.OleDb/OleDbMetaDataCollectionNamesTest.cs
+System.Data.OleDb/OleDbParameterCollectionTest.cs
+System.Data.OleDb/OleDbPermissionAttributeTest.cs
+System.Data.OleDb/OleDbPermissionTest.cs
diff --git a/mcs/class/System.Data/mobile_static_System.Data_test.dll.excludes b/mcs/class/System.Data/mobile_static_System.Data_test.dll.excludes
deleted file mode 100644 (file)
index 0022a9e..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-System.Data.Odbc/OdbcCommandBuilderTest.cs
-System.Data.Odbc/OdbcCommandTest.cs
-System.Data.Odbc/OdbcConnectionStringBuilderTest.cs
-System.Data.Odbc/OdbcConnectionTest.cs
-System.Data.Odbc/OdbcDataAdapterTest.cs
-System.Data.Odbc/OdbcDataReaderTest.cs
-System.Data.Odbc/OdbcMetaDataCollectionNamesTest.cs
-System.Data.Odbc/OdbcParameterCollectionTest.cs
-System.Data.Odbc/OdbcParameterTest.cs
-System.Data.Odbc/OdbcPermissionAttributeTest.cs
-System.Data.Odbc/OdbcPermissionTest.cs
-System.Data.OleDb/OleDbCommandTest.cs
-System.Data.OleDb/OleDbConnectionTest.cs
-System.Data.OleDb/OleDbDataAdapterTest.cs
-System.Data.OleDb/OleDbMetaDataCollectionNamesTest.cs
-System.Data.OleDb/OleDbParameterCollectionTest.cs
-System.Data.OleDb/OleDbPermissionAttributeTest.cs
-System.Data.OleDb/OleDbPermissionTest.cs
diff --git a/mcs/class/System.Deployment/System.Deployment-net_4_x.csproj b/mcs/class/System.Deployment/System.Deployment-net_4_x.csproj
new file mode 100644 (file)
index 0000000..bd40ae2
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E378448B-0D48-4338-BAE0-CEB9A7CB3B80}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Deployment</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 3dc11aa3b01e293dc886b475ccd6ff36704715d2..1e9a30c444cc473480977e8837deae1372ed948d 100644 (file)
@@ -13,6 +13,10 @@ TEST_MCS_FLAGS =
 include ../../build/library.make
 
 ifneq (plaindesign/,$(intermediate))
+csproj-local:
+       $(MAKE) csproj-local intermediate=plaindesign/
+
 $(the_libdir_base)plaindesign/System.Design.dll:
        $(MAKE) intermediate=plaindesign/ $(the_libdir_base)plaindesign/System.Design.dll
 endif
+
index 9431cc176bf37879467a405c7211aed16b59f715..4750c28d29fd9972de0daaeb2c9f2953b2a77d46 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.Design/System.Design-plaindesign-net_4_x.csproj b/mcs/class/System.Design/System.Design-plaindesign-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1248aef
--- /dev/null
@@ -0,0 +1,440 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x/plaindesign</OutputPath>\r
+    <IntermediateOutputPath>obj-plaindesign</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Design</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\build\common\Locale.cs" />\r
+    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DataSourceDescriptor.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DataSourceDescriptorCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DataSourceGroup.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DataSourceGroupCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DataSourceProviderService.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataColumn.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataConnection.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataParameter.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataRelationship.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataSchemaClass.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataStoredProcedure.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataTable.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataTableBase.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\DesignerDataView.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\IDataEnvironment.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\IDesignerDataSchema.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Data\QueryBuilderMode.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\BasicDesignerLoader.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomComponentSerializationService.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomDesignerLoader.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomLocalizationModel.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomLocalizationProvider.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomSerializationProvider.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomSerializerBase.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CodeDomSerializerException.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\CollectionCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\ComponentCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\DesignerSerializationManager.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\EnumCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\EventCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\ExpressionContext.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\ICodeDomDesignerReload.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\MemberCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\ObjectStatementCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\PrimitiveCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\PropertyCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\RootCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\RootContext.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\SerializeAbsoluteContext.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\StatementContext.cs" />\r
+    <Compile Include="System.ComponentModel.Design.Serialization\TypeCodeDomSerializer.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ActiveDesignSurfaceChangedEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ActiveDesignSurfaceChangedEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ArrayEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\BinaryEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ByteViewer.cs" />\r
+    <Compile Include="System.ComponentModel.Design\CollectionEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ComponentActionsType.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ComponentDesigner.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DateTimeEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionHeaderItem.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionItem.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionItemCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionList.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionListCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionListsChangedEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionListsChangedEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionListsChangedType.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionMethodItem.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionPropertyItem.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionTextItem.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionUIService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionUIStateChangeEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionUIStateChangeEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerActionUIStateChangeType.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerCommandSet.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerEventService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignerHost.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignModeNestedContainer.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignModeSite.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurface.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurfaceCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurfaceEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurfaceEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurfaceManager.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DesignSurfaceServiceContainer.cs" />\r
+    <Compile Include="System.ComponentModel.Design\DisplayMode.cs" />\r
+    <Compile Include="System.ComponentModel.Design\EventBindingService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ExceptionCollection.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ExtenderService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\IComponentDesignerDebugService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\IComponentDesignerStateService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\InheritanceService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\LoadedEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\LoadedEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\LocalizationExtenderProvider.cs" />\r
+    <Compile Include="System.ComponentModel.Design\MenuCommandsChangedEventArgs.cs" />\r
+    <Compile Include="System.ComponentModel.Design\MenuCommandsChangedEventHandler.cs" />\r
+    <Compile Include="System.ComponentModel.Design\MenuCommandsChangedType.cs" />\r
+    <Compile Include="System.ComponentModel.Design\MenuCommandService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\MultilineStringEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ObjectSelectorEditor.cs" />\r
+    <Compile Include="System.ComponentModel.Design\ReferenceService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\SelectionService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\TypeDescriptorFilterService.cs" />\r
+    <Compile Include="System.ComponentModel.Design\UndoEngine.cs" />\r
+    <Compile Include="System.Data.Design\MethodSignatureGenerator.cs" />\r
+    <Compile Include="System.Data.Design\ParameterGenerationOption.cs" />\r
+    <Compile Include="System.Data.Design\TypedDataSetGenerator.cs" />\r
+    <Compile Include="System.Data.Design\TypedDataSetGeneratorException.cs" />\r
+    <Compile Include="System.Data.Design\TypedDataSetSchemaImporterExtension.cs" />\r
+    <Compile Include="System.Design\DummyClass.cs" />\r
+    <Compile Include="System.Diagnostics.Design\LogConverter.cs" />\r
+    <Compile Include="System.Diagnostics.Design\ProcessDesigner.cs" />\r
+    <Compile Include="System.Diagnostics.Design\ProcessModuleDesigner.cs" />\r
+    <Compile Include="System.Diagnostics.Design\ProcessThreadDesigner.cs" />\r
+    <Compile Include="System.Diagnostics.Design\StringValueConverter.cs" />\r
+    <Compile Include="System.Messaging.Design\MessageDesigner.cs" />\r
+    <Compile Include="System.Resources.Tools\StronglyTypedResourceBuilder.cs" />\r
+    <Compile Include="System.ServiceProcess.Design\ServiceControllerDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.Util\DummyClass.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\AdRotatorDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\BaseDataBoundControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\BaseDataListComponentEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\BaseDataListDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\BaseValidatorDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\ButtonDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\CalendarAutoFormatDialog.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\CalendarDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\CheckBoxDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\CompositeControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\DataBoundControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\DataListComponentEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\DataProviderNameConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\DataSourceIDConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\HierarchicalDataBoundControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\HyperLinkDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\LabelDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\LinkButtonDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\ListControlDataBindingHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\ListControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\PanelDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\RegexEditorDialog.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\RegexTypeEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\RepeaterDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\TableCellsCollectionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\TableDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\TableRowsCollectionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design.WebControls\XmlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\AppSettingsExpressionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\CalendarDataBindingHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\ClientScriptItem.cs" />\r
+    <Compile Include="System.Web.UI.Design\ClientScriptItemCollection.cs" />\r
+    <Compile Include="System.Web.UI.Design\ColorBuilder.cs" />\r
+    <Compile Include="System.Web.UI.Design\ConnectionStringEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ConnectionStringsExpressionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ContainerControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\ContentDefinition.cs" />\r
+    <Compile Include="System.Web.UI.Design\ContentDesignerState.cs" />\r
+    <Compile Include="System.Web.UI.Design\ControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\ControlDesignerState.cs" />\r
+    <Compile Include="System.Web.UI.Design\ControlLocation.cs" />\r
+    <Compile Include="System.Web.UI.Design\ControlParser.cs" />\r
+    <Compile Include="System.Web.UI.Design\ControlPersister.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataBindingCollectionConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataBindingCollectionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataBindingHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataBindingValueUIHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataColumnSelectionConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataFieldConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataMemberConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSetFieldSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSetSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSetViewSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSourceBooleanViewSchemaConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSourceConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSourceDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\DataSourceViewSchemaConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerAutoFormat.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerAutoFormatCollection.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerAutoFormatStyle.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerDataSourceView.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerHierarchicalDataSourceView.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerObject.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerRegion.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerRegionCollection.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignerRegionMouseEventArgs.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignTimeData.cs" />\r
+    <Compile Include="System.Web.UI.Design\DesignTimeResourceProviderFactory.cs" />\r
+    <Compile Include="System.Web.UI.Design\EditableDesignerRegion.cs" />\r
+    <Compile Include="System.Web.UI.Design\ExpressionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ExpressionEditorSheet.cs" />\r
+    <Compile Include="System.Web.UI.Design\ExpressionsCollectionConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\ExpressionsCollectionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\HierarchicalDataSourceConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\HierarchicalDataSourceDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\HtmlControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\HtmlIntrinsicControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\HyperLinkDataBindingHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\IContentResolutionService.cs" />\r
+    <Compile Include="System.Web.UI.Design\IControlDesignerBehaviour.cs" />\r
+    <Compile Include="System.Web.UI.Design\IControlDesignerTag.cs" />\r
+    <Compile Include="System.Web.UI.Design\IControlDesignerView.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataBindingSchemaProvider.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataSourceDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataSourceFieldSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataSourceProvider.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataSourceSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDataSourceViewSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDesignTimeResourceProviderFactoryService.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDesignTimeResourceWriter.cs" />\r
+    <Compile Include="System.Web.UI.Design\IDocumentProjectItem.cs" />\r
+    <Compile Include="System.Web.UI.Design\IFolderProjectItem.cs" />\r
+    <Compile Include="System.Web.UI.Design\IHierarchicalDataSourceDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\IHtmlControlDesignerBehavior.cs" />\r
+    <Compile Include="System.Web.UI.Design\ImageUrlEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\IProjectItem.cs" />\r
+    <Compile Include="System.Web.UI.Design\ITemplateEditingFrame.cs" />\r
+    <Compile Include="System.Web.UI.Design\ITemplateEditingService.cs" />\r
+    <Compile Include="System.Web.UI.Design\IWebAdministrationService.cs" />\r
+    <Compile Include="System.Web.UI.Design\IWebApplication.cs" />\r
+    <Compile Include="System.Web.UI.Design\IWebFormReferenceManager.cs" />\r
+    <Compile Include="System.Web.UI.Design\IWebFormsBuilderUIService.cs" />\r
+    <Compile Include="System.Web.UI.Design\IWebFormsDocumentService.cs" />\r
+    <Compile Include="System.Web.UI.Design\MailFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\MdbDataFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ReadWriteControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\ResourceExpressionEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ResourceExpressionEditorSheet.cs" />\r
+    <Compile Include="System.Web.UI.Design\SkinIDTypeConverter.cs" />\r
+    <Compile Include="System.Web.UI.Design\SupportsPreviewControlAttribute.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplatedControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplatedEditableDesignerRegion.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateDefinition.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateEditingService.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateEditingVerb.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateGroup.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateGroupCollection.cs" />\r
+    <Compile Include="System.Web.UI.Design\TemplateModeChangedEventArgs.cs" />\r
+    <Compile Include="System.Web.UI.Design\TextControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\TextDataBindingHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\TransactedChangeCallback.cs" />\r
+    <Compile Include="System.Web.UI.Design\TypeSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\UrlBuilder.cs" />\r
+    <Compile Include="System.Web.UI.Design\UrlBuilderOptions.cs" />\r
+    <Compile Include="System.Web.UI.Design\UrlEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\UserControlDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\UserControlFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\ViewEvent.cs" />\r
+    <Compile Include="System.Web.UI.Design\ViewEventArgs.cs" />\r
+    <Compile Include="System.Web.UI.Design\ViewEventHandler.cs" />\r
+    <Compile Include="System.Web.UI.Design\ViewFlags.cs" />\r
+    <Compile Include="System.Web.UI.Design\ViewRendering.cs" />\r
+    <Compile Include="System.Web.UI.Design\WebControlToolboxItem.cs" />\r
+    <Compile Include="System.Web.UI.Design\WebFormsDesignerActionService.cs" />\r
+    <Compile Include="System.Web.UI.Design\WebFormsReferenceManager.cs" />\r
+    <Compile Include="System.Web.UI.Design\WebFormsRootDesigner.cs" />\r
+    <Compile Include="System.Web.UI.Design\XmlDataFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\XmlDocumentSchema.cs" />\r
+    <Compile Include="System.Web.UI.Design\XmlFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\XmlUrlEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\XsdSchemaFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\XslTransformFileEditor.cs" />\r
+    <Compile Include="System.Web.UI.Design\XslUrlEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\Adorner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\Behavior.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\BehaviorDragDropEventArgs.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\BehaviorDragDropEventHandler.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\BehaviorService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\BehaviorServiceAdornerCollection.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\BehaviorServiceAdornerCollectionEnumerator.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\ComponentGlyph.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\ControlBodyGlyph.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\Glyph.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\GlyphCollection.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\GlyphSelectionType.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\SnapLine.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\SnapLinePriority.cs" />\r
+    <Compile Include="System.Windows.Forms.Design.Behavior\SnapLineType.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\AnchorEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\AxImporter.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\AxParameterData.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\AxWrapperGen.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\BorderSidesEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ComponentDocumentDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ComponentTray.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ControlBindingsConverter.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ControlCodeDomSerializer.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ControlCollectionCodeDomSerializer.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ControlDataObject.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ControlDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DataMemberFieldConverter.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DataMemberFieldEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DataMemberListEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DataSourceConverter.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DefaultMenuCommands.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DesignerOptions.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DockEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\DocumentDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\EventHandlerService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\FileNameEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\FolderNameEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\FormatStringEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\FormDocumentDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ImageCollectionEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ImageIndexEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ImageListCodeDomSerializer.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ImageListImageEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\IMenuEditorService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\IMessageReceiver.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\IOleDragClient.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ISelectionUIHandler.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\IUISelectionService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ListControlStringCollectionEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\MaskDescriptor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\MenuCommands.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\Native.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\PanelDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ParentControlDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ScrollableControlDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\SelectionFrame.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\SelectionRules.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\ShortcutKeysEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\SplitContainerDesigner.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\StringArrayEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\StringCollectionEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\TabPageCollectionEditor.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\UISelectionService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\WindowsFormsDesignerOptionService.cs" />\r
+    <Compile Include="System.Windows.Forms.Design\WndProcRouter.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Web/System.Web-plainweb-net_4_x.csproj">\r
+      <Project>{DE51B021-D51C-4F26-99EE-B0729D97631E}</Project>\r
+      <Name>System.Web-plainweb-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Windows.Forms/System.Windows.Forms-net_4_x.csproj">\r
+      <Project>{108227C7-8ED9-4483-949D-07BF0DA1A201}</Project>\r
+      <Name>System.Windows.Forms-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Drawing/System.Drawing-net_4_x.csproj">\r
+      <Project>{584A5E46-2958-4CB2-8DF9-188B420D0BB0}</Project>\r
+      <Name>System.Drawing-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../Accessibility/Accessibility-net_4_x.csproj">\r
+      <Project>{E51283DC-7090-479E-B723-01C0953F18EA}</Project>\r
+      <Name>Accessibility-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 5190562fe73656c12d7e09c36dc9f289f9e0f2f8..f00cf92ef4e5efd6ec28760c9ff4d9341a24662d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c31a24cab6fe8798cbef93f2ee4970d37a0aed82..31cfc603485e3bc1bda074c53dc138df526d7e12 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 989a4fb01a790e929b081f26d799c8f73464139a..cd5243850061ff0556e89678951c9837a4f8029a 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 717d644d3d6c5fc5f30e48dc87d286ac47454890..00f54219c78c3923f771a72924af6a13a7a73d15 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index a7964880cd66d653e4f2a2ec6c4c464f4c23e558..c7ee9e4201b0c0faf9e8c41748eaaa907a79a50b 100644 (file)
@@ -71,6 +71,27 @@ namespace MonoTests.System.Drawing.Imaging {
                        return sRslt;
                }
 
+               private bool IsArm64Process ()
+               {
+                       if (Environment.OSVersion.Platform != PlatformID.Unix || !Environment.Is64BitProcess)
+                               return false;
+
+                       try {
+                               var process = new global::System.Diagnostics.Process ();
+                               process.StartInfo.FileName = "uname";
+                               process.StartInfo.Arguments = "-m";
+                               process.StartInfo.RedirectStandardOutput = true;
+                               process.StartInfo.UseShellExecute = false;
+                               process.Start ();
+                               process.WaitForExit ();
+                               var output = process.StandardOutput.ReadToEnd ();
+
+                               return output.Trim () == "aarch64";
+                       } catch {
+                               return false;
+                       }
+               }
+
                /* Checks bitmap features on a known 1bbp bitmap */
                [Test]
                public void Bitmap1bitFeatures ()
@@ -290,6 +311,9 @@ namespace MonoTests.System.Drawing.Imaging {
                [Test]
                public void Bitmap2bitFeatures ()
                {
+                       if (IsArm64Process ())
+                               Assert.Ignore ("https://bugzilla.xamarin.com/show_bug.cgi?id=41171");
+
                        string sInFile = getInFile ("bitmaps/81674-2bpp.png");
                        using (Bitmap bmp = new Bitmap (sInFile)) {
                                GraphicsUnit unit = GraphicsUnit.World;
@@ -318,6 +342,9 @@ namespace MonoTests.System.Drawing.Imaging {
                [Test]
                public void Bitmap2bitPixels ()
                {
+                       if (IsArm64Process ())
+                               Assert.Ignore ("https://bugzilla.xamarin.com/show_bug.cgi?id=41171");
+
                        string sInFile = getInFile ("bitmaps/81674-2bpp.png");
                        using (Bitmap bmp = new Bitmap (sInFile)) {
 #if false
@@ -350,6 +377,9 @@ namespace MonoTests.System.Drawing.Imaging {
                [Test]
                public void Bitmap2bitData ()
                {
+                       if (IsArm64Process ())
+                               Assert.Ignore ("https://bugzilla.xamarin.com/show_bug.cgi?id=41171");
+
                        string sInFile = getInFile ("bitmaps/81674-2bpp.png");
                        using (Bitmap bmp = new Bitmap (sInFile)) {
                                BitmapData data = bmp.LockBits (new Rectangle (0, 0, bmp.Width, bmp.Height), ImageLockMode.ReadOnly, PixelFormat.Format24bppRgb);
index 66e4a839e559942d7b580c462e2feea9e5f6e347..788104cabe5d626d6e7c3fdc72a29bf1ca6d531a 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414,169</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index ad856760b9ade5456737a2c73cdb5b9a4aa8dc98..d0a7c52ddb6c39b21351b577a2544d7981f80b20 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,168,162</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 12081f084f315afe366c98b9c56841a6c1cf84d2..63bf1dbfbf12cd0ba5c75e5ad8f71ead09a12a7c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 0354311b478478a834c847ac9c3a44f88cfb2887..4321db8534e30833c490da4c67df46455d1b29cb 100644 (file)
@@ -105,5 +105,31 @@ namespace MonoTests.System.IO.Compression.FileSystem
 
                        Directory.Delete ("extract", true);
                }
+
+               [Test]
+               public void ZipCreateFromEntryChangeTimestamp()
+               {
+                       if (File.Exists ("foo.zip"))
+                               File.Delete ("foo.zip");
+
+                       var file = "foo/foo.txt";
+                       using (var archive = new ZipArchive(File.Open("foo.zip", FileMode.Create),
+                               ZipArchiveMode.Update))
+                       {
+                               archive.CreateEntryFromFile(file, file);
+                       }
+
+                       var date = File.GetLastWriteTimeUtc(file);
+
+                       using (var archive = new ZipArchive (File.Open ("foo.zip", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var entry = archive.GetEntry (file);
+                               Assert.IsNotNull (entry);
+                               Assert.AreEqual(entry.LastWriteTime.Year, date.Year);
+                               Assert.AreEqual(entry.LastWriteTime.Month, date.Month);
+                               Assert.AreEqual(entry.LastWriteTime.Day, date.Day);
+                       }
+               }
        }
 }
index 07a8448171ed51a1723c1d989ee53ddd071de7f2..36c4146b485139d4725bb0918abe8cf65ef919d8 100644 (file)
@@ -56,6 +56,7 @@ namespace System.IO.Compression
                                FileAccess.Read, FileShare.Read))
                        {
                                var zipArchiveEntry = destination.CreateEntry (entryName, compressionLevel);
+                               zipArchiveEntry.LastWriteTime = File.GetLastWriteTimeUtc(sourceFileName);
 
                                using (Stream entryStream = zipArchiveEntry.Open ())
                                        stream.CopyTo (entryStream);
index 121a6b311302ba0d125c6fa1b35a64fda25272d6..37cf1fcf7a85fabfbb2c5b702efb02500e71d687 100644 (file)
@@ -32,5 +32,10 @@ namespace SharpCompress.Archive.Zip
         {
             get { return (Parts.Single() as SeekableZipFilePart).Comment; }
         }
+
+        public override string ToString()
+        {
+            return this.Key;
+        }
     }
 }
\ No newline at end of file
index acb5e2ddc293f37845aa6dd4235dedef3175c7a1..f19a9c27647921fb0c277f4b8f5edfe8e8ffa7fc 100644 (file)
@@ -10,7 +10,6 @@ namespace SharpCompress.Archive.Zip
     {
         private readonly string path;
         private readonly long size;
-        private readonly DateTime? lastModified;
         private readonly bool closeStream;
         private readonly Stream stream;
         private bool isDisposed;
@@ -22,7 +21,7 @@ namespace SharpCompress.Archive.Zip
             this.stream = stream;
             this.path = path;
             this.size = size;
-            this.lastModified = lastModified;
+            this.LastModifiedTime = lastModified;
             this.closeStream = closeStream;
         }
 
@@ -46,11 +45,6 @@ namespace SharpCompress.Archive.Zip
             get { return size; }
         }
 
-        public override DateTime? LastModifiedTime
-        {
-            get { return lastModified; }
-        }
-
         public override DateTime? CreatedTime
         {
             get { return null; }
index 6ed742eeca357f3d356466d2f7e36f4b27cd1ec7..2c0ec07e78426d580f3fcd29f61e4f53e8cb6106 100644 (file)
@@ -16,6 +16,13 @@ namespace SharpCompress.Common.Zip
                 this.filePart = filePart;
                 lastModifiedTime = Utility.DosDateToDateTime(filePart.Header.LastModifiedDate,
                                                              filePart.Header.LastModifiedTime);
+                if (lastModifiedTime == default(DateTime))
+                {
+                    // On .NET on Windows, for zip entries that don't have a last write time,
+                    // the return value for ZipArchiveEntry.LastWriteTime is:
+                    //   1/1/1980 12:00:00 AM, Ticks=624511296000000000
+                    lastModifiedTime = new DateTime(624511296000000000);
+                }
             }
         }
 
index 1393dd6c70c4fc9c8ae9b2bf9fa8e0cf6647d11d..05c89d3719423914db872f1aba03314a22e883c7 100644 (file)
@@ -16,6 +16,7 @@ namespace SharpCompress.IO
             {
                 stream.Position = origin.Value;
             }
+            length = bytesToRead;
             BytesLeftToRead = bytesToRead;
         }
 
@@ -27,6 +28,8 @@ namespace SharpCompress.IO
             }
         }
 
+        private long length;
+
         private long BytesLeftToRead { get; set; }
 
         public Stream Stream { get; private set; }
@@ -53,12 +56,12 @@ namespace SharpCompress.IO
 
         public override long Length
         {
-            get { throw new System.NotImplementedException(); }
+            get { return length; }
         }
 
         public override long Position
         {
-            get { throw new System.NotImplementedException(); }
+            get { return Length - BytesLeftToRead; }
             set { throw new System.NotImplementedException(); }
         }
 
index 5060897cb9abf3b3fa7ceb7419e65d548f5e1def..fb58a3c1fbb160c87c9e1812ed920b97db19ab73 100644 (file)
@@ -22,7 +22,7 @@ namespace SharpCompress.Writer.Zip
             byte[] encodedFilename = Encoding.UTF8.GetBytes(FileName);
             byte[] encodedComment = Encoding.UTF8.GetBytes(Comment);
 
-            outputStream.Write(new byte[] {80, 75, 1, 2, 0x14, 0, 0x0A, 0}, 0, 8);
+            outputStream.Write(new byte[] {80, 75, 1, 2, 0x14, 0, 0x14, 0}, 0, 8);
             HeaderFlags flags = HeaderFlags.UTF8;
             if (!outputStream.CanSeek)
             {
index 8b0dc94c4ee61cc67ae49058f47dfe0c232709bc..48529c618dd8e62177cf11e211a4375d7d39ca09 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 36903c675b4858391d77cc4354732ce4a12a8501..64b102c2d3dd6b5f062b9869e08b341634ee1e69 100644 (file)
@@ -238,6 +238,58 @@ namespace MonoTests.System.IO.Compression
                        File.Delete ("create.zip");
                }
 
+               [Test]
+               public void ZipEnumerateEntriesModifiedTime()
+               {
+                       File.Copy("archive.zip", "test.zip", overwrite: true);
+                       var date = DateTimeOffset.Now;
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Update))
+                       {
+                               var entry = archive.GetEntry("foo.txt");
+                               entry.LastWriteTime = date;
+                       }
+
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var entry = archive.GetEntry("foo.txt");
+                               Assert.AreEqual(entry.LastWriteTime.Year, date.Year);
+                               Assert.AreEqual(entry.LastWriteTime.Month, date.Month);
+                               Assert.AreEqual(entry.LastWriteTime.Day, date.Day);
+
+                       }
+
+                       File.Delete ("test.zip");
+               }               
+
+               [Test]
+               public void ZipEnumerateArchiveDefaultLastWriteTime()
+               {
+                       using (var archive = new ZipArchive(File.Open("test.nupkg", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var entry = archive.GetEntry("_rels/.rels");
+                               Assert.AreEqual(new DateTime(624511296000000000).Ticks, entry.LastWriteTime.Ticks);
+                               Assert.IsNotNull(entry);
+                       }
+               }
+
+               [Test]
+               public void ZipGetArchiveEntryStreamLengthPositionReadMode()
+               {
+                       using (var archive = new ZipArchive(File.Open("test.nupkg", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var entry = archive.GetEntry("_rels/.rels");
+                               using (var stream = entry.Open())
+                               {
+                                       Assert.AreEqual(0, stream.Position);
+                                       Assert.AreEqual(425, stream.Length);
+                               }
+                       }
+               }
+
                [Test]
                public void ZipEnumerateEntriesReadMode()
                {
@@ -258,6 +310,87 @@ namespace MonoTests.System.IO.Compression
                        File.Delete ("test.zip");
                }
 
+               [Test]
+               public void ZipWriteEntriesUpdateMode()
+               {
+                       File.Copy("archive.zip", "test.zip", overwrite: true);
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Update))
+                       {
+                               var foo = archive.GetEntry("foo.txt");
+                               using (var stream = foo.Open())
+                               using (var sw = new StreamWriter(stream))
+                               {
+                                       sw.Write("TEST");
+                               }
+                       }
+
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var foo = archive.GetEntry("foo.txt");
+                               using (var stream = foo.Open())
+                               using (var sr = new StreamReader(stream))
+                               {
+                                       var line = sr.ReadLine();
+                                       Assert.AreEqual("TEST", line);
+                               }
+                       }
+
+                       File.Delete ("test.zip");
+               }
+
+               [Test]
+               public void ZipWriteEntriesUpdateModeNewEntry()
+               {
+                       var stream = new MemoryStream();
+                       var zipArchive = new ZipArchive(stream, ZipArchiveMode.Update);
+
+                       var newEntry = zipArchive.CreateEntry("testEntry");
+
+                       using (var newStream = newEntry.Open())
+                       {
+                               using (var sw = new StreamWriter(newStream))
+                               {
+                                       sw.Write("TEST");
+                               }
+                       }
+               }
+
+               [Test]
+               public void ZipWriteEntriesUpdateModeNonZeroPosition()
+               {
+                       File.Copy("archive.zip", "test.zip", overwrite: true);
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Update))
+                       {
+                               var foo = archive.GetEntry("foo.txt");
+                               using (var stream = foo.Open())
+                               {
+                                       var line = stream.ReadByte();
+                                       using (var sw = new StreamWriter(stream))
+                                       {
+                                               sw.Write("TEST");
+                                       }
+                               }
+                       }
+
+                       using (var archive = new ZipArchive(File.Open("test.zip", FileMode.Open),
+                               ZipArchiveMode.Read))
+                       {
+                               var entries = archive.Entries;
+                               var foo = archive.GetEntry("foo.txt");
+                               using (var stream = foo.Open())
+                               using (var sr = new StreamReader(stream))
+                               {
+                                       var line = sr.ReadLine();
+                                       Assert.AreEqual("fTEST", line);
+                               }
+                       }
+
+                       File.Delete ("test.zip");
+               }
+
                [Test]
                public void ZipEnumerateEntriesUpdateMode()
                {
index f2ef892a910e4432e1331874b5a75c722b4133fc..4f0c7bb70b9ecb9d68e9176b5ac97f79e969e00f 100644 (file)
@@ -161,6 +161,14 @@ namespace System.IO.Compression
                        return CreateEntry(entryName, CompressionLevel.Optimal);
                }
 
+               internal SharpCompress.Archive.Zip.ZipArchiveEntry CreateEntryInternal(string entryName)
+               {
+                       var memoryStream = new MemoryStream();
+                       var entry = zipFile.AddEntry(entryName, memoryStream);
+
+                       return entry;
+               }
+
                public ZipArchiveEntry CreateEntry (string entryName, CompressionLevel compressionLevel)
                {
                        if (disposed)
@@ -178,9 +186,8 @@ namespace System.IO.Compression
                        if (zipFile == null)
                                throw new InvalidDataException("The zip archive is corrupt, and its entries cannot be retrieved.");
 
-                       var memoryStream = new MemoryStream();
-                       var entry = zipFile.AddEntry(entryName, memoryStream);
-                       var archiveEntry = new ZipArchiveEntry(this, entry);
+                       var internalEntry = CreateEntryInternal(entryName);
+                       var archiveEntry = new ZipArchiveEntry(this, internalEntry);
                        entries[entryName] = archiveEntry;
 
                        return archiveEntry;
index 0bc69786418acd9e49b53a51b51dc7fe2dce320c..002b6f14cebf24b891867403223f977f7c3b6b5f 100644 (file)
@@ -32,7 +32,7 @@ namespace System.IO.Compression
        internal class ZipArchiveEntryStream : Stream, IDisposable
        {
                private readonly ZipArchiveEntry entry;
-               private readonly Stream stream;
+               private Stream stream;
 
                public override bool CanRead {
                        get { 
@@ -42,13 +42,13 @@ namespace System.IO.Compression
 
                public override bool CanSeek {
                        get {
-                               return stream.CanSeek;
+                               return entry.Archive.Mode != ZipArchiveMode.Read;
                        }
                }
 
                public override bool CanWrite {
                        get {
-                               return stream.CanWrite;
+                               return entry.Archive.Mode != ZipArchiveMode.Read;
                        }
                }
 
@@ -95,9 +95,40 @@ namespace System.IO.Compression
 
                public override void Write (byte[] buffer, int offset, int count)
                {
+                       if (entry.Archive.Mode == ZipArchiveMode.Update && !entry.wasWritten)
+                       {
+                               // Replace the read-only stream with a writeable memory stream.
+                               if (!stream.CanWrite)
+                                   SetWriteable();
+                               entry.wasWritten = true;
+                       }
+
                        stream.Write(buffer, offset, count);
                }
 
+               internal void SetWriteable()
+               {
+                       var archive = entry.Archive;
+
+                       var internalEntry = entry.entry;
+                       var newEntry = archive.CreateEntryInternal(internalEntry.Key);
+                       var newStream = newEntry.OpenEntryStream();
+
+                       var openStream = stream;
+                       var position = openStream.Position;
+
+                       entry.openStream = null;
+                       entry.Open();
+
+                       openStream.CopyTo(newStream);
+                       newStream.Position = position;
+                       openStream.Dispose();
+
+                       archive.zipFile.RemoveEntry(internalEntry);
+                       entry.entry = newEntry;
+                       stream = newStream;
+               }
+
                public new void Dispose()
                {
                        Dispose(true);
@@ -117,8 +148,9 @@ namespace System.IO.Compression
 
        public class ZipArchiveEntry
        {
-               readonly SharpCompress.Archive.Zip.ZipArchiveEntry entry;
+               internal SharpCompress.Archive.Zip.ZipArchiveEntry entry;
                internal ZipArchiveEntryStream openStream;
+        internal bool wasWritten;
                private bool wasDeleted;
 
                internal ZipArchiveEntry(ZipArchive     archive, SharpCompress.Archive.Zip.ZipArchiveEntry entry)
@@ -174,7 +206,7 @@ namespace System.IO.Compression
                        if (Archive.disposed)
                                throw new ObjectDisposedException("The zip archive for this entry has been disposed.");
 
-                       if (Archive.Mode !=     ZipArchiveMode.Update)
+                       if (Archive.Mode != ZipArchiveMode.Update)
                                throw new NotSupportedException("The zip archive for this entry was opened in a mode other than Update.");
 
                        if (openStream != null)
@@ -198,9 +230,15 @@ namespace System.IO.Compression
                        if (Archive.Mode == ZipArchiveMode.Create && openStream != null)
                                throw new IOException("The archive for this entry was opened with the Create mode, and this entry has already been written to.");
 
-                       openStream = new ZipArchiveEntryStream(this, entry.OpenEntryStream());
+                       var entryStream = entry.OpenEntryStream();
+                       openStream = new ZipArchiveEntryStream(this, entryStream);
 
                        return openStream;
                }
+
+               public override string ToString()
+               {
+                       return FullName;
+               }
        }
 }
diff --git a/mcs/class/System.IO.Compression/test.nupkg b/mcs/class/System.IO.Compression/test.nupkg
new file mode 100644 (file)
index 0000000..0a7fe05
Binary files /dev/null and b/mcs/class/System.IO.Compression/test.nupkg differ
index a7f602619e0b5f6ede7ac5fea0adabc79a287306..e834a58af15ca7366fb3e520c06c9523fa2a7495 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 5a0a057bb66c16dfb25f7525586354779c433775..ea349ebcc43a57fd85ffff74bf19184035f5fb7f 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
-      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
-      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
       <Name>System.Web-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
+      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
+      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 4c2329392d3a0be91b5336bd1b71053d9293942f..56c51c6330d93cd5a7c0dfa05716bdf170d4eb85 100644 (file)
@@ -2,14 +2,11 @@ thisdir = class/System.Json.Microsoft
 SUBDIRS = 
 include ../../build/rules.make
 
-System.Json.Properties.Resources.resources: System.Json/Properties/Resources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = System.Json.Properties.Resources,System.Json/Properties/Resources.resx
 
 LIBRARY = System.Json.Microsoft.dll
 LIB_REFS = System System.Xml System.Core System.Runtime.Serialization
-LIB_MCS_FLAGS = /d:ASPNETMVC -keyfile:../winfx.pub -delaysign \
-               /resource:System.Json.Properties.Resources.resources
-
+LIB_MCS_FLAGS = /d:ASPNETMVC -keyfile:../winfx.pub -delaysign 
 EXTRA_DISTFILES = System.Json/Properties/Resources.resx
 
 ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
@@ -24,5 +21,3 @@ endif
 TEST_MCS_FLAGS = $(LIB_MCS_FLAGS)
 
 include ../../build/library.make
-
-$(the_lib): System.Json.Properties.Resources.resources
index a44cb7d17f13e8603a59e6a8a8391d74fbbd9f9e..136d3cc0f0f60f82bbb5d4a99d7c281a053c8537 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Json.Properties.Resources.resources">\r
+    <EmbeddedResource Include="System.Json/Properties/Resources.resx">\r
       <LogicalName>System.Json.Properties.Resources.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index a9259ace8dbc7cc0522c675c1fc0981126d92d07..5a5dadfa168d8e4a3328de5149864d95cd1a2e2e 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 39722008329dd7cddf4829a98c06b14bd0290e31..7d9b5c4017292ec9fffd36c9d7cee45d52d3182e 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index d0bfd99eb329d6e6b8f8dfe6270735cf3ed9271f..939068bd6f7a40d3d1d00ee3d31952ba2adbaeeb 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index e6bee285bd1b640de15d29342c9b9f12a62b72a0..43895c07c86e10ac9da418cf287010265cde4310 100644 (file)
@@ -4,19 +4,12 @@ include ../../build/rules.make
 
 LIBRARY = System.Net.Http.Formatting.dll
 
-System.Net.Http.Properties.CommonWebApiResources.resources: ../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Net.Http.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx \
+       System.Net.Http.Properties.Resources,../../../external/aspnetwebstack/src/System.Net.Http.Formatting/Properties/Resources.resx
 
-System.Net.Http.Properties.Resources.resources: ../../../external/aspnetwebstack/src/System.Net.Http.Formatting/Properties/Resources.resx
-       $(RESGEN) "$<" "$@"
 
 LIB_REFS = System.Core System System.Net.Http System.Xml System.Runtime.Serialization System.Xml.Linq System.Data System.Configuration
-LIB_MCS_FLAGS = \
-               -d:ASPNETMVC -keyfile:../winfx.pub -delaysign \
-               -resource:System.Net.Http.Properties.CommonWebApiResources.resources \
-               -resource:System.Net.Http.Properties.Resources.resources
+LIB_MCS_FLAGS = -d:ASPNETMVC -keyfile:../winfx.pub -delaysign 
 
 include ../../build/library.make
-
-$(the_lib): System.Net.Http.Properties.CommonWebApiResources.resources \
-       System.Net.Http.Properties.Resources.resources
index 528b66c4fbda7c202b295b6ced50e63a2df058fd..f987c65b4e4ef67b74ca0df3da3e416ea08872d0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Net.Http.Properties.CommonWebApiResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx">\r
       <LogicalName>System.Net.Http.Properties.CommonWebApiResources.resources</LogicalName>\r
     </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Net.Http.Properties.Resources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Net.Http.Formatting/Properties/Resources.resx">\r
       <LogicalName>System.Net.Http.Properties.Resources.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 9b7f6d8af717674be0c0c40baa993c5499bdcfb3..519b2833cba57777ffc6909578023f34fc0c4af8 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 5723acb0b1cce0f3d80837d87010b6e2f01769a3..6daf9e10a279d7ea4e3092d07dbb97036b3ba1ed 100644 (file)
@@ -61,7 +61,9 @@ namespace System.Net.Http
                        public void Close ()
                        {
                                CancellationTokenRegistration.Dispose ();
-                               ContentStream.Close ();
+                                if (ContentStream != null) {
+                                    ContentStream.Close ();
+                                }
                        }
                }
 
@@ -98,7 +100,7 @@ namespace System.Net.Http
 
                public CookieContainer CookieContainer {
                        get {
-                               return cookies;
+                               return cookies ?? (cookies = new CookieContainer ());
                        }
                        set {
                                EnsureModifiability ();
index c27b6d1bb5ee170990c194f96769251900241bb1..e6e2d68457e26d135f2b8691238a53d4daf7357e 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 0a9d60fb98ec8bfc9c445982b5622ce200126493..94ad2ffb2742945f1914a1a127bd8542367a395e 100644 (file)
@@ -245,8 +245,6 @@ namespace System.Net.Http
                                wr.KeepAlive = request.Headers.ConnectionClose != true;
                        }
 
-                       wr.ServicePoint.Expect100Continue = request.Headers.ExpectContinue == true;
-
                        if (allowAutoRedirect) {
                                wr.AllowAutoRedirect = true;
                                wr.MaximumAutomaticRedirections = maxAutomaticRedirections;
@@ -270,8 +268,13 @@ namespace System.Net.Http
 
                        if (useProxy) {
                                wr.Proxy = proxy;
+                       } else {
+                               // Disables default WebRequest.DefaultWebProxy value
+                               wr.Proxy = null;
                        }
 
+                       wr.ServicePoint.Expect100Continue = request.Headers.ExpectContinue == true;
+
                        // Add request headers
                        var headers = wr.Headers;
                        foreach (var header in request.Headers) {
@@ -294,7 +297,7 @@ namespace System.Net.Http
                                if (values_formated == null)
                                        continue;
 
-                               headers.AddValue (header.Key, values_formated);
+                               headers.AddInternal (header.Key, values_formated);
                        }
                        
                        return wr;
@@ -343,7 +346,7 @@ namespace System.Net.Http
 
                                                foreach (var header in content.Headers) {
                                                        foreach (var value in header.Value) {
-                                                               headers.AddValue (header.Key, value);
+                                                               headers.AddInternal (header.Key, value);
                                                        }
                                                }
 
index 4d9265a6ac76f8e3640e82e2e75e1fa6189b8ee6..aa678a036e6d2f8219e3d89a55695dba90dfdffa 100644 (file)
@@ -150,6 +150,29 @@ namespace MonoTests.System.Net.Http
                        }
                }
 
+               class ThrowOnlyProxy : IWebProxy
+               {
+                       public ICredentials Credentials {
+                               get {
+                                       throw new NotImplementedException ();
+                               }
+
+                               set {
+                                       throw new NotImplementedException ();
+                               }
+                       }
+
+                       public Uri GetProxy (Uri destination)
+                       {
+                               throw new NotImplementedException ();
+                       }
+
+                       public bool IsBypassed (Uri host)
+                       {
+                               throw new NotImplementedException ();
+                       }
+               }
+
                const int WaitTimeout = 5000;
 
                string TestHost, LocalServer;
@@ -297,6 +320,25 @@ namespace MonoTests.System.Net.Http
                        }
                }
 
+               [Test]
+               public void Proxy_Disabled ()
+               {
+                       var pp = WebRequest.DefaultWebProxy;
+
+                       try {
+                               WebRequest.DefaultWebProxy = new ThrowOnlyProxy ();
+
+                               var request = new HttpClientHandler {
+                                       UseProxy = false
+                               };
+
+                               var client = new HttpClient (request);
+                               Assert.IsTrue (client.GetAsync ("http://google.com").Wait (5000), "needs internet access");
+                       } finally {
+                               WebRequest.DefaultWebProxy = pp;
+                       }
+               }
+
                [Test]
                public void Send ()
                {
index 560915d4412a861095c6218e1a3f9bc88568496e..ac5858d1adb7fb2e77bd7ffb1f18c9db0aedf559 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,1720</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 4d1c89c2b95478ab11650f0a6c3fd06e8934ee51..f782c91e5cdece5a45361cd240173ebd832cb362 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index ce687f78e5b2a36dc9f97f1acc3343637aa29607..6fe1d3aa59a18d18af49651d7566b8caf2e1edca 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Numerics\System\Numerics\BigInteger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Numerics\System\Numerics\BigIntegerBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Numerics\System\Numerics\BigNumber.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Numerics\System\Numerics\Complex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Numerics\System\Numerics\NumericsHelpers.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Numerics\System\Numerics\BigInteger.cs" />\r
+    <Compile Include="..\referencesource\System.Numerics\System\Numerics\BigIntegerBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Numerics\System\Numerics\BigNumber.cs" />\r
+    <Compile Include="..\referencesource\System.Numerics\System\Numerics\Complex.cs" />\r
+    <Compile Include="..\referencesource\System.Numerics\System\Numerics\NumericsHelpers.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\Environment.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r  </ItemGroup>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 0667fe1e8773a386549fea8e7aaac83fb0e91e64..7b3dfa248deb2b63a1acb932b86e6159e12da601 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Interfaces/System.Reactive.Interfaces-net_4_x.csproj">\r
-      <Project>{0DA7868F-C598-4E45-B33C-86FBB482DB76}</Project>\r
-      <Name>System.Reactive.Interfaces-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Strings_Core.resources">\r
+    <EmbeddedResource Include="Strings_Core.resources.prebuilt">\r
       <LogicalName>System.Reactive.Strings_Core.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 67062add4daeeefbb6d65f3528ccfeaa929ed053..0fef571313a78994b8dd281b71353315ac4602ef 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 3c232a80ea8afca7206d543a7ecd9b9e0916cba2..55e768b3fa4272cb3b755836b19dbdcc238f2f88 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index dac48b46c5f8763b7a97d615a1c69548c63c5256..f0057b389b23ddf9bd27deccf199f90d5b71bfa8 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 42bc7b4cecbeee8aef4b6af2a6c223453f4d7a91..67b2b8a8844cc12c1ecf09fdb1ff9da5ae8edbae 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Core/System.Reactive.Core-net_4_x.csproj">\r
-      <Project>{52F7F1BD-9D67-494E-A53A-C291FF5424B4}</Project>\r
-      <Name>System.Reactive.Core-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Strings_Linq.resources">\r
+    <EmbeddedResource Include="Strings_Linq.resources.prebuilt">\r
       <LogicalName>System.Reactive.Strings_Linq.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 5d0d156abcf23b047ed949481eda34ac00a7159f..fcff09f9daf815ddac9f5f1b5199b28bb053b0ab 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj">\r
-      <Project>{22187CB5-7451-45B4-B21B-337D956FF05D}</Project>\r
-      <Name>System.Reactive.Providers-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
index bbc57d1ad7493ac938b1aa67ffd146ef21854dd5..538ff9529d94ea3bd5a2ad3e223c27f652e82fa0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj">\r
-      <Project>{EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}</Project>\r
-      <Name>System.Reactive.Linq-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Strings_PlatformServices.resources">\r
+    <EmbeddedResource Include="Strings_PlatformServices.resources.prebuilt">\r
       <LogicalName>System.Reactive.Strings_PlatformServices.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index cec12f112e1f50fa1a35a0e39e4de679257df5ab..0099448bd54ccb6132e7b2184164293adc9b2ec2 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj">\r
-      <Project>{EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}</Project>\r
-      <Name>System.Reactive.Linq-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Strings_Providers.resources">\r
+    <EmbeddedResource Include="Strings_Providers.resources.prebuilt">\r
       <LogicalName>System.Reactive.Strings_Providers.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index c33479a03fe12f88fef454fd735f85d4cbeefa43..2802930f4d4ca978a4218700062546d9b54c76da 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj">\r
-      <Project>{EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}</Project>\r
-      <Name>System.Reactive.Linq-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
index c3d0ff04d8663da4f409a7ecc4e87e469ab01bc1..6aacf0d324f2c8fdd73912eaab23c142523f3287 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Windows.Forms/System.Windows.Forms-net_4_x.csproj">\r
-      <Project>{108227C7-8ED9-4483-949D-07BF0DA1A201}</Project>\r
-      <Name>System.Windows.Forms-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
index 2922af8368b7ed260e4811d7621ff4394498a003..2399dc270ca57124a3c099787d3a8175fd4cd871 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../WindowsBase/WindowsBase-net_4_x.csproj">\r
-      <Project>{A8F39368-ECD9-41A5-A562-CC7C82B3CC86}</Project>\r
-      <Name>WindowsBase-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Strings_WindowsThreading.resources">\r
+    <EmbeddedResource Include="Strings_WindowsThreading.resources.prebuilt">\r
       <LogicalName>System.Reactive.Strings_WindowsThreading.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 9f23ad69ec2aeadbe0491f7b86bbb4e7927be0aa..3089b404bdf517604d7f302d2fc44182f6ac7e4c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\Resources\RH.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryChangeMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedArguments.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedReason.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryUpdateArguments.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheEntryUpdateCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheItemPolicy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheItemPriority.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\CacheMemoryMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\ChangeMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Configuration\CachingSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Configuration\ConfigUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheSettingsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Dbg.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\DefaultCacheCapabilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\EntryState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\FileChangeMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\FileChangeNotificationSystem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\HostFileChangeMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Hosting\IApplicationIdentifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Hosting\IFileChangeNotificationSystem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\Hosting\IMemoryCacheManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheEntryChangeMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheKeyEqualityComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheStatistics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\MemoryMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\ObjectCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\OnChangedCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\PerfCounterName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\PerfCounters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\PhysicalMemoryMonitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\SafeBitVector32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\SafeRegistryHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Caching\System\Caching\SqlChangeMonitor.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\Resources\RH.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryChangeMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedArguments.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryRemovedReason.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryUpdateArguments.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheEntryUpdateCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheItem.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheItemPolicy.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheItemPriority.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\CacheMemoryMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\ChangeMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Configuration\CachingSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Configuration\ConfigUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheElement.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheSection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Configuration\MemoryCacheSettingsCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Dbg.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\DefaultCacheCapabilities.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\EntryState.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\FileChangeMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\FileChangeNotificationSystem.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\HostFileChangeMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Hosting\IApplicationIdentifier.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Hosting\IFileChangeNotificationSystem.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\Hosting\IMemoryCacheManager.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCache.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheEntryChangeMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheKey.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheKeyEqualityComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheStatistics.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryCacheStore.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\MemoryMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\ObjectCache.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\OnChangedCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\PerfCounterName.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\PerfCounters.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\PhysicalMemoryMonitor.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\SafeBitVector32.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\SafeRegistryHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Caching\System\Caching\SqlChangeMonitor.cs" />\r
     <Compile Include="..\System.Web\System.Web.Configuration_2.0\NullableStringValidator.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\CacheEntryCollection.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 49893fe21ca7f66500265c09c26f0e5832cddc86..480589216b314108be5f2287752892126350686b 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\AssemblyInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\DisassociateInstanceKeysExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\IDurableInstancingOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceCollisionException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceCompleteException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandleConflictException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandleReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyCollisionException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyCompleteException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyNotReadyException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockedException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockLostException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockQueryResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceNormalEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceNotReadyException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwnerException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwnerQueryResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceCommandException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceStoreQueryResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValueConsistency.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValueOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\ICancelable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\IPersistencePipelineModule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\PersistenceMetadataNamespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\PersistencePipeline.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\TransactedAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\TransactionHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\Workflow45Namespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\WorkflowNamespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.DurableInstancing\System\Runtime\WorkflowServiceNamespace.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\AssemblyInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\DisassociateInstanceKeysExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\IDurableInstancingOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceCollisionException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceCompleteException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandleConflictException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceHandleReference.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKey.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyCollisionException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyCompleteException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyNotReadyException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyState.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceKeyView.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockedException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockLostException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceLockQueryResult.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceNormalEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceNotReadyException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwner.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwnerException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceOwnerQueryResult.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistence.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceCommandException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceContext.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstancePersistenceException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceState.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceStore.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceStoreQueryResult.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValue.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValueConsistency.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceValueOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\DurableInstancing\InstanceView.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\ICancelable.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\IPersistencePipelineModule.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\PersistenceMetadataNamespace.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\PersistencePipeline.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\TransactedAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\TransactionHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\Workflow45Namespace.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\WorkflowNamespace.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.DurableInstancing\System\Runtime\WorkflowServiceNamespace.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="SRCore.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 8dccbd5b0a20fd7448fb49a36fb03aa15ad54810..5601f7c47a15cf354274bdf16b14caf1f3f81306 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Web/System.Web-net_4_x.csproj">\r
-      <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
-      <Name>System.Web-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
       <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
       <Name>System.Xml-net_4_x</Name>\r
       <Project>{A157AD69-59D4-49DE-94B3-DB883B2BEAA5}</Project>\r
       <Name>System.Runtime.Serialization.Formatters.Soap-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.Web/System.Web-net_4_x.csproj">\r
+      <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
+      <Name>System.Web-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 6a3669bd10eb7e7d4d3d571e00af6573fe177eec..d5192c051b056e3b62ef93bccd3533541c3a95ce 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index cbab4c217e351dd889fb43deb4e38ddaf89e334c..86b4617162fc6748ee66e72bc260d87eb70c45d4 100644 (file)
@@ -53,7 +53,7 @@ namespace SoapShared
                        Serialize(obj, ms);\r
                        ms.Position = 0;\r
                        Object des = Deserialize(ms);\r
-                       Assertion.AssertEquals(obj.GetType(), des.GetType());\r
+                       Assert.AreEqual (obj.GetType(), des.GetType());\r
                }\r
 \r
                private void Serialize(object ob, Stream stream)\r
index d3914d9b327e196bbcb49272f85209a824af0798..3aee88df4a84300bb5aa06789fee44bc0d07f56d 100644 (file)
@@ -222,7 +222,7 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap
                        if (expected != null && expected.GetType().IsArray)\r
                                EqualsArray (message, (Array)expected, (Array)actual);\r
                        else\r
-                               Assertion.AssertEquals (message, expected, actual);\r
+                               Assert.AreEqual (expected, actual, message);\r\r
                }\r
 \r
                public static void EqualsArray (string message, object oar1, object oar2)\r
index 9735ce04b04384613adcd857558bf1c0e3010d9e..91fdd7857d861780fc152c39bed8dd11247859a7 100644 (file)
@@ -171,8 +171,8 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                \r
                private object Serialize(object objGraph) {\r
                        MemoryStream stream = new MemoryStream();\r
-                       Assertion.Assert(objGraph != null);\r
-                       Assertion.Assert(stream != null);\r
+                       Assert.IsTrue(objGraph != null);\r
+                       Assert.IsTrue(stream != null);\r
                        _soapFormatter.SurrogateSelector = _surrogate;\r
                        _soapFormatter.Serialize(stream, objGraph);\r
                        \r
@@ -182,8 +182,8 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        stream.Position = 0;\r
                        \r
                        object objReturn = _soapFormatterDeserializer.Deserialize(stream);\r
-                       Assertion.Assert(objReturn != null);\r
-                       Assertion.AssertEquals("#Tests "+objGraph.GetType(), objGraph.GetType(), objReturn.GetType());\r
+                       Assert.IsTrue(objReturn != null);\r
+                       Assert.AreEqual(objGraph.GetType(), objReturn.GetType(), "#Tests "+objGraph.GetType());\r
                        stream = new MemoryStream();\r
                        _soapFormatter.Serialize(stream, objReturn);\r
                        stream.Position = 0;\r
@@ -209,19 +209,19 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                public void TestValueTypes() {\r
                        object objReturn;\r
                        objReturn = Serialize((short)1);\r
-                       Assertion.AssertEquals("#int16", objReturn, 1);\r
+                       Assert.AreEqual(objReturn, 1, "#int16");\r
                        objReturn = Serialize(1);\r
-                       Assertion.AssertEquals("#int32", objReturn, 1);\r
+                       Assert.AreEqual(objReturn, 1, "#int32");\r
                        objReturn = Serialize((Single)0.1234);\r
-                       Assertion.AssertEquals("#Single", objReturn, 0.123400003f);\r
+                       Assert.AreEqual(objReturn, 0.123400003f, "#Single");\r
                        objReturn = Serialize((Double)1234567890.0987654321);\r
-                       Assertion.AssertEquals("#iDouble", objReturn, 1234567890.0987654321);\r
+                       Assert.AreEqual(objReturn, 1234567890.0987654321, "#iDouble");\r
                        objReturn = Serialize(true);\r
-                       Assertion.AssertEquals("#Bool", objReturn, true);\r
+                       Assert.AreEqual(objReturn, true, "#Bool");\r
                        objReturn = Serialize((Int64) 1234567890);\r
-                       Assertion.AssertEquals("#Int64", objReturn, 1234567890);\r
+                       Assert.AreEqual(objReturn, 1234567890, "#Int64");\r
                        objReturn = Serialize('c');\r
-                       Assertion.AssertEquals("#Char", objReturn, 'c');\r
+                       Assert.AreEqual(objReturn, 'c', "#Char");\r
                }\r
                \r
                [Test]\r
@@ -229,7 +229,7 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        object objReturn;\r
                        objReturn = Serialize("");\r
                        objReturn = Serialize("hello world!");\r
-                       Assertion.AssertEquals("#string", "hello world!", objReturn);\r
+                       Assert.AreEqual("hello world!", objReturn, "#string");\r
                        SoapMessage soapMsg = new SoapMessage();\r
                        soapMsg.Headers = new Header[0];\r
                        soapMsg.MethodName = "Equals";\r
@@ -242,27 +242,27 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        _soapFormatterDeserializer.TopObject = null;\r
                        SimpleObject obj = new SimpleObject("simple object", 1);\r
                        objReturn = Serialize(obj);\r
-                       Assertion.AssertEquals("#SimpleObject", obj, objReturn);\r
+                       Assert.AreEqual(obj, objReturn, "#SimpleObject");\r
                        objReturn = Serialize(typeof(SimpleObject));\r
-                       Assertion.AssertEquals("#Type", typeof(SimpleObject), (Type)objReturn);\r
+                       Assert.AreEqual(typeof(SimpleObject), (Type)objReturn, "#Type");\r
                        objReturn = Serialize(obj.GetType().Assembly);\r
-                       Assertion.AssertEquals("#Assembly", obj.GetType().Assembly, objReturn);\r
+                       Assert.AreEqual(obj.GetType().Assembly, objReturn, "#Assembly");\r
                }\r
                \r
                public static bool CheckArray(object objTest, object objReturn) {\r
                        Array objTestAsArray = objTest as Array;\r
                        Array objReturnAsArray = objReturn as Array;\r
                        \r
-                       Assertion.Assert("#Not an Array "+objTest, objReturnAsArray != null);\r
-                       Assertion.AssertEquals("#Different lengths "+objTest, objTestAsArray.Length, objReturnAsArray.Length);\r
-                       \r
+                       Assert.IsTrue(objReturnAsArray != null, "#Not an Array "+objTest);\r
+                       Assert.AreEqual(objTestAsArray.Length, objReturnAsArray.Length, "#Different lengths "+objTest);\r
+                       
                        IEnumerator iEnum = objReturnAsArray.GetEnumerator();\r
                        iEnum.Reset();\r
                        object obj2;\r
                        foreach(object obj1 in objTestAsArray) {\r
                                iEnum.MoveNext();\r
                                obj2 = iEnum.Current;\r
-                               Assertion.AssertEquals("#The content of the 2 arrays is different", obj1, obj2);\r
+                               Assert.AreEqual(obj1, obj2, "#The content of the 2 arrays is different");\r
                        }\r
                        \r
                        return true;\r
@@ -315,9 +315,9 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        MoreComplexObject objReturn;\r
                        MoreComplexObject objTest = new MoreComplexObject();\r
                        objReturn = (MoreComplexObject) Serialize(objTest);\r
-                       Assertion.AssertEquals("#Equals", objTest, objReturn);\r
+                       Assert.AreEqual(objTest, objReturn, "#Equals");\r
                        objReturn.OnTrucEvent("bidule");\r
-                       Assertion.AssertEquals("#dlg", "bidule", objReturn.ObjString);\r
+                       Assert.AreEqual("bidule", objReturn.ObjString, "#dlg");\r
                }\r
 \r
                [Test]\r
@@ -333,9 +333,9 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        _soapFormatterDeserializer.Binder = new Version1ToVersion2Binder();\r
                        objReturn = _soapFormatterDeserializer.Deserialize(stream);\r
 \r
-                       Assertion.AssertEquals("#Version1 Version2", "Version2", objReturn.GetType().Name);\r
-                       Assertion.AssertEquals("#_value", 123, ((Version2) objReturn)._value);\r
-                       Assertion.AssertEquals("#_foo", "Default value", ((Version2) objReturn)._foo);\r
+                       Assert.AreEqual("Version2", objReturn.GetType().Name, "#Version1 Version2");\r
+                       Assert.AreEqual(123, ((Version2) objReturn)._value, "#_value");\r
+                       Assert.AreEqual("Default value", ((Version2) objReturn)._foo, "#_foo");\r
                }\r
                \r
                [Test]\r
@@ -360,17 +360,17 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        sf.TopObject = t;\r
                        t = (SoapMessage) sf.Deserialize (ms);\r
                        \r
-                       Assertion.AssertNotNull ("#1", t.Headers[0].Value);\r
-                       Assertion.AssertEquals ("#2", t.Headers[0].Value.GetType (), typeof(Type[]));\r
+                       Assert.IsNotNull (t.Headers[0].Value, "#1");\r
+                       Assert.AreEqual (t.Headers[0].Value.GetType (), typeof(Type[]), "#2");\r
                        \r
                        Type[] ts = (Type[]) t.Headers[0].Value;\r
                        \r
-                       Assertion.AssertEquals ("#3", 2, ts.Length);\r
-                       Assertion.AssertNotNull ("#4", ts[0]);\r
-                       Assertion.AssertNotNull ("#5", ts[1]);\r
+                       Assert.AreEqual (2, ts.Length, "#3");\r
+                       Assert.IsNotNull (ts[0], "#4");\r
+                       Assert.IsNotNull (ts[1], "#5");\r
                        Console.WriteLine ("PPP:" + ts[0].GetType());\r
-                       Assertion.AssertEquals ("#6", typeof(string), ts[0]);\r
-                       Assertion.AssertEquals ("#7", typeof(SignatureTest[]), ts[1]);\r
+                       Assert.AreEqual (typeof(string), ts[0], "#6");\r
+                       Assert.AreEqual (typeof(SignatureTest[]), ts[1], "#7");\r
                }\r
 \r
                [Test]\r
@@ -398,14 +398,14 @@ namespace MonoTests.System.Runtime.Serialization.Formatters.Soap {
                        public void OnDeserialization (StreamingContext context)\r
                        {\r
                                var ci = Thread.CurrentThread.CurrentCulture;\r
-                               Assertion.AssertEquals("#1", "German (Germany)", ci.EnglishName);\r
+                               Assert.AreEqual("German (Germany)", ci.EnglishName, "#1");\r
                        }\r
                        \r
                        [OnSerialized]\r
                        public void OnSerialized (StreamingContext context)\r
                        {\r
                                var ci = Thread.CurrentThread.CurrentCulture;\r
-                               Assertion.AssertEquals("#2", "German (Germany)", ci.EnglishName);\r
+                               Assert.AreEqual("German (Germany)", ci.EnglishName, "#2");\r
                        }\r
                }\r
        }\r
index 702e3ea00000cb25d52b43543d91e9a6d1c8a6bf..f5de8b68d7f091c236651c67a4557732dffa711c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,168,169,219,414</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\AppSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Attributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ClassDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CollectionDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CollectionDataContractAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ConfigurationStrings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DataContractSerializerSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeValidatorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\NetDataContractSerializerSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ParameterElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ParameterElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\Properties.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\TypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\TypeElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ContractCodeDomInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ContractNamespaceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSerializerSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataMemberAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DateTimeFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DateTimeOffsetAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Diagnostics\TraceCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Diagnostics\TraceUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DictionaryGlobals.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EmitTypeInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EnumDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EnumMemberAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExportOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExtensionDataObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExtensionDataReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\GenericParameterDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Globals.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\HybridObjectCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IDataContractSurrogate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IExtensibleDataObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IgnoreDataMemberAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ImportOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\InvalidDataContractException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\ByteArrayHelperWithString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\DataContractJsonSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\DataContractJsonSerializerSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\IXmlJsonReaderInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\IXmlJsonWriterInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonByteArrayDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonClassDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonCollectionDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonEncodingStreamWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonEnumDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatGeneratorStatics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatReaderGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatWriterGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonGlobals.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonObjectDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonQNameDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonReaderDelegator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonReaderWriterFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonStringDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonUriDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonWriterDelegator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonXmlDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlJsonReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlJsonWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlObjectSerializerReadContextComplexJson.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlObjectSerializerWriteContextComplexJson.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\KnownTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\KnownTypeDataContractResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\NetDataContractSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ObjectReferenceStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ObjectToIdCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\PrimitiveDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ScopedKnownTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationPermissionNotRequiredAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SpecialTypeDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SurrogateDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\TypeInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlDataContract.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatGeneratorStatics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatReaderGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatWriterGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerReadContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerReadContextComplex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerWriteContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerWriteContextComplex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlReaderDelegator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableServices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlWriterDelegator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XPathQueryGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XsdDataContractExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XsdDataContractImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Text\Base64Encoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Text\BinHexEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Text\SurrogateChar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\ArrayHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\EncodingStreamWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\IFragmentCapableXmlDictionaryWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\IStreamProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\IXmlDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\PrefixHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\StringHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\UniqueID.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\ValueHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBaseReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBaseWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryReaderSession.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryWriterSession.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlBufferReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlC14NWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDelegatedReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDelegatedWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryReaderQuotas.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlMtomReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlMtomWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlNodeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlNodeWriterWriteBase64TextArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlSigningNodeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlStreamNodeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlUTF8TextReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlUTF8TextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\System\Xml\XmlWriteBase64AsyncArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Runtime.Serialization\TD.Designer.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\AppSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Attributes.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ClassDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CollectionDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\CollectionDataContractAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ConfigurationStrings.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DataContractSerializerSection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\DeclaredTypeValidatorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\NetDataContractSerializerSection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ParameterElement.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\ParameterElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\Properties.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\SerializationSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\TypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Configuration\TypeElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ContractCodeDomInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ContractNamespaceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSerializerSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataContractSet.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataMember.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DataMemberAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DateTimeFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DateTimeOffsetAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Diagnostics\TraceCode.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Diagnostics\TraceUtility.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\DictionaryGlobals.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EmitTypeInformation.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EnumDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\EnumMemberAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExportOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExtensionDataObject.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ExtensionDataReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\GenericParameterDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Globals.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\HybridObjectCache.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IDataContractSurrogate.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IExtensibleDataObject.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\IgnoreDataMemberAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ImportOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\InvalidDataContractException.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\ByteArrayHelperWithString.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\DataContractJsonSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\DataContractJsonSerializerSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\IXmlJsonReaderInitializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\IXmlJsonWriterInitializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonByteArrayDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonClassDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonCollectionDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonEncodingStreamWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonEnumDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatGeneratorStatics.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatReaderGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonFormatWriterGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonGlobals.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonObjectDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonQNameDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonReaderDelegator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonReaderWriterFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonStringDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonUriDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonWriterDelegator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\JsonXmlDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlJsonReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlJsonWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlObjectSerializerReadContextComplexJson.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\Json\XmlObjectSerializerWriteContextComplexJson.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\KnownTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\KnownTypeDataContractResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\NetDataContractSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ObjectReferenceStack.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ObjectToIdCache.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\PrimitiveDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\ScopedKnownTypes.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationPermissionNotRequiredAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SerializationTrace.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SpecialTypeDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\SurrogateDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\TypeInformation.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlDataContract.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatGeneratorStatics.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatReaderGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlFormatWriterGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerContext.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerReadContext.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerReadContextComplex.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerWriteContext.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlObjectSerializerWriteContextComplex.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlReaderDelegator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableServices.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlSerializableWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XmlWriterDelegator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XPathQueryGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XsdDataContractExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Runtime\Serialization\XsdDataContractImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Text\Base64Encoding.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Text\BinHexEncoding.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Text\SurrogateChar.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\ArrayHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\EncodingStreamWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\IFragmentCapableXmlDictionaryWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\IStreamProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\IXmlDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\PrefixHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\StringHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\UniqueID.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\ValueHandle.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBaseReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBaseWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryReaderSession.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBinaryWriterSession.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlBufferReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlC14NWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDelegatedReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDelegatedWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryReaderQuotas.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryString.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlDictionaryWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlMtomReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlMtomWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlNodeWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlNodeWriterWriteBase64TextArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlSigningNodeWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlStreamNodeWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlUTF8TextReader.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlUTF8TextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\System\Xml\XmlWriteBase64AsyncArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Runtime.Serialization\TD.Designer.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\BitFlagsGenerator.cs" />\r
     <Compile Include="ReferenceSources\CodeInterpreter.cs" />\r
     <Compile Include="ReferenceSources\JsonFormatReaderGenerator_static.cs" />\r
     <Compile Include="ReferenceSources\JsonFormatWriterGenerator_static.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
-    <Compile Include="ReferenceSources\SR_missing.cs" />\r
+    <Compile Include="ReferenceSources\SR.missing.cs" />\r
     <Compile Include="ReferenceSources\XmlDataContract_static.cs" />\r
     <Compile Include="ReferenceSources\XmlExceptionHelper.cs" />\r
     <Compile Include="ReferenceSources\XmlFormatReaderGenerator_static.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 4c40f53ac3b77f9bef63e1ccdc5a55ee89e3d9ab..c272c83959de1942c83c6adbfd1dce692475b279 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618,414</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c6b8ff0b35712797f1847b9e910f0b8c20c735e4..e959175b7337b33974be70ec92e7506991727fd4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index cf98e7b9dfed369c4e9c71ece4fe328a2efa110a..3f021276d449fd7fe9e12d6d8b883358c8b1328c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
-      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
-      <Name>System.Configuration-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
index 1d1bf7735394815f5f7ad5f6784fb6830951a208..39e5a6128f2c71bb77153b2b7cc99392b8504400 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\AssemblyInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ActionItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AssertHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncCompletionResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncEventArgsCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncWaitHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\BackoffTimeoutHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\BufferedOutputStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\CallbackException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\HopperCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\NullableKeyDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCacheItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCacheSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\OrderedDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ValidatingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\CompletedAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ComputerNameFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\ActivityControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticEventProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticTraceBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticTraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DictionaryTraceRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EtwDiagnosticTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EtwProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogCategory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogEventId.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventTraceActivity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\ITraceSourceStringProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\PerformanceCounterNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\StringTraceRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\TraceRecord.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\DiagnosticStrings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\DuplicateDetector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ExceptionTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\FastAsyncCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\FatalException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Fx.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\FxCop.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\HashHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\IAsyncEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\InputQueue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\InternalBufferManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Interop\SafeEventLogWriteHandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Interop\UnsafeNativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadCancellationTokenSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadScheduler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadTimer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\MruCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\NameGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\PartialTrustHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ReadOnlyDictionaryInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ReadOnlyKeyedCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ScheduleActionItemAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\SignalGate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\SynchronizedPool.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TaskExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\ThreadNeutralSemaphore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\Ticks.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TimeoutHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TraceChannel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TraceEventLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TraceEventOpcode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TraceLevelHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TracePayload.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TypedAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\TypeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\UrlUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\System\Runtime\WaitCallbackActionItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.ServiceModel.Internals\TraceCore.Designer.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\AssemblyInfo.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ActionItem.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AssertHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncCompletionResult.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncEventArgsCallback.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\AsyncWaitHandle.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\BackoffTimeoutHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\BufferedOutputStream.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\CallbackException.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\HopperCache.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\NullableKeyDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCache.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCacheItem.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ObjectCacheSettings.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\OrderedDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Collections\ValidatingCollection.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\CompletedAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ComputerNameFormat.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\ActivityControl.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticEventProvider.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticTraceBase.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DiagnosticTraceSource.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\DictionaryTraceRecord.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EtwDiagnosticTrace.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EtwProvider.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogCategory.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogEventId.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventLogger.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\EventTraceActivity.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\ITraceSourceStringProvider.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\PerformanceCounterNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\StringTraceRecord.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Diagnostics\TraceRecord.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\DiagnosticStrings.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\DuplicateDetector.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ExceptionTrace.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\FastAsyncCallback.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\FatalException.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Fx.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\FxCop.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\HashHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\IAsyncEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\InputQueue.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\InternalBufferManager.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Interop\SafeEventLogWriteHandle.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Interop\UnsafeNativeMethods.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadCancellationTokenSource.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadScheduler.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\IOThreadTimer.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\MruCache.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\NameGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\PartialTrustHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ReadOnlyDictionaryInternal.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ReadOnlyKeyedCollection.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ScheduleActionItemAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\SignalGate.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\SynchronizedPool.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TaskExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\ThreadNeutralSemaphore.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\Ticks.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TimeoutHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TraceChannel.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TraceEventLevel.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TraceEventOpcode.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TraceLevelHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TracePayload.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TypedAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\TypeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\UrlUtility.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\System\Runtime\WaitCallbackActionItem.cs" />\r
+    <Compile Include="..\referencesource\System.ServiceModel.Internals\TraceCore.Designer.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="EventLogEntryType.cs" />\r
     <Compile Include="InternalSR.cs" />\r  </ItemGroup>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 2e2dbae71b39d088426c5382488de56809a9083a..35714061b5b859fc3855c3028d79876331eceba9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
-      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
-      <Name>System.Configuration-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
index 706ee0df0500082571e194bcdf42d7d01ce67a70..6724c3786315a574fd46d4351ab2bb65fa561edf 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index ef3d1d30350fec2fc372e3f66ef9bef6aee758e9..e986534126d2fbd8661da2b2f4ffe1acc5eb2a41 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414,169,67,3005,436,219,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.ServiceModel.Activation/System.ServiceModel.Activation-net_4_x.csproj">\r
-      <Project>{7A23227C-591B-4F80-9D62-4D0271073D82}</Project>\r
-      <Name>System.ServiceModel.Activation-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
       <Name>System.Web-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.ServiceModel.Activation/System.ServiceModel.Activation-net_4_x.csproj">\r
+      <Project>{7A23227C-591B-4F80-9D62-4D0271073D82}</Project>\r
+      <Name>System.ServiceModel.Activation-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
       <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
       <Name>System.Web.ApplicationServices-net_4_x</Name>\r
index a6594d490a6d8087c942ade401bf9a8283bb3f30..4608b887c5e188ac2bf80cecbc1120f93056a827 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,414,169,67,3005,436,219,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/plainservice</OutputPath>\r
+    <IntermediateOutputPath>obj-plainservice</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 34959bee6368d9395a74dd5c590654b0edfbd242..ade3d4333395f267221663d4154f8c734a33f6aa 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 8a3a31b9e5e45bb65bedab0cb05a1a1e98af92b3..a793bf739fc8c9d0daf85ee11da99df0082176aa 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 3b41db8867236cb8b62f3ccc625f20cf10e97347..0040fd6840b17b446d8eaca8e51b434d279d5b46 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -81,6 +84,7 @@
     <Compile Include="System.Transactions\TransactionOptions.cs" />\r
     <Compile Include="System.Transactions\TransactionPromotionException.cs" />\r
     <Compile Include="System.Transactions\TransactionScope.cs" />\r
+    <Compile Include="System.Transactions\TransactionScopeAsyncFlowOption.cs" />\r
     <Compile Include="System.Transactions\TransactionScopeOption.cs" />\r
     <Compile Include="System.Transactions\TransactionStatus.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 36d981ebe951bb5e44c41551e5a5fb73cd2aab50..4c5394f957bb36702e1d9ffb67534bdef8449232 100644 (file)
@@ -31,6 +31,7 @@ System.Transactions/TransactionManagerCommunicationException.cs
 System.Transactions/TransactionOptions.cs
 System.Transactions/TransactionPromotionException.cs
 System.Transactions/TransactionScope.cs
+System.Transactions/TransactionScopeAsyncFlowOption.cs
 System.Transactions/TransactionScopeOption.cs
 System.Transactions/TransactionStatus.cs
 System.Transactions/Configuration/DefaultSettingsSection.cs
index 129967d9e27817a140dcc077745d6c5828158e58..167d47e8d3a70e0a84be852e860f0e84c2bd10d0 100644 (file)
@@ -31,12 +31,20 @@ namespace System.Transactions
                bool completed;
                bool isRoot;
 
+               bool asyncFlowEnabled;
+
                public TransactionScope ()
                        : this (TransactionScopeOption.Required,
                                TransactionManager.DefaultTimeout)
                {
                }
 
+               public TransactionScope(TransactionScopeAsyncFlowOption asyncFlow)
+                       : this(TransactionScopeOption.Required,
+                               TransactionManager.DefaultTimeout, asyncFlow)
+               {
+               }
+
                public TransactionScope (Transaction transaction)
                        : this (transaction, TransactionManager.DefaultTimeout)
                {
@@ -53,7 +61,7 @@ namespace System.Transactions
                        TimeSpan timeout, DTCOption opt)
                {
                        Initialize (TransactionScopeOption.Required,
-                               transaction, defaultOptions, opt, timeout);
+                               transaction, defaultOptions, opt, timeout, TransactionScopeAsyncFlowOption.Suppress);
                }
 
                public TransactionScope (TransactionScopeOption option)
@@ -62,10 +70,21 @@ namespace System.Transactions
                }
 
                public TransactionScope (TransactionScopeOption option,
-                       TimeSpan timeout)
+                       TimeSpan timeout)
+                       : this (option, timeout, TransactionScopeAsyncFlowOption.Suppress)
+               {
+               }
+
+               public TransactionScope(TransactionScopeOption option, TransactionScopeAsyncFlowOption asyncFlow)
+                       : this(option, TransactionManager.DefaultTimeout, asyncFlow)
+               {
+               }
+
+       public TransactionScope (TransactionScopeOption option,
+                       TimeSpan timeout, TransactionScopeAsyncFlowOption asyncFlow)
                {
                        Initialize (option, null, defaultOptions,
-                               DTCOption.None, timeout);
+                               DTCOption.None, timeout, asyncFlow);
                }
 
                public TransactionScope (TransactionScopeOption scopeOption,
@@ -80,16 +99,17 @@ namespace System.Transactions
                        DTCOption opt)
                {
                        Initialize (scopeOption, null, options, opt,
-                               TransactionManager.DefaultTimeout);
+                               TransactionManager.DefaultTimeout, TransactionScopeAsyncFlowOption.Suppress);
                }
 
                void Initialize (TransactionScopeOption scopeOption,
                        Transaction tx, TransactionOptions options,
-                       DTCOption interop, TimeSpan timeout)
+                       DTCOption interop, TimeSpan timeout, TransactionScopeAsyncFlowOption asyncFlow)
                {
                        completed = false;
                        isRoot = false;
                        nested = 0;
+                       asyncFlowEnabled = asyncFlow == TransactionScopeAsyncFlowOption.Enabled;
 
                        if (timeout < TimeSpan.Zero)
                                throw new ArgumentOutOfRangeException ("timeout");
@@ -165,36 +185,67 @@ namespace System.Transactions
                                throw new InvalidOperationException ("TransactionScope nested incorrectly");
                        }
 
-                       if (Transaction.CurrentInternal != transaction) {
+                       if (Transaction.CurrentInternal != transaction && !asyncFlowEnabled) {
                                if (transaction != null)
                                        transaction.Rollback ();
                                if (Transaction.CurrentInternal != null)
                                        Transaction.CurrentInternal.Rollback ();
 
                                throw new InvalidOperationException ("Transaction.Current has changed inside of the TransactionScope");
-                       }
+                       } 
 
-                       if (Transaction.CurrentInternal == oldTransaction && oldTransaction != null)
-                               oldTransaction.Scope = parentScope;
+                       if (asyncFlowEnabled) {
+                               if (oldTransaction != null)
+                                       oldTransaction.Scope = parentScope;
 
-                       Transaction.CurrentInternal = oldTransaction;
+                               var variedTransaction = Transaction.CurrentInternal;
 
-                       if (transaction == null)
-                               /* scope was not in a transaction, (Suppress) */
-                               return;
+                               if (transaction == null && variedTransaction == null)
+                                       /* scope was not in a transaction, (Suppress) */
+                                       return;
 
-                       transaction.Scope = null;
+                               variedTransaction.Scope = parentScope;
+                               Transaction.CurrentInternal = oldTransaction;
 
-                       if (!IsComplete) {
-                               transaction.Rollback ();
-                               return;
-                       }
+                               transaction.Scope = null;
 
-                       if (!isRoot)
-                               /* Non-root scope has completed+ended */
-                               return;
+                               if (!IsComplete) {
+                                       transaction.Rollback ();
+                                       variedTransaction.Rollback();
+                                       return;
+                               }
+
+                               if (!isRoot)
+                                       /* Non-root scope has completed+ended */
+                                       return;
+
+                               variedTransaction.CommitInternal();
+                               transaction.CommitInternal();
+                       } else {
+                               if (Transaction.CurrentInternal == oldTransaction && oldTransaction != null)
+                                       oldTransaction.Scope = parentScope;
+
+                               Transaction.CurrentInternal = oldTransaction;
 
-                       transaction.CommitInternal ();
+                               if (transaction == null)
+                                       /* scope was not in a transaction, (Suppress) */
+                                       return;
+
+                               transaction.Scope = null;
+
+                               if (!IsComplete)
+                               {
+                                       transaction.Rollback();
+                                       return;
+                               }
+
+                               if (!isRoot)
+                                       /* Non-root scope has completed+ended */
+                                       return;
+
+                               transaction.CommitInternal();
+
+                       }
                }
 
 
diff --git a/mcs/class/System.Transactions/System.Transactions/TransactionScopeAsyncFlowOption.cs b/mcs/class/System.Transactions/System.Transactions/TransactionScopeAsyncFlowOption.cs
new file mode 100644 (file)
index 0000000..5285fe5
--- /dev/null
@@ -0,0 +1,9 @@
+
+namespace System.Transactions
+{
+       public enum TransactionScopeAsyncFlowOption
+       {
+               Suppress,
+               Enabled
+       }
+}
index 23bb93a3e94ab25938e9041ecbdb8f44826ef5ad..b7bfc3e76b57a1ebd6138fa56004e6ad47b2fc75 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c66e6452e3146f5da63455e30453de8583fd5323..461643c497be3fb04509e909a0f06f17c22cc2cb 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Configuration\MembershipPasswordCompatibilityMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\IMembershipAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipCreateStatus.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipCreateUserException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipPasswordException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipPasswordFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipProviderCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipUserCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\MembershipValidatePasswordEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web.ApplicationServices\Security\ValidatePasswordEventArgs.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="System.Web.Configuration\MembershipPasswordCompatibilityMode.cs" />\r
+    <Compile Include="ReferenceSources\SR.missing.cs" />\r
     <Compile Include="System.Web.Security\IMembershipHelper.cs" />\r
-    <Compile Include="System.Web.Security\MembershipCreateStatus.cs" />\r
-    <Compile Include="System.Web.Security\MembershipCreateUserException.cs" />\r
-    <Compile Include="System.Web.Security\MembershipPasswordException.cs" />\r
-    <Compile Include="System.Web.Security\MembershipPasswordFormat.cs" />\r
     <Compile Include="System.Web.Security\MembershipProvider.cs" />\r
-    <Compile Include="System.Web.Security\MembershipProviderCollection.cs" />\r
     <Compile Include="System.Web.Security\MembershipUser.cs" />\r
-    <Compile Include="System.Web.Security\MembershipUserCollection.cs" />\r
-    <Compile Include="System.Web.Security\MembershipValidatePasswordEventHandler.cs" />\r
     <Compile Include="System.Web.Security\RoleProvider.cs" />\r
-    <Compile Include="System.Web.Security\ValidatePasswordEventArgs.cs" />\r
     <Compile Include="System.Web.UI\KeyedList.cs" />\r
     <Compile Include="System.Web.UI\KeyedListEnumerator.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 1b7f7caa4831ae75d8de71a19ce54c3af6ad7d32..84781bfe0b9fd06b4142c3fbf9493afc157f18b4 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index e24821235ec719de86d96cbab4f7b9b47c6360b6..a812da1666512c6952fa26671fee20c038ae41f5 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index c9ef1c19ca74fd1c588d14b4f7960d674f888acd..d008409de93ceb62724eb093777654e53c135be9 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
-      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
-      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
       <Name>System.ServiceModel-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
+      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
+      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index f13d3b55f884bf14c16825e5d35d4d3678a9852c..f4ff7d466459ccad46a685f80ee619a1e04cfa3a 100644 (file)
@@ -4,17 +4,12 @@ include ../../build/rules.make
 
 LIBRARY = System.Web.Http.SelfHost.dll
 
-System.Web.Http.SelfHost.Properties.CommonWebApiResources.resources: ../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx
-       $(RESGEN) "$<" "$@"
-
-System.Web.Http.SelfHost.Properties.SRResources.resources: ../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.resx
-       $(RESGEN) "$<" "$@"
-
+RESOURCE_DEFS = \
+       System.Web.Http.SelfHost.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx \
+       System.Web.Http.SelfHost.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.resx
 
 LIB_REFS = System.Core System System.Xml System.Configuration System.Net.Http System.Runtime.Serialization System.ServiceModel System.IdentityModel System.Web.Http System.Net.Http.Formatting
 LIB_MCS_FLAGS = -d:ASPNETMVC -keyfile:../winfx.pub -delaysign
 
 include ../../build/library.make
 
-$(the_lib): System.Web.Http.SelfHost.Properties.CommonWebApiResources.resources \
-       System.Web.Http.SelfHost.Properties.SRResources.resources
index 3f3face9e10d143e15c93a73e2e4f36ee9c1e3e8..70ba4af74c2bc27f6ecfa11211b2903d7bd0c446 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx">\r
+      <LogicalName>System.Web.Http.SelfHost.Properties.CommonWebApiResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.resx">\r
+      <LogicalName>System.Web.Http.SelfHost.Properties.SRResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
 </Project>\r
 
index e0606bdbafb8c3fc35d495674cef414ad048a7ee..b022ea314cf6a824a3630e58d2c54957cb5c4cff 100644 (file)
@@ -4,17 +4,13 @@ include ../../build/rules.make
 
 LIBRARY = System.Web.Http.WebHost.dll
 
-System.Web.Http.WebHost.Properties.CommonWebApiResources.resources: ../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx
-       $(RESGEN) "$<" "$@"
-
-System.Web.Http.WebHost.Properties.SRResources.resources: ../../../external/aspnetwebstack/src/System.Web.Http.WebHost/Properties/SRResources.resx
-       $(RESGEN) "$<" "$@"
-
+RESOURCE_DEFS = \
+       System.Web.Http.WebHost.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx \
+       System.Web.Http.WebHost.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http.WebHost/Properties/SRResources.resx
 
 LIB_REFS = System.Core System System.Xml System.Configuration System.Net.Http System.Runtime.Serialization System.ServiceModel System.IdentityModel System.Web.Http System.Net.Http.Formatting System.Web.Routing System.Web Microsoft.Web.Infrastructure
 LIB_MCS_FLAGS = -d:ASPNETMVC -keyfile:../winfx.pub -delaysign
 
 include ../../build/library.make
 
-$(the_lib): System.Web.Http.WebHost.Properties.CommonWebApiResources.resources \
-       System.Web.Http.WebHost.Properties.SRResources.resources
+$(the_lib): 
index 3faffa8b1b5b073fb7aaba298b79265070af45db..0d1b62859ab115e15eb8d255bd48d8bc45892522 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
       <Name>System.Web-net_4_x</Name>\r
     </ProjectReference>\r
-    <Reference Include="Microsoft.Web.Infrastructure">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Microsoft.Web.Infrastructure</HintPath>\r
-      <Private>False</Private>\r
-    </Reference>\r
+    <ProjectReference Include="../Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj">\r
+      <Project>{CD409902-9DA0-48A3-B360-C09060168CB5}</Project>\r
+      <Name>Microsoft.Web.Infrastructure-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx">\r
+      <LogicalName>System.Web.Http.WebHost.Properties.CommonWebApiResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.Http.WebHost/Properties/SRResources.resx">\r
+      <LogicalName>System.Web.Http.WebHost.Properties.SRResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
 </Project>\r
 
index fb50d52d2e98208c8bdc9065d7656ac011cdc3ea..72afa046d2a4cb72959d0a660e53fa8a609fb399 100644 (file)
@@ -4,20 +4,13 @@ include ../../build/rules.make
 
 LIBRARY = System.Web.Http.dll
 
-System.Web.Http.Properties.CommonWebApiResources.resources: ../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx
-       $(RESGEN) "$<" "$@"
-       
-System.Web.Http.Properties.SRResources.resources: ../../../external/aspnetwebstack/src/System.Web.Http/Properties/SRResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Web.Http.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx \
+       System.Web.Http.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http/Properties/SRResources.resx
+
 
 
 LIB_REFS = System.Core System System.Xml System.Net.Http System.ComponentModel.DataAnnotations System.Net.Http.Formatting System.Runtime.Caching System.Runtime.Serialization System.Data.Linq
-LIB_MCS_FLAGS = \
-               -d:ASPNETMVC -keyfile:../winfx.pub -delaysign \
-               -resource:System.Web.Http.Properties.CommonWebApiResources.resources \
-               -resource:System.Web.Http.Properties.SRResources.resources
+LIB_MCS_FLAGS = -d:ASPNETMVC -keyfile:../winfx.pub -delaysign 
 
 include ../../build/library.make
-
-$(the_lib): System.Web.Http.Properties.CommonWebApiResources.resources \
-       System.Web.Http.Properties.SRResources.resources
index 7753c8ff046b9d0b05a9afbc31ebc4d95da93a34..bb5c8db8c3f130b909c1ec27769405d46a3d5b92 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Web.Http.Properties.CommonWebApiResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx">\r
       <LogicalName>System.Web.Http.Properties.CommonWebApiResources.resources</LogicalName>\r
     </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Web.Http.Properties.SRResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.Http/Properties/SRResources.resx">\r
       <LogicalName>System.Web.Http.Properties.SRResources.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
diff --git a/mcs/class/System.Web.Mobile/System.Web.Mobile-net_4_x.csproj b/mcs/class/System.Web.Mobile/System.Web.Mobile-net_4_x.csproj
new file mode 100644 (file)
index 0000000..bc1337a
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E676BC22-5B81-4518-8243-3946BB57D665}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Web.Mobile</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 024e52e89eaa78c9af59c9fc1db03d0399e0b498..e5418545d960e1e5593af07891b5a2d961caa933 100644 (file)
@@ -5,6 +5,7 @@ include ../../build/rules.make
 LIBRARY = System.Web.Mvc3.dll
 LIBRARY_NAME = System.Web.Mvc.dll
 
+RESOURCE_DEFS = System.Web.Mvc.Resources.MvcResources,Mvc/Resources/MvcResources.resx
 RESX_DIST =  Mvc/Resources/MvcResources.resx
 
 LIB_REFS = Microsoft.Web.Infrastructure System System.Core System.Configuration System.Data System.Xml System.Web System.Web.Abstractions System.Web.Routing System.Web.Extensions System.ComponentModel.DataAnnotations System.Data.Linq System.Runtime.Caching System.Web.Razor System.Web.WebPages.Razor System.Web.WebPages
@@ -12,14 +13,9 @@ LIB_MCS_FLAGS = \
                /warn:1 \
                /keyfile:../winfx.pub \
                /d:MONO \
-               /delaysign \
-               $(foreach r, $(RESOURCES), /resource:$(r),System.Web.Mvc.Resources.$(notdir $(r)))
+               /delaysign
 
 EXTRA_DISTFILES = $(RESX_DIST)
-RESOURCES = $(RESX_DIST:.resx=.resources)
-include ../../build/library.make
 
-$(build_lib): $(RESOURCES)
+include ../../build/library.make
 
-$(RESOURCES): %.resources: %.resx
-       $(RESGEN) `echo $< | $(PLATFORM_CHANGE_SEPARATOR_CMD)`
index 6c1c1265d3cdcfe9a1ab76158fd41616258060f4..3b76937bb6285bddab64b7752f01287a29760775 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <Reference Include="Microsoft.Web.Infrastructure">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Microsoft.Web.Infrastructure</HintPath>\r
-      <Private>False</Private>\r
-    </Reference>\r
+    <ProjectReference Include="../Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj">\r
+      <Project>{CD409902-9DA0-48A3-B360-C09060168CB5}</Project>\r
+      <Name>Microsoft.Web.Infrastructure-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="Mvc/Resources/MvcResources.resources">\r
+    <EmbeddedResource Include="Mvc/Resources/MvcResources.resx">\r
       <LogicalName>System.Web.Mvc.Resources.MvcResources.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index 542360275c1dd72603d31bbe6b6d8c3b09a8de1f..e4472a96a0c3d4beb9ec6dae32aeb0c9a29237b9 100644 (file)
@@ -5,21 +5,15 @@ include ../../build/rules.make
 LIBRARY = System.Web.Razor.dll
 LIBRARY_NAME = System.Web.Razor.dll
 
-System.Web.Razor.Common.CommonResources.resources: ../../../external/aspnetwebstack/src/CommonResources.resx
-       $(RESGEN) "$<" "$@"
-       
-System.Web.Razor.Resources.RazorResources.resources: ../../../external/aspnetwebstack/src/System.Web.Razor/Resources/RazorResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Web.Razor.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx \
+       System.Web.Razor.Resources.RazorResources,../../../external/aspnetwebstack/src/System.Web.Razor/Resources/RazorResources.resx
 
 LIB_REFS = System System.Core
 LIB_MCS_FLAGS = \
                /warn:1 \
                /keyfile:../winfx.pub -delaysign \
-               /d:ASPNETWEBPAGES \
-               /resource:System.Web.Razor.Resources.RazorResources.resources \
-               /resource:System.Web.Razor.Common.CommonResources.resources
+               /d:ASPNETWEBPAGES 
 
 include ../../build/library.make
 
-$(build_lib): System.Web.Razor.Resources.RazorResources.resources \
-               System.Web.Razor.Common.CommonResources.resources
index eaa191d794b65a7bb7af294a7d9b91495bd08462..7b693416b897c7b8a85bb37efb2b7daac80698a2 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Web.Razor.Resources.RazorResources.resources">\r
-      <LogicalName>System.Web.Razor.Resources.RazorResources.resources</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Web.Razor.Common.CommonResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/CommonResources.resx">\r
       <LogicalName>System.Web.Razor.Common.CommonResources.resources</LogicalName>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.Razor/Resources/RazorResources.resx">\r
+      <LogicalName>System.Web.Razor.Resources.RazorResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
   </ItemGroup>\r
 </Project>\r
 
diff --git a/mcs/class/System.Web.RegularExpressions/System.Web.RegularExpressions-net_4_x.csproj b/mcs/class/System.Web.RegularExpressions/System.Web.RegularExpressions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..be101ea
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{9B52B7BD-1E14-4300-BEC5-241513810554}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Web.RegularExpressions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../msfinal.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index f398e0ea8e3e6414aac757942ca7518d37df4531..4f47b14286db28704527e8d43ee27a23b454260c 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 5deb0b5e9543a85d351129d2e0f1ee78cbf218d4..0dfc8236d4b1c71de2ee476616b03e9501c3b146 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,168,169,219,414,612,649</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\inc\InvariantComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\inc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\ComponentModel\CompModSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\DiagnosticsElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\PriorityGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\ProtocolElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\ProtocolElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\Protocols.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapEnvelopeProcessingElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapExtensionTypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapExtensionTypeElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\TypeElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\TypeElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\WebServicesSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\WsdlHelpGeneratorElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\WsiProfilesElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\WsiProfilesElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionPointAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionPrefixAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpFormatExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpGetProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpGetProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpPostProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpPostProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\HttpProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeAnyImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormatExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeReturn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeTextImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeXmlImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\MimeXmlReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SchemaCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\Soap12FormatExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\Soap12ProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\Soap12ProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapExtensionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapExtensionReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapFormatExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapHttpTransportImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapProtocolImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapProtocolReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\SoapTransportImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\WebCodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\WebReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\WebReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\WebReferenceOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Description\WebServicesInteroperability.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Diagnostics\TraceUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\ContractReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\ContractSearchPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientDocuments.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientReferences.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentLinksPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentSearchPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryExceptionDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryReferences.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryRequestHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoverySearchPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicDiscoSearcher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicDiscoveryDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicPhysicalDiscoSearcher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicVirtualDiscoSearcher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\ExcludePathInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\InvalidContentTypeException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\InvalidDocumentContentsException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\LinkGrep.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\SchemaReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\SoapBinding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Discovery\XmlSchemaSearchPattern.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\CallId.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\INotifyConnection2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\INotifySink2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\INotifySource2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\NotifyFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Interop\UserThread.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\NativeMethods.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\PartialTrustHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\AnyReturnReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\BufferedResponseStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\ClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\DiscoveryServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\DocumentationServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HtmlFormParameterReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HtmlFormParameterWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpGetClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpGetServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostLocalhostServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\LogicalMethodInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MatchAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeParameterReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeParameterWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeReturnReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeReturnWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\NopReturnReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\PatternMatcher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\RequestResponse.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\RuntimeUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\Scalars.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\ScatterGatherStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\ServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\ServerType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\Soap11ServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\Soap12ServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapClientMessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapClientProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapDocumentMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapDocumentServiceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtensionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtensionStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapFaultCodes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaders.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapMessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapMessageStage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapParameterStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapProtocolVersion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapReflector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapRpcMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapRpcServiceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerMessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerProtocol.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServiceRoutingStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapUnknownHeader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\TextReturnReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlEncodedParameterWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlParameterReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlParameterWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\ValueCollectionParameterReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\WebServiceHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\WebServiceHandlerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\XmlReturnReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Protocols\XmlReturnWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\Soap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WebMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WebService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WebServiceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WebServiceBindingAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WebServicesDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web.Services\System\Web\Services\WsiProfiles.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\inc\InvariantComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\inc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\ComponentModel\CompModSwitches.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\DiagnosticsElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\PriorityGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\ProtocolElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\ProtocolElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\Protocols.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapEnvelopeProcessingElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapExtensionTypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\SoapExtensionTypeElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\TypeElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\TypeElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\WebServicesSection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\WsdlHelpGeneratorElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\WsiProfilesElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\WsiProfilesElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionPointAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Configuration\XmlFormatExtensionPrefixAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpFormatExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpGetProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpGetProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpPostProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpPostProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\HttpProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeAnyImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormatExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeFormReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeParameters.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeReturn.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeTextImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeXmlImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\MimeXmlReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SchemaCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescription.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\ServiceDescriptionSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\Soap12FormatExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\Soap12ProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\Soap12ProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapExtensionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapExtensionReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapFormatExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapHttpTransportImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapProtocolImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapProtocolReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\SoapTransportImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\WebCodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\WebReference.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\WebReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\WebReferenceOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Description\WebServicesInteroperability.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Diagnostics\TraceUtility.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\ContractReference.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\ContractSearchPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientDocuments.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryClientReferences.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentLinksPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentReference.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentSearchPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryDocumentSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryExceptionDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryReference.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryReferences.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoveryRequestHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DiscoverySearchPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicDiscoSearcher.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicDiscoveryDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicPhysicalDiscoSearcher.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\DynamicVirtualDiscoSearcher.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\ExcludePathInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\InvalidContentTypeException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\InvalidDocumentContentsException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\LinkGrep.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\SchemaReference.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\SoapBinding.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Discovery\XmlSchemaSearchPattern.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\CallId.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\INotifyConnection2.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\INotifySink2.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\INotifySource2.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\NotifyFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Interop\UserThread.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\NativeMethods.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\PartialTrustHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\AnyReturnReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\BufferedResponseStream.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\ClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\DiscoveryServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\DocumentationServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HtmlFormParameterReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HtmlFormParameterWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpGetClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpGetServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostLocalhostServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpPostServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\HttpServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\LogicalMethodInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MatchAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeParameterReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeParameterWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeReturnReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\MimeReturnWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\NopReturnReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\PatternMatcher.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\RequestResponse.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\RuntimeUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\Scalars.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\ScatterGatherStream.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\ServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\ServerType.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\Soap11ServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\Soap12ServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapClientMessage.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapClientProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapDocumentMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapDocumentServiceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtensionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapExtensionStream.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapFaultCodes.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaderException.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapHeaders.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapMessage.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapMessageStage.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapParameterStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapProtocolVersion.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapReflector.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapRpcMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapRpcServiceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerMessage.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerMethod.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServerProtocol.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapServiceRoutingStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\SoapUnknownHeader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\TextReturnReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlEncodedParameterWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlParameterReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\UrlParameterWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\ValueCollectionParameterReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\WebServiceHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\WebServiceHandlerFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\XmlReturnReader.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Protocols\XmlReturnWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\Soap.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WebMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WebService.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WebServiceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WebServiceBindingAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WebServicesDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web.Services\System\Web\Services\WsiProfiles.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\Res.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{DE51B021-D51C-4F26-99EE-B0729D97631E}</Project>\r
       <Name>System.Web-plainweb-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Design/System.Design-net_4_x.csproj">\r
-      <Project>{EFEDC380-2CB0-4B40-9566-D2302867A4D9}</Project>\r
-      <Name>System.Design-net_4_x</Name>\r
+    <ProjectReference Include="../System.Design/System.Design-plaindesign-net_4_x.csproj">\r
+      <Project>{DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}</Project>\r
+      <Name>System.Design-plaindesign-net_4_x</Name>\r
     </ProjectReference>\r
     <ProjectReference Include="../System.DirectoryServices/System.DirectoryServices-net_4_x.csproj">\r
       <Project>{CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}</Project>\r
diff --git a/mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.exclude.sources b/mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..645326d
--- /dev/null
@@ -0,0 +1,8 @@
+System.Web.Services/Test/System.Web.Services.Configuration/DiagnosticsElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/ProtocolElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/SoapEnvelopeProcessingElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/WsdlHelpGeneratorElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/WsiProfilesElementTest.cs
+System.Web.Services/Test/System.Web.Services.Configuration/XmlFormatExtensionAttributeTest.cs
diff --git a/mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.excludes b/mcs/class/System.Web.Services/mobile_static_System.Web.Services_test.dll.excludes
deleted file mode 100644 (file)
index 645326d..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-System.Web.Services/Test/System.Web.Services.Configuration/DiagnosticsElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/ProtocolElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/SoapEnvelopeProcessingElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/SoapExtensionTypeElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/TypeElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/WsdlHelpGeneratorElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/WsiProfilesElementTest.cs
-System.Web.Services/Test/System.Web.Services.Configuration/XmlFormatExtensionAttributeTest.cs
index 33d506be70a8b2141db43259a3b53eb6c5ec5ba1..2e704de873419e2038fbadbd36737148590875d1 100644 (file)
@@ -5,21 +5,15 @@ include ../../build/rules.make
 LIBRARY = System.Web.WebPages.Deployment.dll
 LIBRARY_NAME = System.Web.WebPages.Deployment.dll
 
-System.Web.WebPages.Deployment.Common.CommonResources.resources: ../../../external/aspnetwebstack/src/CommonResources.resx
-       $(RESGEN) "$<" "$@"
-       
-System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources: ../../../external/aspnetwebstack/src/System.Web.WebPages.Deployment/Resources/ConfigurationResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Web.WebPages.Deployment.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx \
+       System.Web.WebPages.Deployment.Resources.ConfigurationResources,../../../external/aspnetwebstack/src/System.Web.WebPages.Deployment/Resources/ConfigurationResources.resx
+
 
 LIB_REFS = System System.Core System.Configuration System.Web Microsoft.Web.Infrastructure
 LIB_MCS_FLAGS = \
                /warn:1 \
                /keyfile:../winfx.pub -delaysign \
-               /d:ASPNETWEBPAGES \
-               /resource:System.Web.WebPages.Deployment.Common.CommonResources.resources \
-               /resource:System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources
+               /d:ASPNETWEBPAGES 
 
 include ../../build/library.make
-
-$(build_lib): System.Web.WebPages.Deployment.Common.CommonResources.resources \
-               System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources
index 4d9791f0dcd52deca600eb55765fd4ca31396822..6fd9784625d0608769e75495cab00b7179016e0d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
       <Name>System.Web-net_4_x</Name>\r
     </ProjectReference>\r
-    <Reference Include="Microsoft.Web.Infrastructure">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Microsoft.Web.Infrastructure</HintPath>\r
-      <Private>False</Private>\r
-    </Reference>\r
+    <ProjectReference Include="../Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj">\r
+      <Project>{CD409902-9DA0-48A3-B360-C09060168CB5}</Project>\r
+      <Name>Microsoft.Web.Infrastructure-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Web.WebPages.Deployment.Common.CommonResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/CommonResources.resx">\r
       <LogicalName>System.Web.WebPages.Deployment.Common.CommonResources.resources</LogicalName>\r
     </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.WebPages.Deployment/Resources/ConfigurationResources.resx">\r
       <LogicalName>System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources</LogicalName>\r
     </EmbeddedResource>\r
   </ItemGroup>\r
index cb0e52dc33b38cb2347e8df99f1dd4e8341dd77d..28b0f3f45c16eb89d54e927c7f40cc855dc674a7 100644 (file)
@@ -5,24 +5,18 @@ include ../../build/rules.make
 LIBRARY = System.Web.WebPages.Razor.dll
 LIBRARY_NAME = System.Web.WebPages.Razor.dll
 
-System.Web.WebPages.Razor.Common.CommonResources.resources: ../../../external/aspnetwebstack/src/CommonResources.resx
-       $(RESGEN) "$<" "$@"
-       
-System.Web.WebPages.Razor.Resources.RazorWebResources.resources: ../../../external/aspnetwebstack/src/System.Web.WebPages.Razor/Resources/RazorWebResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Web.WebPages.Razor.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx \
+       System.Web.WebPages.Razor.Resources.RazorWebResources,../../../external/aspnetwebstack/src/System.Web.WebPages.Razor/Resources/RazorWebResources.resx
 
 LIB_REFS = System System.Core System.Configuration System.Web System.Web.WebPages System.Web.Razor
 LIB_MCS_FLAGS = \
                /warn:1 \
                /keyfile:../winfx.pub \
                /delaysign \
-               /d:ASPNETWEBPAGES \
-               /resource:System.Web.WebPages.Razor.Resources.RazorWebResources.resources \
-               /resource:System.Web.WebPages.Razor.Common.CommonResources.resources
+               /d:ASPNETWEBPAGES
 
 include ../../build/library.make
 
-$(build_lib): System.Web.WebPages.Razor.Resources.RazorWebResources.resources \
-               System.Web.WebPages.Razor.Common.CommonResources.resources
 
 
index a9e9a43a79d46cc7dd49c9fc8e69261fea86e3a7..9e427e5ed1a72fd8078481143287c386ab12e38a 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Web.WebPages.Razor.Resources.RazorWebResources.resources">\r
-      <LogicalName>System.Web.WebPages.Razor.Resources.RazorWebResources.resources</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Web.WebPages.Razor.Common.CommonResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/CommonResources.resx">\r
       <LogicalName>System.Web.WebPages.Razor.Common.CommonResources.resources</LogicalName>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.WebPages.Razor/Resources/RazorWebResources.resx">\r
+      <LogicalName>System.Web.WebPages.Razor.Resources.RazorWebResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
   </ItemGroup>\r
 </Project>\r
 
index 394f2043a118ec709a4e2643da2488c245ff7eb1..3e9641f079cfbbcdba3b85c7664794bac1331e48 100644 (file)
@@ -5,24 +5,18 @@ include ../../build/rules.make
 LIBRARY = System.Web.WebPages.dll
 LIBRARY_NAME = System.Web.WebPages.dll
 
-System.Web.WebPages.Common.CommonResources.resources: ../../../external/aspnetwebstack/src/CommonResources.resx
-       $(RESGEN) "$<" "$@"
-       
-System.Web.WebPages.Resources.WebPageResources.resources: ../../../external/aspnetwebstack/src/System.Web.WebPages/Resources/WebPageResources.resx
-       $(RESGEN) "$<" "$@"
+RESOURCE_DEFS = \
+       System.Web.WebPages.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx \
+       System.Web.WebPages.Resources.WebPageResources,../../../external/aspnetwebstack/src/System.Web.WebPages/Resources/WebPageResources.resx
 
 LIB_REFS = Microsoft.CSharp Microsoft.Web.Infrastructure System System.ComponentModel.DataAnnotations System.Configuration System.Core System.Data.Linq System.Web System.Web.WebPages.Deployment System.Web.Razor System.Xml System.Xml.Linq
+
 LIB_MCS_FLAGS = \
                /warn:1 \
                /keyfile:../winfx.pub \
                /delaysign \
-               /d:ASPNETWEBPAGES \
-               /resource:System.Web.WebPages.Resources.WebPageResources.resources \
-               /resource:System.Web.WebPages.Common.CommonResources.resources
+               /d:ASPNETWEBPAGES 
 
 EXTRA_DISTFILES = $(RESX_DIST)
 
 include ../../build/library.make
-
-$(build_lib): System.Web.WebPages.Resources.WebPageResources.resources \
-               System.Web.WebPages.Common.CommonResources.resources
index de8e8f18a801231288a5203b733508f4aaa69d93..28ca085172c7cc7f4344a6487b358146e755cdc0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{DABF9F75-63AD-4991-9D2B-9234E7032B32}</Project>\r
       <Name>Microsoft.CSharp-net_4_x</Name>\r
     </ProjectReference>\r
-    <Reference Include="Microsoft.Web.Infrastructure">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>Microsoft.Web.Infrastructure</HintPath>\r
-      <Private>False</Private>\r
-    </Reference>\r
+    <ProjectReference Include="../Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj">\r
+      <Project>{CD409902-9DA0-48A3-B360-C09060168CB5}</Project>\r
+      <Name>Microsoft.Web.Infrastructure-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="System.Web.WebPages.Resources.WebPageResources.resources">\r
-      <LogicalName>System.Web.WebPages.Resources.WebPageResources.resources</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="System.Web.WebPages.Common.CommonResources.resources">\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/CommonResources.resx">\r
       <LogicalName>System.Web.WebPages.Common.CommonResources.resources</LogicalName>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="../../../external/aspnetwebstack/src/System.Web.WebPages/Resources/WebPageResources.resx">\r
+      <LogicalName>System.Web.WebPages.Resources.WebPageResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
   </ItemGroup>\r
 </Project>\r
 
index 6098d30328ca956a1ce60a8e42de908d74f88d35..61ab3d54af625acd06b3dd3ecd35ddd18b211324 100644 (file)
@@ -225,8 +225,8 @@ TEST_RESOURCE_FILES = \
        Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs \
        Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx
 
-RESX_DIST =  resources/TranslationResources.resx
-RESX_RES = $(RESX_DIST:.resx=.resources)
+RESOURCE_DEFS = \
+       TranslationResources,resources/TranslationResources.resx
 
 NUNIT_RESOURCE_FILES = $(TEST_RESOURCE_FILES)
 NUNIT_APP_CODE_FILES = $(TEST_APP_CODE_FILES)
@@ -254,7 +254,7 @@ ifneq (plainweb/,$(intermediate))
 LIB_REFS += System.Web.Services plaindesign/System.Design
 LIB_MCS_FLAGS += -define:WEBSERVICES_DEP
 
-all-local: System.Web/UplevelHelper.cs resources/TranslationResources.resources 
+all-local: System.Web/UplevelHelper.cs 
 
 endif
 
@@ -272,7 +272,6 @@ EXTRA_DISTFILES = \
        $(TEST_APP_CODE_FILES) \
        $(TEST_APP_GLOBALRESOURCES_FILES) \
        UplevelHelperDefinitions.xml \
-       $(RESX_DIST) \
        SQLiteProviders_DatabaseSchema.sql \
        $(shell find Test/standalone-runner-support/ -name "*.cs" -type f -printf "'%p' ") \
        $(shell find Test/standalone-tests/ -name "*.cs" -type f -printf "'%p' " -o -name "*.cs.in" -type f -printf "'%p' ") \
index f63b9ab24895dc357932d9ee0dc6400a538a5e62..0b1699b80a47715877f7cebe3453c131b7eecf9d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,612,618,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpApplicationStateBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpApplicationStateWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpCachePolicyBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpCachePolicyWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpFileCollectionBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpPostedFileBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpPostedFileWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpRequestBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpResponseBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpServerUtilityBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpSessionStateBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpSessionStateWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Cache\IOutputCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Cache\ResponseElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\BuildProviderAppliesTo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\BuildProviderAppliesToAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\DesignTimeResourceProviderFactoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\ExpressionEditorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\ExpressionPrefixAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesTo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesToAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\IAssemblyPostProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\IImplicitResourceProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AdapterDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AsyncPreloadModeFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AuthenticationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AuthorizationRuleAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\BrowserCapsElementType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\BrowserTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomErrorsMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomErrorsRedirectMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomWebEventKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\DelayedRegex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\FormsAuthPasswordFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\FormsProtectionEnum.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IConfigMapPath.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IConfigMapPathFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IRemoteWebConfigurationHostServer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\MachineKeyCompatibilityMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\MachineKeyValidation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\PagesEnableSessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelComAuthenticationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelComImpersonationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelLogLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProfileGuidedOptimizationsFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RegexMatchTimeoutValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RegexMatchTimeoutValidatorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcAuthent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcImpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\SerializationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\SystemWebCachingSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\TicketCompatibilityMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\TraceDisplayMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\WebApplicationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\WebLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\XhtmlConformanceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Hosting\IApplicationHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Hosting\IRegisteredObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHtmlString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpAsyncHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpHandlerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpModule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ISubscriptionToken.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ITlsTokenBindingInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindingBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindingBehaviorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindNeverAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindRequiredAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ExtensibleModelBinderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\IModelNameProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelBinderProviderOptionsAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\PreApplicationStartMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\HttpProfileGroupBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\ProfileEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\ProfileEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ReadEntityBodyMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\RequestNotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\RequestNotificationStatus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\IRouteConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\IRouteHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RequestContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteValueDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\VirtualPathData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\AntiXss\CodeCharts.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\FormsAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\FormsAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\PassportAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\PassportAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\RoleManagerEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\RoleManagerEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\WindowsAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\WindowsAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\IReadOnlySessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\IRequiresSessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\SessionStateBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ClientIDMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ConflictOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ConstructorNeedsTagAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ControlBuilderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\CssClassPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataBindingHandlerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataKeyPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceCacheExpiry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceCapabilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\FileLevelControlBuilderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\FilterableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterTag.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IAttributeAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IAutoFieldGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IBindableControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IBindableTemplate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ICallbackEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IControlBuilderAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataBindingsAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataItemContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataKeysControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataSourceViewSchemaAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDReferencePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IExpressionsAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IFilterResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchicalDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchicalEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchyData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ImageClickEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INamingContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INavigateUIData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INonBindingContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IParserAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IPostBackDataHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IPostBackEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IResourceUrlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IScriptResourceDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IScriptResourceMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStateFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStateManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStyleSheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ITemplate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IThemeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUrlResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUserControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUserControlTypeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\NonVisualControlAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\PersistChildrenAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\PersistenceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\SupportsEventValidationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TemplateInstance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TemplateInstanceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ThemeableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TraceContextEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TraceContextEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\UnobtrusiveValidationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ValidateRequestMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ViewStateEncryptionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ViewStateMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\Adapters\WmlPostFieldType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AdCreatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AuthenticateEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AuthenticateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AutoCompleteType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BorderStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BulletedListEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BulletedListEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ButtonColumnType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ButtonType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CalendarSelectionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ContentDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CreateUserErrorEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CreateUserErrorEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataBoundControlMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlCellType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlRowState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlRowType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DayNameFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DayRenderEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewInsertedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewInsertEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewModeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewModeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FirstDayOfWeek.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FontSize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewInsertedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewInsertEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewModeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewModeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridLines.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewEditEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewEditEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewRowEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewRowEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSelectEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSelectEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSortEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSortEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\HorizontalAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\HotSpotMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IButtonControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ICallbackContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ICompositeControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundItemControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundListControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IFieldControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageMapEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageMapEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IPersistedSelector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IRepeatInfoUser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ListItemType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ListSelectionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LiteralMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginCancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginCancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginFailureAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LogoutAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MailMessageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MailMessageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuRenderingMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MonthChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MonthChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\NextPrevFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\Orientation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerButtons.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerPosition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PathDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeatDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeatLayout.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SendMailErrorEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ServerValidateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SortDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableCaptionAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableHeaderScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableRowSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TextAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TextBoxMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TitleFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeSelectAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeViewImageSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\UnitType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationCompareOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationDataType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationSummaryDisplayMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidatorDisplay.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\VerticalAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\WebColorConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\FieldCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ITrackingPersonalizable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ITransformerConfigurationControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IVersioningPersonalizable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebActionable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebEditable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartField.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartHttpHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartRow.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ParametersCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PartChromeState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PartChromeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PersonalizationScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\RowCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\TableCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebBrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebDisplayNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartAuthorizationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartCancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartCancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartExportMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartHelpMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartVerbsEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartVerbsEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UnvalidatedRequestValuesBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UnvalidatedRequestValuesWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\IObjectFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\RequestValidationSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\StringUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\WebSockets\AspNetWebSocketOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\WebSockets\SubprotocolUtil.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpApplicationStateBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpApplicationStateWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpCachePolicyBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpCachePolicyWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpFileCollectionBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpPostedFileBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpPostedFileWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpRequestBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpResponseBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpServerUtilityBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpSessionStateBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpSessionStateWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\IOutputCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\OutputCacheProviderCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\ResponseElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\BuildProviderAppliesTo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\BuildProviderAppliesToAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\DesignTimeResourceProviderFactoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\ExpressionEditorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\ExpressionPrefixAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesTo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesToAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\IAssemblyPostProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\IImplicitResourceProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AdapterDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AsyncPreloadModeFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AuthenticationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AuthorizationRuleAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\BrowserCapsElementType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\BrowserTree.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomErrorsMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomErrorsRedirectMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomWebEventKey.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\DelayedRegex.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\FormsAuthPasswordFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\FormsProtectionEnum.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IConfigMapPath.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IConfigMapPathFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\Internal\IInternalConfigWebHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IRemoteWebConfigurationHostServer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IServerConfig2.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\MachineKeyCompatibilityMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\MachineKeyValidation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\PagesEnableSessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelComAuthenticationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelComImpersonationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelLogLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProfileGuidedOptimizationsFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RegexMatchTimeoutValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RegexMatchTimeoutValidatorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcAuthent.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcImpers.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\SerializationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\SystemWebCachingSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\TicketCompatibilityMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\TraceDisplayMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\WebApplicationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\WebLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\XhtmlConformanceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\AppDomainProtocolHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\HostingEnvironmentException.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\HTTP_COOKED_URL.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IApplicationHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomRuntime.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomRuntimeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessHostPreloadClient.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessHostSupportFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessPingCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessSuspendListener.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IQueueHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IStopListeningRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ISuspendibleRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HtmlString.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HttpChannelBindingToken.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HttpRawResponse.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHtmlString.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpAsyncHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpHandlerFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpModule.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IntraPartitionAPIs\xsp\PerfCounterEnum.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IPrincipalContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IRequestCompletedNotifier.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ISubscriptionToken.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ITlsTokenBindingInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Management\IInternalWebEventProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\misc\InvariantComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindingBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindingBehaviorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindNeverAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindRequiredAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\DictionaryHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ExtensibleModelBinderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IModelNameProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IUnvalidatedValueProviderSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IValueProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IValueProviderSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelBinderProviderOptionsAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelBindingExecutionContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelError.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelStateDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ValueProviderResult.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModuleConfigurationInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\PreApplicationStartMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\DefaultHttpProfile.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\HttpProfileGroupBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileAuthenticationOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ReadEntityBodyMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\RequestNotification.cs" />\r
+    <Compile Include="..\referencesource\System.Web\RequestNotificationStatus.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\BoundUrl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ContentPathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\HttpMethodConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\IRouteConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\IRouteHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\LiteralSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PageRouteHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ParameterSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ParsedRoute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PathSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RequestContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\Route.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteParser.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteTable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteValueDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\SeparatorPathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\StopRoutingHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlAuthFailureHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlRoutingHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlRoutingModule.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\VirtualPathData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\AntiXss\CodeCharts.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\Cryptography\ICryptoService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\FormsAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\FormsAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\PassportAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\PassportAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\RoleManagerEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\RoleManagerEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\WindowsAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\WindowsAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\IReadOnlySessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\IRequiresSessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\SessionStateBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Web\TaskWrapperAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ClientIDMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ConflictOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ConstructorNeedsTagAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ControlBuilderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\CssClassPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataBindingHandlerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataKeyPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceCacheExpiry.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceCapabilities.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceOperation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\FileLevelControlBuilderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\FilterableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterTag.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IAttributeAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IAutoFieldGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IBindableControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IBindableTemplate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ICallbackEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IControlBuilderAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataBindingsAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataItemContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataKeysControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataSourceViewSchemaAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDReferencePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IExpressionsAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IFilterResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchicalDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchicalEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchyData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ImageClickEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INamingContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INavigateUIData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INonBindingContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IParserAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IPostBackDataHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IPostBackEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IResourceUrlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IScriptResourceDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IScriptResourceMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStateFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStateManager.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStyleSheet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ITemplate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IThemeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUpdatePanel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUrlResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUserControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUserControlTypeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\NonVisualControlAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\PersistChildrenAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\PersistenceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\SupportsEventValidationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TemplateInstance.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TemplateInstanceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ThemeableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TraceContextEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TraceContextEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\UnobtrusiveValidationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ValidateRequestMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ViewStateEncryptionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ViewStateMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\Adapters\WmlPostFieldType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AdCreatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AuthenticateEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AuthenticateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AutoCompleteType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BorderStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BulletedListEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BulletedListEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ButtonColumnType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ButtonType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CalendarSelectionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ContentDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CreateUserErrorEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CreateUserErrorEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataBoundControlMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlCellType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlRowState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlRowType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DayNameFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DayRenderEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewInsertedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewInsertEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewModeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewModeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FirstDayOfWeek.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FontSize.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewInsertedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewInsertEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewModeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewModeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridLines.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewEditEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewEditEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewRowEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewRowEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSelectEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSelectEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSortEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSortEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\HorizontalAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\HotSpotMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IBorderPaddingControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IButtonControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICallbackContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICheckBoxControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICompositeControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundItemControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundListControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IEditableTextControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IFieldControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageMapEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageMapEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IPersistedSelector.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IPostBackContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IRenderOuterTableControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IRepeatInfoUser.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ITextControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IWizardSideBarListControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ListItemType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ListSelectionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LiteralMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginCancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginCancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginFailureAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LogoutAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MailMessageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MailMessageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuRenderingMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MonthChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MonthChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\NextPrevFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\Orientation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerButtons.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerPosition.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PathDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeatDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeatLayout.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SendMailErrorEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ServerValidateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SortDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableCaptionAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableHeaderScope.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableRowSection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TextAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TextBoxMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TitleFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeSelectAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeViewImageSet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\UnitType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationCompareOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationDataType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationSummaryDisplayMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidatorDisplay.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\VerticalAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WebColorConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WizardSideBarListControlItem.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WizardSideBarListControlItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\FieldCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ITrackingPersonalizable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ITransformerConfigurationControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IVersioningPersonalizable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebActionable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebEditable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPart.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartField.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartHttpHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartParameters.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartRow.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartTable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ParametersCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PartChromeState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PartChromeType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PersonalizationScope.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\RowCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\TableCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebBrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebDisplayNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartAuthorizationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartCancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartCancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartExportMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartHelpMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartVerbsEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartVerbsEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UnvalidatedRequestValuesBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UnvalidatedRequestValuesWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AppVerifierErrorCode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AppVerifierException.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AssemblyUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\BinaryCompatibility.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DateTimeUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DisposableAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DoNotResetAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\EmptyCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\EnumerationRangeValidationUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ExceptionUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\FastDelegateCreator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\GCUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\hresults.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\IObjectFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ISyncContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ISyncContextLock.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\Msec.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ObjectSet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\OrderingMethodFinder.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ParseHttpDate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\PathUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\QueryableUtility.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\RegexUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\RequestValidationSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\Sec.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SimpleRecyclingCache.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\StringUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SymbolEqualComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SynchronizationContextMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\VersionUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ValidateStringCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSockets\AspNetWebSocketOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSockets\SubprotocolUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSocketTransitionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDefaultValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDisplayNameAttribute.cs" />\r
     <Compile Include="..\System.Design\System.Data.Design\TypedDataSetGenerator.cs" />\r
     <Compile Include="..\System.Windows.Forms\System.Resources\AssemblyNamesTypeResolutionService.cs" />\r
     <Compile Include="..\System.Windows.Forms\System.Resources\ByteArrayFromResXHandler.cs" />\r
     <Compile Include="System.Web.Caching\OutputCache.cs" />\r
     <Compile Include="System.Web.Caching\OutputCacheModule.cs" />\r
     <Compile Include="System.Web.Caching\OutputCacheProvider.cs" />\r
-    <Compile Include="System.Web.Caching\OutputCacheProviderCollection.cs" />\r
     <Compile Include="System.Web.Caching\SqlCacheDependency.cs" />\r
     <Compile Include="System.Web.Caching\SqlCacheDependencyAdmin.cs" />\r
     <Compile Include="System.Web.Caching\SubstitutionResponseElement.cs" />\r
     <Compile Include="System.Web.Compilation\WebServiceCompiler.cs" />\r
     <Compile Include="System.Web.Compilation\WsdlBuildProvider.cs" />\r
     <Compile Include="System.Web.Compilation\XsdBuildProvider.cs" />\r
-    <Compile Include="System.Web.Configuration.Internal\IInternalConfigWebHost.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\AnonymousIdentificationSection.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\ApplicationSettingsConfigurationFileMap.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\AssemblyCollection.cs" />\r
     <Compile Include="System.Web.Management\WebEventCodes.cs" />\r
     <Compile Include="System.Web.Management\WebEventFormatter.cs" />\r
     <Compile Include="System.Web.Profile\CustomProviderDataAttribute.cs" />\r
-    <Compile Include="System.Web.Profile\DefaultProfile.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileAuthenticationOption.cs" />\r
     <Compile Include="System.Web.Profile\ProfileAutoSaveEventArgs.cs" />\r
     <Compile Include="System.Web.Profile\ProfileAutoSaveEventHandler.cs" />\r
     <Compile Include="System.Web.Profile\ProfileBase.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileInfo.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileInfoCollection.cs" />\r
     <Compile Include="System.Web.Profile\ProfileManager.cs" />\r
     <Compile Include="System.Web.Profile\ProfileMigrateEventArgs.cs" />\r
     <Compile Include="System.Web.Profile\ProfileMigrateEventHandler.cs" />\r
     <Compile Include="System.Web.Profile\SqliteProfileProvider.cs" />\r
     <Compile Include="System.Web.Profile\SqlProfileProvider.cs" />\r
     <Compile Include="System.Web.Properties\TranslationProperties.Designer.cs" />\r
-    <Compile Include="System.Web.Routing\HttpMethodConstraint.cs" />\r
-    <Compile Include="System.Web.Routing\PageRouteHandler.cs" />\r
-    <Compile Include="System.Web.Routing\PatternParser.cs" />\r
-    <Compile Include="System.Web.Routing\PatternToken.cs" />\r
-    <Compile Include="System.Web.Routing\PatternTokenType.cs" />\r
-    <Compile Include="System.Web.Routing\Route.cs" />\r
-    <Compile Include="System.Web.Routing\RouteCollection.cs" />\r
-    <Compile Include="System.Web.Routing\RouteData.cs" />\r
-    <Compile Include="System.Web.Routing\RouteValueDictionaryExtensions.cs" />\r
-    <Compile Include="System.Web.Routing\StopRoutingHandler.cs" />\r
-    <Compile Include="System.Web.Routing\UrlRoutingHandler.cs" />\r
-    <Compile Include="System.Web.Routing\UrlRoutingModule.cs" />\r
     <Compile Include="System.Web.Security\ActiveDirectoryConnectionProtection.cs" />\r
     <Compile Include="System.Web.Security\ActiveDirectoryMembershipProvider.cs" />\r
     <Compile Include="System.Web.Security\AnonymousIdentificationEventArgs.cs" />\r
     <Compile Include="System.Web.UI.WebControls\ImageField.cs" />\r
     <Compile Include="System.Web.UI.WebControls\ImageMap.cs" />\r
     <Compile Include="System.Web.UI.WebControls\IMenuRenderer.cs" />\r
-    <Compile Include="System.Web.UI.WebControls\IPostBackContainer.cs" />\r
     <Compile Include="System.Web.UI.WebControls\IRenderOuterTable.cs" />\r
     <Compile Include="System.Web.UI.WebControls\Label.cs" />\r
     <Compile Include="System.Web.UI.WebControls\LabelControlBuilder.cs" />\r
     <Compile Include="System.Web.UI\Html32TextWriter.cs" />\r
     <Compile Include="System.Web.UI\HtmlControlPersistableAttribute.cs" />\r
     <Compile Include="System.Web.UI\HtmlTextWriter.cs" />\r
-    <Compile Include="System.Web.UI\ICheckBoxControl.cs" />\r
-    <Compile Include="System.Web.UI\IEditableTextControl.cs" />\r
     <Compile Include="System.Web.UI\IgnoreUnknownContentAttribute.cs" />\r
     <Compile Include="System.Web.UI\ImageClickEventArgs.cs" />\r
     <Compile Include="System.Web.UI\IndexedString.cs" />\r
     <Compile Include="System.Web.UI\IScriptManager.cs" />\r
     <Compile Include="System.Web.UI\ITagNameToTypeMapper.cs" />\r
-    <Compile Include="System.Web.UI\ITextControl.cs" />\r
     <Compile Include="System.Web.UI\ListSourceHelper.cs" />\r
     <Compile Include="System.Web.UI\LiteralControl.cs" />\r
     <Compile Include="System.Web.UI\LosFormatter.cs" />\r
     <Compile Include="System.Web.UI\UserControl.cs" />\r
     <Compile Include="System.Web.UI\UserControlControlBuilder.cs" />\r
     <Compile Include="System.Web.UI\UserControlParser.cs" />\r
+    <Compile Include="System.Web.UI\Util.cs" />\r
     <Compile Include="System.Web.UI\ValidationPropertyAttribute.cs" />\r
     <Compile Include="System.Web.UI\ValidatorCollection.cs" />\r
     <Compile Include="System.Web.UI\VerificationAttribute.cs" />\r
     <Compile Include="System.Web\ExceptionPageTemplateValues.cs" />\r
     <Compile Include="System.Web\HeadersCollection.cs" />\r
     <Compile Include="System.Web\HtmlizedException.cs" />\r
-    <Compile Include="System.Web\HtmlString.cs" />\r
     <Compile Include="System.Web\HttpApplication.cs" />\r
     <Compile Include="System.Web\HttpApplicationFactory.cs" />\r
     <Compile Include="System.Web\HttpApplicationState.cs" />\r
     <Compile Include="System.Web\WebCategoryAttribute.cs" />\r
     <Compile Include="System.Web\WebPageTraceListener.cs" />\r
     <Compile Include="System.Web\WebROCollection.cs" />\r
-    <Compile Include="System.Web\WebSysDescriptionAttribute.cs" />\r
     <Compile Include="System.Web\XmlSiteMapProvider.cs" />\r
     <Compile Include="System.Web\UplevelHelper.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
-      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
-      <Name>System.Configuration-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj">\r
-      <Project>{371560EA-7BD3-4025-90CB-F1B112403CF2}</Project>\r
-      <Name>Mono.Data.Sqlite-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
-      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
-      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}</Project>\r
       <Name>System.ComponentModel.DataAnnotations-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
+      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
+      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj">\r
+      <Project>{371560EA-7BD3-4025-90CB-F1B112403CF2}</Project>\r
+      <Name>Mono.Data.Sqlite-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../System.Web.Services/System.Web.Services-net_4_x.csproj">\r
       <Project>{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}</Project>\r
       <Name>System.Web.Services-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Design/System.Design-net_4_x.csproj">\r
-      <Project>{EFEDC380-2CB0-4B40-9566-D2302867A4D9}</Project>\r
-      <Name>System.Design-net_4_x</Name>\r
+    <ProjectReference Include="../System.Design/System.Design-plaindesign-net_4_x.csproj">\r
+      <Project>{DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}</Project>\r
+      <Name>System.Design-plaindesign-net_4_x</Name>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="resources/TranslationResources.resources">\r
-      <LogicalName>TranslationResources.resources</LogicalName>\r
-    </EmbeddedResource>\r
     <EmbeddedResource Include="resources/WebUIValidation.js">\r
       <LogicalName>WebUIValidation.js</LogicalName>\r
     </EmbeddedResource>\r
     <EmbeddedResource Include="System.Web.UI.WebControls/MenuModern.js">\r
       <LogicalName>MenuModern.js</LogicalName>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="resources/TranslationResources.resx">\r
+      <LogicalName>TranslationResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
   </ItemGroup>\r
 </Project>\r
 
index df7651cee19b7126a8bc06f8a476018140d1c26c..9d2976f9148216411ff9d3a779ca5170c6bc5562 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,612,618,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/plainweb</OutputPath>\r
+    <IntermediateOutputPath>obj-plainweb</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpApplicationStateBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpApplicationStateWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpCachePolicyBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpCachePolicyWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpFileCollectionBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpPostedFileBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpPostedFileWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpRequestBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpResponseBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpServerUtilityBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpSessionStateBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpSessionStateWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Cache\IOutputCacheEntry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Cache\ResponseElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\BuildProviderAppliesTo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\BuildProviderAppliesToAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\DesignTimeResourceProviderFactoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\ExpressionEditorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\ExpressionPrefixAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesTo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesToAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\IAssemblyPostProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Compilation\IImplicitResourceProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AdapterDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AsyncPreloadModeFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AuthenticationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\AuthorizationRuleAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\BrowserCapsElementType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\BrowserTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomErrorsMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomErrorsRedirectMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\CustomWebEventKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\DelayedRegex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\FormsAuthPasswordFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\FormsProtectionEnum.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IConfigMapPath.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IConfigMapPathFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\IRemoteWebConfigurationHostServer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\MachineKeyCompatibilityMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\MachineKeyValidation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\PagesEnableSessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelComAuthenticationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelComImpersonationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProcessModelLogLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\ProfileGuidedOptimizationsFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RegexMatchTimeoutValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RegexMatchTimeoutValidatorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcAuthent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcImpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\RpcLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\SerializationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\SystemWebCachingSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\TicketCompatibilityMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\TraceDisplayMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\WebApplicationLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\WebLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Configuration\XhtmlConformanceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Hosting\IApplicationHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Hosting\IRegisteredObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHtmlString.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpAsyncHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpHandlerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\IHttpModule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ISubscriptionToken.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ITlsTokenBindingInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindingBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindingBehaviorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindNeverAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\BindRequiredAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ExtensibleModelBinderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\IModelNameProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelBinderProviderOptionsAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ModelBinding\ModelErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\PreApplicationStartMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\HttpProfileGroupBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\ProfileEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Profile\ProfileEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\ReadEntityBodyMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\RequestNotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\RequestNotificationStatus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\IRouteConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\IRouteHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RequestContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\RouteValueDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Routing\VirtualPathData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\AntiXss\CodeCharts.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\FormsAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\FormsAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\PassportAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\PassportAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\RoleManagerEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\RoleManagerEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\WindowsAuthenticationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Security\WindowsAuthenticationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\IReadOnlySessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\IRequiresSessionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\State\SessionStateBehavior.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ClientIDMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ConflictOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ConstructorNeedsTagAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ControlBuilderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\CssClassPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataBindingHandlerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataKeyPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceCacheExpiry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceCapabilities.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\DataSourceOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\FileLevelControlBuilderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\FilterableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\HtmlTextWriterTag.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IAttributeAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IAutoFieldGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IBindableControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IBindableTemplate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ICallbackEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IControlBuilderAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataBindingsAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataItemContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataKeysControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDataSourceViewSchemaAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IDReferencePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IExpressionsAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IFilterResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchicalDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchicalEnumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IHierarchyData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ImageClickEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INamingContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INavigateUIData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\INonBindingContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IParserAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IPostBackDataHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IPostBackEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IResourceUrlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IScriptResourceDefinition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IScriptResourceMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStateFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStateManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IStyleSheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ITemplate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IThemeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUrlResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUserControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IUserControlTypeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\IValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\NonVisualControlAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\PersistChildrenAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\PersistenceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\SupportsEventValidationAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TemplateInstance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TemplateInstanceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ThemeableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TraceContextEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\TraceContextEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\UnobtrusiveValidationMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ValidateRequestMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ViewStateEncryptionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\ViewStateMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\Adapters\WmlPostFieldType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AdCreatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AuthenticateEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AuthenticateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\AutoCompleteType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BorderStyle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BulletedListEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\BulletedListEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ButtonColumnType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ButtonType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CalendarSelectionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ContentDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CreateUserErrorEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\CreateUserErrorEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataBoundControlMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlCellType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlRowState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataControlRowType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DataListItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DayNameFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DayRenderEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewInsertedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewInsertEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewModeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewModeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\DetailsViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FirstDayOfWeek.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FontSize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewInsertedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewInsertEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewModeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewModeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\FormViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridLines.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewDeletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewDeleteEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewEditEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewEditEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewPageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewPageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewRowEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewRowEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSelectEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSelectEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSortEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewSortEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewUpdatedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\GridViewUpdateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\HorizontalAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\HotSpotMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IButtonControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ICallbackContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ICompositeControlDesignerAccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundItemControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IDataBoundListControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IFieldControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageMapEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ImageMapEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IPersistedSelector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\IRepeatInfoUser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ListItemType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ListSelectionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LiteralMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginCancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginCancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LoginFailureAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\LogoutAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MailMessageEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MailMessageEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MenuRenderingMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MonthChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\MonthChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\NextPrevFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\Orientation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerButtons.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PagerPosition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\PathDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeatDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeaterItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\RepeatLayout.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SendMailErrorEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ServerValidateEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SiteMapNodeItemType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SortDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableCaptionAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableHeaderScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TableRowSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TextAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TextBoxMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TitleFormat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeNodeSelectAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\TreeViewImageSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\UnitType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationCompareOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationDataType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidationSummaryDisplayMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\ValidatorDisplay.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\VerticalAlign.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebControls\WebColorConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\FieldCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ITrackingPersonalizable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ITransformerConfigurationControl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IVersioningPersonalizable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebActionable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebEditable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartField.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartHttpHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartRow.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\IWebPartTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\ParametersCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PartChromeState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PartChromeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\PersonalizationScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\RowCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\TableCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebBrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebDisplayNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartAuthorizationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartCancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartCancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartExportMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartHelpMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartVerbsEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UI\WebParts\WebPartVerbsEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UnvalidatedRequestValuesBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\UnvalidatedRequestValuesWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\IObjectFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\RequestValidationSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\Util\StringUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\WebSockets\AspNetWebSocketOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Web\WebSockets\SubprotocolUtil.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpApplicationStateBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpApplicationStateWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpBrowserCapabilitiesWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpCachePolicyBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpCachePolicyWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpFileCollectionBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpPostedFileBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpPostedFileWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpRequestBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpResponseBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpServerUtilityBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpSessionStateBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpSessionStateWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Abstractions\HttpStaticObjectsCollectionWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\IOutputCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\OutputCacheProviderCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Cache\ResponseElement.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\BuildProviderAppliesTo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\BuildProviderAppliesToAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\DesignTimeResourceProviderFactoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\ExpressionEditorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\ExpressionPrefixAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesTo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\FolderLevelBuildProviderAppliesToAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\IAssemblyPostProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Compilation\IImplicitResourceProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AdapterDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AsyncPreloadModeFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AuthenticationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\AuthorizationRuleAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\BrowserCapsElementType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\BrowserTree.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomErrorsMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomErrorsRedirectMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\CustomWebEventKey.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\DelayedRegex.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\FormsAuthPasswordFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\FormsProtectionEnum.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IConfigMapPath.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IConfigMapPathFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\Internal\IInternalConfigWebHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IRemoteWebConfigurationHostServer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\IServerConfig2.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\MachineKeyCompatibilityMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\MachineKeyValidation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\PagesEnableSessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelComAuthenticationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelComImpersonationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProcessModelLogLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\ProfileGuidedOptimizationsFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RegexMatchTimeoutValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RegexMatchTimeoutValidatorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcAuthent.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcImpers.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\RpcLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\SerializationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\SystemWebCachingSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\TicketCompatibilityMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\TraceDisplayMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\WebApplicationLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\WebLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Configuration\XhtmlConformanceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\AppDomainProtocolHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\HostingEnvironmentException.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\HTTP_COOKED_URL.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IApplicationHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomRuntime.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ICustomRuntimeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessHostPreloadClient.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessHostSupportFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessPingCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IProcessSuspendListener.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IQueueHost.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\IStopListeningRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Hosting\ISuspendibleRegisteredObject.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HtmlString.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HttpChannelBindingToken.cs" />\r
+    <Compile Include="..\referencesource\System.Web\HttpRawResponse.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHtmlString.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpAsyncHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpHandlerFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IHttpModule.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IntraPartitionAPIs\xsp\PerfCounterEnum.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IPrincipalContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\IRequestCompletedNotifier.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ISubscriptionToken.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ITlsTokenBindingInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Management\IInternalWebEventProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\misc\InvariantComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindingBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindingBehaviorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindNeverAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\BindRequiredAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\DictionaryHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ExtensibleModelBinderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IModelNameProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IUnvalidatedValueProviderSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IValueProvider.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\IValueProviderSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelBinderProviderOptionsAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelBindingExecutionContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelError.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ModelStateDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModelBinding\ValueProviderResult.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ModuleConfigurationInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\PreApplicationStartMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\DefaultHttpProfile.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\HttpProfileGroupBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileAuthenticationOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Profile\ProfileInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ReadEntityBodyMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\RequestNotification.cs" />\r
+    <Compile Include="..\referencesource\System.Web\RequestNotificationStatus.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\BoundUrl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ContentPathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\HttpMethodConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\IRouteConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\IRouteHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\LiteralSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PageRouteHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ParameterSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\ParsedRoute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\PathSubsegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RequestContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\Route.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteParser.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteTable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\RouteValueDictionary.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\SeparatorPathSegment.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\StopRoutingHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlAuthFailureHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlRoutingHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\UrlRoutingModule.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Routing\VirtualPathData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\AntiXss\CodeCharts.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\Cryptography\ICryptoService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\FormsAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\FormsAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\PassportAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\PassportAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\RoleManagerEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\RoleManagerEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\WindowsAuthenticationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Security\WindowsAuthenticationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\IReadOnlySessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\IRequiresSessionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\State\SessionStateBehavior.cs" />\r
+    <Compile Include="..\referencesource\System.Web\TaskWrapperAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ClientIDMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ConflictOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ConstructorNeedsTagAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ControlBuilderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\CssClassPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataBindingHandlerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataKeyPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceCacheExpiry.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceCapabilities.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\DataSourceOperation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\FileLevelControlBuilderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\FilterableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\HtmlTextWriterTag.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IAttributeAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IAutoFieldGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IBindableControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IBindableTemplate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ICallbackEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IControlBuilderAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataBindingsAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataItemContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataKeysControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDataSourceViewSchemaAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IDReferencePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IExpressionsAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IFilterResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchicalDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchicalEnumerable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IHierarchyData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ImageClickEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INamingContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INavigateUIData.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\INonBindingContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IParserAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IPostBackDataHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IPostBackEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IResourceUrlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IScriptResourceDefinition.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IScriptResourceMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStateFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStateManager.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IStyleSheet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ITemplate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IThemeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUpdatePanel.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUrlResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUserControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IUserControlTypeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\IValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\NonVisualControlAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\PersistChildrenAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\PersistenceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\SupportsEventValidationAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TemplateInstance.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TemplateInstanceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ThemeableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TraceContextEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\TraceContextEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\UnobtrusiveValidationMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ValidateRequestMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ViewStateEncryptionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\ViewStateMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\Adapters\WmlPostFieldType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AdCreatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AuthenticateEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AuthenticateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\AutoCompleteType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BorderStyle.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BulletedListEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\BulletedListEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ButtonColumnType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ButtonType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CalendarSelectionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CallingDataMethodsEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ContentDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CreateUserErrorEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\CreateUserErrorEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataBoundControlMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlCellType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlRowState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataControlRowType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridPageChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataGridSortCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DataListItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DayNameFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DayRenderEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewInsertedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewInsertEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewModeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewModeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\DetailsViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FirstDayOfWeek.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FontSize.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewInsertedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewInsertEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewModeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewModeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\FormViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridLines.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCancelEditEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewDeletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewDeleteEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewEditEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewEditEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewPageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewPageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewRowEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewRowEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSelectEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSelectEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSortEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewSortEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewUpdatedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\GridViewUpdateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\HorizontalAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\HotSpotMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IBorderPaddingControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IButtonControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICallbackContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICheckBoxControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ICompositeControlDesignerAccessor.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundItemControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IDataBoundListControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IEditableTextControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IFieldControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageMapEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ImageMapEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IPersistedSelector.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IPostBackContainer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IRenderOuterTableControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IRepeatInfoUser.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ITextControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\IWizardSideBarListControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ListItemType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ListSelectionMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LiteralMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginCancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginCancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LoginFailureAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\LogoutAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MailMessageEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MailMessageEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MenuRenderingMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MonthChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\MonthChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\NextPrevFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceDisposingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceFilteringEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceMethodEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceSelectingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ObjectDataSourceStatusEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\Orientation.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerButtons.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PagerPosition.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\PathDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeatDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeaterItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\RepeatLayout.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SendMailErrorEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ServerValidateEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SiteMapNodeItemType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SortDirection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceCommandType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceFilteringEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceSelectingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\SqlDataSourceStatusEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableCaptionAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableHeaderScope.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TableRowSection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TextAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TextBoxMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TitleFormat.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeNodeSelectAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\TreeViewImageSet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\UnitType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationCompareOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationDataType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidationSummaryDisplayMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\ValidatorDisplay.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\VerticalAlign.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WebColorConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WizardSideBarListControlItem.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebControls\WizardSideBarListControlItemEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\FieldCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ITrackingPersonalizable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ITransformerConfigurationControl.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IVersioningPersonalizable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebActionable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebEditable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPart.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartField.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartHttpHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartParameters.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartRow.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\IWebPartTable.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\ParametersCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PartChromeState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PartChromeType.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\PersonalizationScope.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\RowCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\TableCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebBrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebDisplayNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartAuthorizationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartCancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartCancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartExportMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartHelpMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartVerbsEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UI\WebParts\WebPartVerbsEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UnvalidatedRequestValuesBase.cs" />\r
+    <Compile Include="..\referencesource\System.Web\UnvalidatedRequestValuesWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AppVerifierErrorCode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AppVerifierException.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\AssemblyUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\BinaryCompatibility.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DateTimeUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DisposableAction.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\DoNotResetAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\EmptyCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\EnumerationRangeValidationUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ExceptionUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\FastDelegateCreator.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\GCUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\hresults.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\IObjectFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ISyncContext.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ISyncContextLock.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\Msec.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ObjectSet.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\OrderingMethodFinder.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\ParseHttpDate.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\PathUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\QueryableUtility.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\RegexUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\RequestValidationSource.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\Sec.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SimpleRecyclingCache.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\StringUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SymbolEqualComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\SynchronizationContextMode.cs" />\r
+    <Compile Include="..\referencesource\System.Web\Util\VersionUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\ValidateStringCallback.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSockets\AspNetWebSocketOptions.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSockets\SubprotocolUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSocketTransitionState.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDefaultValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Web\WebSysDisplayNameAttribute.cs" />\r
     <Compile Include="..\System.Design\System.Data.Design\TypedDataSetGenerator.cs" />\r
     <Compile Include="..\System.Windows.Forms\System.Resources\AssemblyNamesTypeResolutionService.cs" />\r
     <Compile Include="..\System.Windows.Forms\System.Resources\ByteArrayFromResXHandler.cs" />\r
     <Compile Include="System.Web.Caching\OutputCache.cs" />\r
     <Compile Include="System.Web.Caching\OutputCacheModule.cs" />\r
     <Compile Include="System.Web.Caching\OutputCacheProvider.cs" />\r
-    <Compile Include="System.Web.Caching\OutputCacheProviderCollection.cs" />\r
     <Compile Include="System.Web.Caching\SqlCacheDependency.cs" />\r
     <Compile Include="System.Web.Caching\SqlCacheDependencyAdmin.cs" />\r
     <Compile Include="System.Web.Caching\SubstitutionResponseElement.cs" />\r
     <Compile Include="System.Web.Compilation\WebServiceCompiler.cs" />\r
     <Compile Include="System.Web.Compilation\WsdlBuildProvider.cs" />\r
     <Compile Include="System.Web.Compilation\XsdBuildProvider.cs" />\r
-    <Compile Include="System.Web.Configuration.Internal\IInternalConfigWebHost.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\AnonymousIdentificationSection.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\ApplicationSettingsConfigurationFileMap.cs" />\r
     <Compile Include="System.Web.Configuration_2.0\AssemblyCollection.cs" />\r
     <Compile Include="System.Web.Management\WebEventCodes.cs" />\r
     <Compile Include="System.Web.Management\WebEventFormatter.cs" />\r
     <Compile Include="System.Web.Profile\CustomProviderDataAttribute.cs" />\r
-    <Compile Include="System.Web.Profile\DefaultProfile.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileAuthenticationOption.cs" />\r
     <Compile Include="System.Web.Profile\ProfileAutoSaveEventArgs.cs" />\r
     <Compile Include="System.Web.Profile\ProfileAutoSaveEventHandler.cs" />\r
     <Compile Include="System.Web.Profile\ProfileBase.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileInfo.cs" />\r
-    <Compile Include="System.Web.Profile\ProfileInfoCollection.cs" />\r
     <Compile Include="System.Web.Profile\ProfileManager.cs" />\r
     <Compile Include="System.Web.Profile\ProfileMigrateEventArgs.cs" />\r
     <Compile Include="System.Web.Profile\ProfileMigrateEventHandler.cs" />\r
     <Compile Include="System.Web.Profile\SqliteProfileProvider.cs" />\r
     <Compile Include="System.Web.Profile\SqlProfileProvider.cs" />\r
     <Compile Include="System.Web.Properties\TranslationProperties.Designer.cs" />\r
-    <Compile Include="System.Web.Routing\HttpMethodConstraint.cs" />\r
-    <Compile Include="System.Web.Routing\PageRouteHandler.cs" />\r
-    <Compile Include="System.Web.Routing\PatternParser.cs" />\r
-    <Compile Include="System.Web.Routing\PatternToken.cs" />\r
-    <Compile Include="System.Web.Routing\PatternTokenType.cs" />\r
-    <Compile Include="System.Web.Routing\Route.cs" />\r
-    <Compile Include="System.Web.Routing\RouteCollection.cs" />\r
-    <Compile Include="System.Web.Routing\RouteData.cs" />\r
-    <Compile Include="System.Web.Routing\RouteValueDictionaryExtensions.cs" />\r
-    <Compile Include="System.Web.Routing\StopRoutingHandler.cs" />\r
-    <Compile Include="System.Web.Routing\UrlRoutingHandler.cs" />\r
-    <Compile Include="System.Web.Routing\UrlRoutingModule.cs" />\r
     <Compile Include="System.Web.Security\ActiveDirectoryConnectionProtection.cs" />\r
     <Compile Include="System.Web.Security\ActiveDirectoryMembershipProvider.cs" />\r
     <Compile Include="System.Web.Security\AnonymousIdentificationEventArgs.cs" />\r
     <Compile Include="System.Web.UI.WebControls\ImageField.cs" />\r
     <Compile Include="System.Web.UI.WebControls\ImageMap.cs" />\r
     <Compile Include="System.Web.UI.WebControls\IMenuRenderer.cs" />\r
-    <Compile Include="System.Web.UI.WebControls\IPostBackContainer.cs" />\r
     <Compile Include="System.Web.UI.WebControls\IRenderOuterTable.cs" />\r
     <Compile Include="System.Web.UI.WebControls\Label.cs" />\r
     <Compile Include="System.Web.UI.WebControls\LabelControlBuilder.cs" />\r
     <Compile Include="System.Web.UI\Html32TextWriter.cs" />\r
     <Compile Include="System.Web.UI\HtmlControlPersistableAttribute.cs" />\r
     <Compile Include="System.Web.UI\HtmlTextWriter.cs" />\r
-    <Compile Include="System.Web.UI\ICheckBoxControl.cs" />\r
-    <Compile Include="System.Web.UI\IEditableTextControl.cs" />\r
     <Compile Include="System.Web.UI\IgnoreUnknownContentAttribute.cs" />\r
     <Compile Include="System.Web.UI\ImageClickEventArgs.cs" />\r
     <Compile Include="System.Web.UI\IndexedString.cs" />\r
     <Compile Include="System.Web.UI\IScriptManager.cs" />\r
     <Compile Include="System.Web.UI\ITagNameToTypeMapper.cs" />\r
-    <Compile Include="System.Web.UI\ITextControl.cs" />\r
     <Compile Include="System.Web.UI\ListSourceHelper.cs" />\r
     <Compile Include="System.Web.UI\LiteralControl.cs" />\r
     <Compile Include="System.Web.UI\LosFormatter.cs" />\r
     <Compile Include="System.Web.UI\UserControl.cs" />\r
     <Compile Include="System.Web.UI\UserControlControlBuilder.cs" />\r
     <Compile Include="System.Web.UI\UserControlParser.cs" />\r
+    <Compile Include="System.Web.UI\Util.cs" />\r
     <Compile Include="System.Web.UI\ValidationPropertyAttribute.cs" />\r
     <Compile Include="System.Web.UI\ValidatorCollection.cs" />\r
     <Compile Include="System.Web.UI\VerificationAttribute.cs" />\r
     <Compile Include="System.Web\ExceptionPageTemplateValues.cs" />\r
     <Compile Include="System.Web\HeadersCollection.cs" />\r
     <Compile Include="System.Web\HtmlizedException.cs" />\r
-    <Compile Include="System.Web\HtmlString.cs" />\r
     <Compile Include="System.Web\HttpApplication.cs" />\r
     <Compile Include="System.Web\HttpApplicationFactory.cs" />\r
     <Compile Include="System.Web\HttpApplicationState.cs" />\r
     <Compile Include="System.Web\WebCategoryAttribute.cs" />\r
     <Compile Include="System.Web\WebPageTraceListener.cs" />\r
     <Compile Include="System.Web\WebROCollection.cs" />\r
-    <Compile Include="System.Web\WebSysDescriptionAttribute.cs" />\r
     <Compile Include="System.Web\XmlSiteMapProvider.cs" />\r
     <Compile Include="System.Web\UplevelHelper.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+mono $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
-      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
-      <Name>System.Configuration-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj">\r
-      <Project>{371560EA-7BD3-4025-90CB-F1B112403CF2}</Project>\r
-      <Name>Mono.Data.Sqlite-net_4_x</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
-      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
-      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System/System-net_4_x.csproj">\r
       <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
       <Name>System-net_4_x</Name>\r
       <Project>{8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}</Project>\r
       <Name>System.ComponentModel.DataAnnotations-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj">\r
+      <Project>{928432BE-3518-4103-97F6-48B9658588A6}</Project>\r
+      <Name>System.Web.ApplicationServices-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj">\r
+      <Project>{371560EA-7BD3-4025-90CB-F1B112403CF2}</Project>\r
+      <Name>Mono.Data.Sqlite-net_4_x</Name>\r
+    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
   </ItemGroup>\r
   <ItemGroup>\r
-    <EmbeddedResource Include="resources/TranslationResources.resources">\r
-      <LogicalName>TranslationResources.resources</LogicalName>\r
-    </EmbeddedResource>\r
     <EmbeddedResource Include="resources/WebUIValidation.js">\r
       <LogicalName>WebUIValidation.js</LogicalName>\r
     </EmbeddedResource>\r
     <EmbeddedResource Include="System.Web.UI.WebControls/MenuModern.js">\r
       <LogicalName>MenuModern.js</LogicalName>\r
     </EmbeddedResource>\r
+    <EmbeddedResource Include="resources/TranslationResources.resx">\r
+      <LogicalName>TranslationResources.resources</LogicalName>\r
+    </EmbeddedResource>\r
   </ItemGroup>\r
 </Project>\r
 
index 491d74f6c4d49884b7a72f0fe70695f6c068871e..651d8bf4c8567faeb4c5f292958a398caaac8ae5 100644 (file)
@@ -212,21 +212,18 @@ namespace System.Web.Security
                                strCookiePath = cookiePath;
 
                        DateTime now = DateTime.Now;
-                       DateTime then;
-                       if (createPersistentCookie)
-                               then = now.AddMinutes(timeout);
-                       else
-                               then = DateTime.MinValue;
+                       DateTime ticketExpiry = now.AddMinutes(timeout);
+                       DateTime cookieExpiry = createPersistentCookie ? ticketExpiry : DateTime.MinValue;
 
                        FormsAuthenticationTicket ticket = new FormsAuthenticationTicket (1,
                                                                                          userName,
                                                                                          now,
-                                              createPersistentCookie?then:now.AddYears (50),
+                                                                                         ticketExpiry,
                                                                                          createPersistentCookie,
                                                                                          String.Empty,
                                                                                          cookiePath);
 
-                       HttpCookie cookie = new HttpCookie (cookieName, Encrypt (ticket), strCookiePath, then);
+                       HttpCookie cookie = new HttpCookie (cookieName, Encrypt (ticket), strCookiePath, cookieExpiry);
                        if (requireSSL)
                                cookie.Secure = true;
                        if (!String.IsNullOrEmpty (cookie_domain))
index 4536dedf18a95a2e03479b6b71debbe4364d4b9d..c0e9516a945486b61ca3afdb3d3bb5ba713cb260 100644 (file)
@@ -284,7 +284,7 @@ namespace System.Web.UI.WebControls {
                }
 
                [Browsable (true)]
-               public virtual new string SkinID
+               public override string SkinID
                {
                        get { return base.SkinID; }
                        set { base.SkinID = value; }
index 5d47c27349ac207e929d59d4c762dddb2d68e77f..5f47d1326e0492f954a5b5b24f7965ac92264265 100644 (file)
@@ -24,7 +24,6 @@ Mono.Web.Util/SettingsMapping.cs
 Mono.Web.Util/SettingsMappingManager.cs
 Mono.Web.Util/SettingsMappingWhat.cs
 
-ReferenceSources/SR.cs
 System.Web/ApplicationShutdownReason.cs
 System.Web/BeginEventHandler.cs
 System.Web.Caching/AggregateCacheDependency.cs
@@ -629,7 +628,6 @@ System.Web.UI/HtmlTextWriter.cs
 ../referencesource/System.Web/UI/IDataSource.cs
 ../referencesource/System.Web/UI/IDataSourceViewSchemaAccessor.cs
 ../referencesource/System.Web/UI/IDReferencePropertyAttribute.cs
-../referencesource/System.Web/UI/WebControls/IEditableTextControl.cs
 ../referencesource/System.Web/UI/IExpressionsAccessor.cs
 ../referencesource/System.Web/UI/IFilterResolutionService.cs
 System.Web.UI/IgnoreUnknownContentAttribute.cs
index 50d6266a2843ff87726d43b6f48be18f41e82f95..9064929de012eb685ebf71f8563c19b332e3c076 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 7d98c83d48661882dbb9de9ddfd3565a5b81c04a..c1e931e0a9b631f15f767dc754ddaefec8e4bd9b 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618,612,809</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     <EmbeddedResource Include="resources/DnDMove.cur">\r
       <LogicalName>System.Windows.Forms.DnDMove.cur</LogicalName>\r
     </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/keyboards.resources">\r
+    <EmbeddedResource Include="resources/keyboards.resources.prebuilt">\r
       <LogicalName>keyboards.resources</LogicalName>\r
     </EmbeddedResource>\r
     <EmbeddedResource Include="resources/16_computer.png">\r
index 2c2d5bf931d3f08343f4a39947239bc0adacce93..e4f980e60df8a82c6a80b770f933bdea8f0f7be2 100644 (file)
@@ -969,8 +969,8 @@ namespace System.Windows.Forms
 
                                EnableFormsForModalLoop (toplevels, context);
                                
-                               if (context.MainForm != null && context.MainForm.IsHandleCreated) {
-                                       XplatUI.SetModal (context.MainForm.Handle, false);
+                               if (old != null && old.IsHandleCreated) {
+                                       XplatUI.SetModal (old.Handle, false);
                                }
                                #if DebugRunLoop
                                        Console.WriteLine ("   Done with the SetModal");
index 913fb8a57fb721c4148d43e6f575333e943842a6..a8f92d12389c7295755fe15cb5e75d14da12c64b 100644 (file)
@@ -2842,7 +2842,7 @@ namespace System.Windows.Forms {
                                        try {
                                                var clipboardAtom = gdk_atom_intern ("CLIPBOARD", true);
                                                var clipboard = gtk_clipboard_get (clipboardAtom);
-                                               if (clipboard != null) {
+                                               if (clipboard != IntPtr.Zero) {
                                                        // for now we only store text
                                                        var text = Clipboard.GetRtfText ();
                                                        if (string.IsNullOrEmpty (text))
index 7f472f0ea8a797f027c6c4f3c3ed0874c032d251..59ba68253f7678d90e83373cafbee8397a1bced5 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.Workflow.Activities/System.Workflow.Activities-net_4_x.csproj b/mcs/class/System.Workflow.Activities/System.Workflow.Activities-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c428527
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{29FCE500-BC83-4BF0-AED0-4E96932182F7}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Workflow.Activities</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../winfx.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/System.Workflow.ComponentModel/System.Workflow.ComponentModel-net_4_x.csproj b/mcs/class/System.Workflow.ComponentModel/System.Workflow.ComponentModel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..32d268a
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3424BA74-B0AE-4C5E-A2C6-6FF86369D510}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Workflow.ComponentModel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../winfx.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/System.Workflow.Runtime/System.Workflow.Runtime-net_4_x.csproj b/mcs/class/System.Workflow.Runtime/System.Workflow.Runtime-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ecceeff
--- /dev/null
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E4180397-83B3-4F7B-9878-6891698F7C52}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>System.Workflow.Runtime</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+    <DelaySign>true</DelaySign>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../winfx.pub</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/class/System.XML/System.Xml-bare-build.csproj b/mcs/class/System.XML/System.Xml-bare-build.csproj
deleted file mode 100644 (file)
index 7f37348..0000000
+++ /dev/null
@@ -1,486 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{8C65BF8D-256A-44B0-BF9A-8052C075DC31}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <OutputPath>./../../class/lib/build/bare</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    \r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Xml</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XmlSchemaValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityPath.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdKeyTable.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdParticleValidationState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdWildcard.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\IdPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\KeyPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\LocationPathPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\Pattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\UnionPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathEditableDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathNavigatorReader.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyImports.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyTemplates.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAttribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAvt.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCallTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslChoose.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslComment.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCompiledElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopy.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopyOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslFallback.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslForEach.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslIf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslLiteralElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslMessage.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNotSupportedOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNumber.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslProcessingInstruction.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslTemplateContent.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslText.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslValueOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslVariable.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Attribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Compiler.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Debug.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Emitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\GenericOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\HtmlEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\MSXslScriptManager.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Outputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\ScriptCompilerInfo.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XmlWriterEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslAttributeSet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslDecimalFormat.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslFunctions.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslKey.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslOutput.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslSortEvaluator.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslStylesheet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltCompiledContext.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltDebuggerWrapper.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTransformProcessor.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlParserContext.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlSchemaInfo.cs" />\r
-    <Compile Include="Mono.Xml\SubtreeXmlReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlFilterReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlNodeWriter.cs" />\r
-    <Compile Include="System.Xml.Schema\BuiltInDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\IXmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\SchemaDataValueType.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationEventArgs.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationHandler.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlAtomicValue.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchema.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAll.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotated.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAny.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnyAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAppInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaChoice.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollectionEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCompilationSettings.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentModel.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentProcessing.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatypeVariety.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDerivationMethod.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDocumentation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaElement.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaEnumerationFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaExternal.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaForm.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFractionDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupBase.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaIdentityConstraint.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaImport.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInclude.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInference.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInferenceException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKey.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKeyref.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNumericFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObject.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectTable.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaParticle.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaPatternFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaReader.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaRedefine.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSequence.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSerializer.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeList.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeUnion.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaTotalDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUnique.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUse.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUtil.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationFlags.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidity.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaWhiteSpaceFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaXPath.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSeverityType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlTypeCode.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueConverter.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueGetter.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtension.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtensionCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\DateTimeSerializationSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElement.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElementCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionsSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\XmlSerializerSection.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeGenerationOptions.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifier.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifiers.cs" />\r
-    <Compile Include="System.Xml.Serialization\ImportContext.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlSerializable.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlTextParser.cs" />\r
-    <Compile Include="System.Xml.Serialization\KeyHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\MapCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\ReflectionHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaTypes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGeneratorConfiguration.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationSource.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeData.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeTranslator.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlChoiceIdentifierAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCustomFormatter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlDeserializationEvents.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMappingAccess.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMemberMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMembersMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlRootAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaEnumerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaProviderAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemas.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationCollectionFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationGeneratedCode.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReadCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReader.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReaderInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriteCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriterInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializer.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerAssemblyAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerFactory.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerImplementation.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerVersionAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTextAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapElementInfo.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberElement.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapping.cs" />\r
-    <Compile Include="System.Xml.XPath\DefaultContext.cs" />\r
-    <Compile Include="System.Xml.XPath\Expression.cs" />\r
-    <Compile Include="System.Xml.XPath\Iterator.cs" />\r
-    <Compile Include="System.Xml.XPath\IXPathNavigable.cs" />\r
-    <Compile Include="System.Xml.XPath\Tokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlCaseOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlDataType.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlSortOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathComparer.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathDocument.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathException.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathExpression.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathItem.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNamespaceScope.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNavigator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeIterator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeType.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathResultType.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextFunction.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextVariable.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslCompiledTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltArgumentList.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltCompileException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltContext.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventArgs.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventHandler.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltSettings.cs" />\r
-    <Compile Include="System.Xml\ConformanceLevel.cs" />\r
-    <Compile Include="System.Xml\DefaultXmlWriter.cs" />\r
-    <Compile Include="System.Xml\DTDAutomata.cs" />\r
-    <Compile Include="System.Xml\DTDObjectModel.cs" />\r
-    <Compile Include="System.Xml\DtdProcessing.cs" />\r
-    <Compile Include="System.Xml\DTDReader.cs" />\r
-    <Compile Include="System.Xml\DTDValidatingReader2.cs" />\r
-    <Compile Include="System.Xml\EntityHandling.cs" />\r
-    <Compile Include="System.Xml\EntityResolvingXmlReader.cs" />\r
-    <Compile Include="System.Xml\Formatting.cs" />\r
-    <Compile Include="System.Xml\IHasXmlChildNode.cs" />\r
-    <Compile Include="System.Xml\IHasXmlNode.cs" />\r
-    <Compile Include="System.Xml\IXmlLineInfo.cs" />\r
-    <Compile Include="System.Xml\IXmlNamespaceResolver.cs" />\r
-    <Compile Include="System.Xml\MonoFIXAttribute.cs" />\r
-    <Compile Include="System.Xml\NamespaceHandling.cs" />\r
-    <Compile Include="System.Xml\NameTable.cs" />\r
-    <Compile Include="System.Xml\NewLineHandling.cs" />\r
-    <Compile Include="System.Xml\ReadState.cs" />\r
-    <Compile Include="System.Xml\ValidationType.cs" />\r
-    <Compile Include="System.Xml\WhitespaceHandling.cs" />\r
-    <Compile Include="System.Xml\WriteState.cs" />\r
-    <Compile Include="System.Xml\XmlAttribute.cs" />\r
-    <Compile Include="System.Xml\XmlAttributeCollection.cs" />\r
-    <Compile Include="System.Xml\XmlCDataSection.cs" />\r
-    <Compile Include="System.Xml\XmlChar.cs" />\r
-    <Compile Include="System.Xml\XmlCharacterData.cs" />\r
-    <Compile Include="System.Xml\XmlComment.cs" />\r
-    <Compile Include="System.Xml\XmlConstructs.cs" />\r
-    <Compile Include="System.Xml\XmlConvert.cs" />\r
-    <Compile Include="System.Xml\XmlDateTimeSerializationMode.cs" />\r
-    <Compile Include="System.Xml\XmlDeclaration.cs" />\r
-    <Compile Include="System.Xml\XmlDocument.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentFragment.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentNavigator.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentType.cs" />\r
-    <Compile Include="System.Xml\XmlElement.cs" />\r
-    <Compile Include="System.Xml\XmlEntity.cs" />\r
-    <Compile Include="System.Xml\XmlEntityReference.cs" />\r
-    <Compile Include="System.Xml\XmlException.cs" />\r
-    <Compile Include="System.Xml\XmlImplementation.cs" />\r
-    <Compile Include="System.Xml\XmlInputStream.cs" />\r
-    <Compile Include="System.Xml\XmlIteratorNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlLinkedNode.cs" />\r
-    <Compile Include="System.Xml\XmlNamedNodeMap.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntry.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntryCache.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceManager.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceScope.cs" />\r
-    <Compile Include="System.Xml\XmlNameTable.cs" />\r
-    <Compile Include="System.Xml\XmlNode.cs" />\r
-    <Compile Include="System.Xml\XmlNodeArrayList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedAction.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventArgs.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventHandler.cs" />\r
-    <Compile Include="System.Xml\XmlNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeListChildren.cs" />\r
-    <Compile Include="System.Xml\XmlNodeOrder.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReader2.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReaderImpl.cs" />\r
-    <Compile Include="System.Xml\XmlNodeType.cs" />\r
-    <Compile Include="System.Xml\XmlNotation.cs" />\r
-    <Compile Include="System.Xml\XmlOutputMethod.cs" />\r
-    <Compile Include="System.Xml\XmlParserContext.cs" />\r
-    <Compile Include="System.Xml\XmlParserInput.cs" />\r
-    <Compile Include="System.Xml\XmlProcessingInstruction.cs" />\r
-    <Compile Include="System.Xml\XmlQualifiedName.cs" />\r
-    <Compile Include="System.Xml\XmlReader.cs" />\r
-    <Compile Include="System.Xml\XmlReaderBinarySupport.cs" />\r
-    <Compile Include="System.Xml\XmlReaderSettings.cs" />\r
-    <Compile Include="System.Xml\XmlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSecureResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSignificantWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlSpace.cs" />\r
-    <Compile Include="System.Xml\XmlText.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader2.cs" />\r
-    <Compile Include="System.Xml\XmlTextWriter2.cs" />\r
-    <Compile Include="System.Xml\XmlTokenizedType.cs" />\r
-    <Compile Include="System.Xml\XmlUrlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlValidatingReader.cs" />\r
-    <Compile Include="System.Xml\XmlWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlWriter.cs" />\r
-    <Compile Include="System.Xml\XmlWriterSettings.cs" />\r
-    <Compile Include="System.Xml\XQueryConvert.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\build_PatternParser.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\build_PatternTokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\Parser.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-mono $(ProjectDir)\..\..\..\msvc\scripts\prepare.exe $(ProjectDir)..\.. xml\r
-$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\System.Xml.XPath\Parser.jay > $(ProjectDir)\System.Xml.XPath\Parser.cs\r
-echo "#define XSLT_PATTERN" > $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Mono.Xml.Xsl\PatternParser.jay >> $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-echo "#define XSLT_PATTERN" > $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-cat $(ProjectDir)\System.Xml.XPath\Tokenizer.cs >> $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-\r
-    </PreBuildEvent>
-    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
- $(ProjectDir)\..\..\..\msvc\scripts\prepare.exe $(ProjectDir)..\.. xml\r
-$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\System.Xml.XPath\Parser.jay > $(ProjectDir)\System.Xml.XPath\Parser.cs\r
-echo "#define XSLT_PATTERN" > $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Mono.Xml.Xsl\PatternParser.jay >> $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-echo "#define XSLT_PATTERN" > $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-type $(ProjectDir)\System.Xml.XPath\Tokenizer.cs >> $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-\r
-    </PreBuildEvent>
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="../corlib/corlib-build.csproj">\r
-      <Project>{0CAF787F-F70B-4556-987A-67E036CD71C1}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System/System-bare-build.csproj">\r
-      <Project>{6E4F4BFB-2900-4663-B922-F176B2358C12}</Project>\r
-      <Name>System\System-bare-build</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index 07e626b09335305faff46edd89e8b680498a763e..7eacb3ddd76186652336c001a6d305daf646eb96 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,219,414,649,1717</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/bare</OutputPath>\r
+    <IntermediateOutputPath>obj-bare</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\GenerateHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\IteratorDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\OptimizerPatterns.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\StaticDataManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\TailCallAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILAnnotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILConstructAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILModule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimization.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimizerVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTypeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\ISourceLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\ListBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Pair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilBinary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilChoice.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilCloneVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvoke.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeEarlyBound.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeLateBound.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLiteral.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLoop.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReplaceVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilScopedVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilSortKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilStrConcat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTargetType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTernary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTypeChecker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilUnary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilValidationVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SerializationHints.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SubstitutionList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\WhitespaceRule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QueryReaderSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\ContentIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DecimalFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DocumentOrderComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DodSequenceMerge.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\EarlyBoundInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\NumberFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\RtfNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SetIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SiblingIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\StringConcat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\TreeIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAggregates.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAttributeCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlCollation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlExtensionFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILIndex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILStorageConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryRuntime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQuerySequence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryStaticData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlRawWriterWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSequenceWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKeyAccumulator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XslNumber.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltLibrary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\SourceLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlILCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlIlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlNodeKindFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQualifiedNameTest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryCardinality.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryTypeFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXpathBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXPathEnvironment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathAxis.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathCompileException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathQilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathScanner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPathConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XslException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\CompilerScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Focus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\IErrorHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\InvokeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\KeyMatchBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Keywords.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\MatcherBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\OutputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGeneratorEnv.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilStrConcatenator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Scripts.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Stylesheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAst.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAstAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltInput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltQilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ActionFrame.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyImportsAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyTemplatesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeSetAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Avt.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AvtEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BeginEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BuilderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CallTemplateAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ChooseAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CommentAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CompiledAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ContainerAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAttributesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyCodeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNamespacesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNodesetAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyOfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DbgCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DocumentScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ElementAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\EndEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Event.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ForeachAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\HtmlProps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\IfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\MessageAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceDecl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorInput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NewInstructionAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NumberAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutKeywords.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\PrefixQname.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ProcessingInstructionAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Processor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ReaderOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RootAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SequentialOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SortAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StateMachine.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StringOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Stylesheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateBaseAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateLookupAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Templatemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOnlyOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TheQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\UseAttributesetsAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ValueOfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\VariableAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WithParamAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WriterOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltCompileContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltDebugger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\InternalApis\NDP_Common\inc\Win8Helpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\HResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\InvariantComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Assembly\System.Xml.Assembly.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\AsyncHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64Decoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64Encoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64EncoderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\BinXmltoken.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\SqlUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexDecoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexEncoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexEncoderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Bits.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BitStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\ByteStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\Shape.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\ShapeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeInfoAtom.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeViewPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\BinaryCompatibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\CharEntityEncoderFallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ConformanceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\DtdProcessing.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\EntityHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlTernaryTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IncrementalReadDecoders.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IRemovableWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IValidationEventHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\NamespaceHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\NewLineHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\QueryOutputWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\QueryOutputWriterV1.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelperAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadOnlyTernaryTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\SecureStringHasher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\TextEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\TextUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ValidatingReaderNodeData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ValidationType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\WhitespaceHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAutoDetectWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlConfiguration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEventCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlParserContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlRawWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlRawWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReaderSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSpace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextEncoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImpl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpersAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImpl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImplAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpersAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriterSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdCachingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdCachingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdValidatingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdValidatingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\DiagnosticsSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentSchemaValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentXmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentXPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DomNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlAttributeCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlCDataSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlCharacterData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlChildEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlChildNodes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlComment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocumentFragment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocumentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDomTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlElementList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEntity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEntityReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEventChangedAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlImplementation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlLinkedNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodemap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodeMap.SmallXmlNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlProcessingInstruction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlSignificantWhiteSpace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlText.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlUnspecifiedAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlWhitespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XPathNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\EmptyEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\HWStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IApplicationResourceStreamResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IHasXmlNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IXmlLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IXmlNamespaceResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\LineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\MTNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\NameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Ref.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlKnownDtds.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Asttree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\AutoValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BaseProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BaseValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BitSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Chameleonkey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\CompiledidEntityConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ConstraintStruct.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ContentValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DataTypeImplementation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\FacetChecker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Inference\Infer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Inference\XmlSchemaInferenceException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\IXmlSchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\NamespaceList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Parser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Preprocessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaAttDef.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionpreProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaDeclBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaElementDecl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaEntity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNamespacemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaSetCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XdrBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XdrValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlAtomicValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAll.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotated.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAny.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAppInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroupref.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaChoice.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCompilationSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentModel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentProcessing.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDataType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDerivationMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDocumentation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaExternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaFacet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaForm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupRef.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaIdEntityConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInclude.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaParticle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaRedefine.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSequence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeUnion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSubstitutionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaUse.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidationException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSeverityType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlTokenizedType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlTypeCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlValueConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdDuration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\_Events.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Advanced\SchemaImporterExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\AppSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeGenerationoptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifiers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Compilation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\ConfigurationStrings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\DateTimeSerializationSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\XmlSerializerSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\ImportContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\indentedWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\IXmlSerializable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\IXmlTextParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Mappings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Models.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\NameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\PrimitiveXmlSerializers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SchemaObjectWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeOverrides.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapCodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapEnumAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapIgnoreAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapIncludeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapReflectionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemamember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SourceInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\TypeExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Types.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeOverrides.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlChoiceIdentifierAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlCodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlCountingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Xmlcustomformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlEnumAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlIgnoreAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlIncludeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMemberMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMembersMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlRootAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemas.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationGeneratedCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReaderILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriterILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerAssemblyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerNamespaces.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerVersionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTextAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\ValidateNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlCharType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlComplianceUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlDownloadManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlDownloadManagerAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNamespacemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNamespaceScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNodeOrder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNullResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlQualifiedName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlReservedNs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlSecureResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlSecureResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlUrlResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlUrlResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlXapResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AbsoluteQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AstNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AttributeQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Axis.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BaseAxisQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheAxisQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheChildrenQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheOutputQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ChildrenQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ClonableStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CompiledXPathExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ContextQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantBaseQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantoverDescendantQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DocumentorderQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\EmptyQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ExtensionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Filter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FilterQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingSibling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ForwardPositionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Function.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FunctionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Group.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\GroupQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\IdQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\IteratorFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\LogicalExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\MergeFilterQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NamespaceQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NodeFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NumberFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NumericExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Operand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\OperandQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Operator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ParentQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingSibling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Query.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\QueryBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ResetableIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ReversePositionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Root.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\SortQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\StringFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\UnionExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ValueQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Variable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\VariableQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathArrayIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAxisIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathChildIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathDescendantIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathEmptyIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathMultyIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathScanner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelectionIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelfQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSingletonIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\IXPathNavigable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNamespaceScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorKeyComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNodeIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XslCompiledTransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltArgumentList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XslTransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltSettings.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\GenerateHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\IteratorDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\OptimizerPatterns.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\StaticDataManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\TailCallAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILAnnotation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILConstructAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILModule.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimization.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimizerVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTrace.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTypeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\ISourceLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\ListBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Pair.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilBinary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilChoice.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilCloneVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvoke.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeEarlyBound.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeLateBound.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLiteral.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLoop.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilName.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReference.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReplaceVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilScopedVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilSortKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilStrConcat.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTargetType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTernary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTypeChecker.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilUnary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilValidationVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SerializationHints.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SubstitutionList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\WhitespaceRule.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QueryReaderSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\ContentIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DecimalFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DocumentOrderComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DodSequenceMerge.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\EarlyBoundInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\NumberFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\RtfNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SetIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SiblingIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\StringConcat.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\TreeIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAggregates.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAttributeCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlCollation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlExtensionFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILIndex.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILStorageConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorStack.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryRuntime.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQuerySequence.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryStaticData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlRawWriterWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSequenceWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKeyAccumulator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XslNumber.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltLibrary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\SourceLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlILCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlIlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlNodeKindFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQualifiedNameTest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryCardinality.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryTypeFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXpathBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXPathEnvironment.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathAxis.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathCompileException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathQilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathScanner.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPathConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XslException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\CompilerScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Focus.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\IErrorHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\InvokeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\KeyMatchBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Keywords.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\MatcherBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\OutputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGeneratorEnv.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilStrConcatenator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Scripts.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Stylesheet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAst.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAstAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltInput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltQilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Action.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ActionFrame.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyImportsAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyTemplatesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeSetAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Avt.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AvtEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BeginEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BuilderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CallTemplateAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ChooseAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CommentAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CompiledAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ContainerAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAttributesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyCodeAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNamespacesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNodesetAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyOfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DbgCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DocumentScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ElementAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\EndEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Event.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ForeachAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\HtmlProps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\IfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\MessageAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceDecl.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorInput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NewInstructionAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NumberAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutKeywords.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\PrefixQname.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ProcessingInstructionAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Processor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ReaderOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RootAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SequentialOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SortAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StateMachine.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StringOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Stylesheet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateBaseAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateLookupAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Templatemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOnlyOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TheQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\UseAttributesetsAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ValueOfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\VariableAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WithParamAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WriterOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltCompileContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltDebugger.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\InternalApis\NDP_Common\inc\Win8Helpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\HResults.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\InvariantComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Assembly\System.Xml.Assembly.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\AsyncHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64Decoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64Encoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64EncoderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\BinXmltoken.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\SqlUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexDecoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexEncoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexEncoderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Bits.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BitStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\ByteStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\Shape.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\ShapeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentView.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeInfoAtom.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeView.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeViewPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\BinaryCompatibility.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\CharEntityEncoderFallback.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ConformanceLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\DtdProcessing.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\EntityHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlTernaryTree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IncrementalReadDecoders.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IRemovableWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IValidationEventHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\NamespaceHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\NewLineHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\QueryOutputWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\QueryOutputWriterV1.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelperAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadOnlyTernaryTree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadState.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\SecureStringHasher.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\TextEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\TextUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ValidatingReaderNodeData.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ValidationType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\WhitespaceHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAutoDetectWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlConfiguration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEventCache.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlParserContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlRawWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlRawWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReaderSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSpace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextEncoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImpl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpersAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImpl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImplAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpersAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriterSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdCachingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdCachingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdValidatingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdValidatingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\DiagnosticsSwitches.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentSchemaValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentXmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentXPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DomNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlAttributeCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlCDataSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlCharacterData.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlChildEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlChildNodes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlComment.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocumentFragment.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocumentType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDomTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlElementList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEntity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEntityReference.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEventChangedAction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlImplementation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlLinkedNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlName.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodemap.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodeMap.SmallXmlNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlProcessingInstruction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlSignificantWhiteSpace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlText.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlUnspecifiedAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlWhitespace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XPathNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\EmptyEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\HWStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IApplicationResourceStreamResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IHasXmlNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IXmlLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IXmlNamespaceResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\LineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\MTNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\NameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Ref.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlKnownDtds.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Asttree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\AutoValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BaseProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BaseValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BitSet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Chameleonkey.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\CompiledidEntityConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ConstraintStruct.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ContentValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DataTypeImplementation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\FacetChecker.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Inference\Infer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Inference\XmlSchemaInferenceException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\IXmlSchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\NamespaceList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Parser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Preprocessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaAttDef.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionpreProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaDeclBase.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaElementDecl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaEntity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNames.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNamespacemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaSetCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationState.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XdrBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XdrValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlAtomicValue.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAll.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotated.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAny.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAppInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroupref.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaChoice.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCompilationSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentModel.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentProcessing.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDataType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDerivationMethod.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDocumentation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaExternal.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaFacet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaForm.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupBase.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupRef.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaIdEntityConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaImport.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInclude.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObject.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaParticle.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaRedefine.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSequence.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeUnion.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSubstitutionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaUse.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidationException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSeverityType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlTokenizedType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlTypeCode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlValueConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdDateTime.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdDuration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\_Events.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Advanced\SchemaImporterExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\AppSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeGenerationoptions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifier.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifiers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Compilation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\ConfigurationStrings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\DateTimeSerializationSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionsSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SerializationSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\XmlSerializerSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\ImportContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\indentedWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\IXmlSerializable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\IXmlTextParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Mappings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Models.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\NameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\PrimitiveXmlSerializers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SchemaObjectWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeOverrides.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapCodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapEnumAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapIgnoreAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapIncludeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapReflectionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemamember.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SourceInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\TypeExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Types.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeOverrides.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlChoiceIdentifierAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlCodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlCountingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Xmlcustomformatter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlEnumAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlIgnoreAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlIncludeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMemberMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMembersMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionMember.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlRootAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemas.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationGeneratedCode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReaderILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriterILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerAssemblyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerNamespaces.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerVersionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTextAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\ValidateNames.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlCharType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlComplianceUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlDownloadManager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlDownloadManagerAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlEncoding.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNamespacemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNamespaceScope.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNodeOrder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNullResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlQualifiedName.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlReservedNs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlSecureResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlSecureResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlUrlResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlUrlResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlXapResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AbsoluteQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AstNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AttributeQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Axis.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BaseAxisQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheAxisQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheChildrenQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheOutputQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ChildrenQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ClonableStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CompiledXPathExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ContextQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantBaseQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantoverDescendantQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DocumentorderQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\EmptyQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ExtensionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Filter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FilterQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingSibling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ForwardPositionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Function.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FunctionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Group.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\GroupQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\IdQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\IteratorFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\LogicalExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\MergeFilterQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NamespaceQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NodeFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NumberFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NumericExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Operand.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\OperandQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Operator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ParentQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingSibling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Query.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\QueryBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ResetableIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ReversePositionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Root.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\SortQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\StringFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\UnionExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ValueQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Variable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\VariableQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathArrayIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAxisIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathChildIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathDescendantIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathEmptyIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathMultyIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathScanner.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelectionIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelfQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSingletonIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\IXPathNavigable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathItem.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNamespaceScope.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorKeyComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNodeIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XslCompiledTransform.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltArgumentList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XslTransform.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltSettings.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\LocalAppContextSwitches.cs" />\r
     <Compile Include="ReferenceSources\Res.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System.XML/System.Xml-basic.csproj b/mcs/class/System.XML/System.Xml-basic.csproj
deleted file mode 100644 (file)
index 1d8e23f..0000000
+++ /dev/null
@@ -1,476 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{06F3B5C3-F72F-4F26-8479-AA29015E0CCA}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <OutputPath>./../../class/lib/basic</OutputPath>\r
-    <NoStdLib>False</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    \r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Xml</AssemblyName>\r
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XmlSchemaValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityPath.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdKeyTable.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdParticleValidationState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdWildcard.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\IdPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\KeyPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\LocationPathPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\Pattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\UnionPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathEditableDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathNavigatorReader.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyImports.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyTemplates.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAttribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAvt.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCallTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslChoose.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslComment.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCompiledElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopy.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopyOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslFallback.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslForEach.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslIf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslLiteralElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslMessage.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNotSupportedOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNumber.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslProcessingInstruction.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslTemplateContent.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslText.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslValueOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslVariable.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Attribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Compiler.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Debug.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Emitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\GenericOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\HtmlEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\MSXslScriptManager.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Outputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\ScriptCompilerInfo.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XmlWriterEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslAttributeSet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslDecimalFormat.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslFunctions.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslKey.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslOutput.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslSortEvaluator.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslStylesheet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltCompiledContext.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltDebuggerWrapper.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTransformProcessor.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlParserContext.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlSchemaInfo.cs" />\r
-    <Compile Include="Mono.Xml\SubtreeXmlReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlFilterReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlNodeWriter.cs" />\r
-    <Compile Include="System.Xml.Schema\BuiltInDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\IXmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\SchemaDataValueType.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationEventArgs.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationHandler.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlAtomicValue.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchema.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAll.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotated.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAny.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnyAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAppInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaChoice.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollectionEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCompilationSettings.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentModel.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentProcessing.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatypeVariety.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDerivationMethod.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDocumentation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaElement.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaEnumerationFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaExternal.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaForm.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFractionDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupBase.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaIdentityConstraint.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaImport.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInclude.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInference.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInferenceException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKey.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKeyref.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNumericFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObject.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectTable.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaParticle.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaPatternFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaReader.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaRedefine.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSequence.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSerializer.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeList.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeUnion.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaTotalDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUnique.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUse.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUtil.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationFlags.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidity.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaWhiteSpaceFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaXPath.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSeverityType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlTypeCode.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueConverter.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueGetter.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtension.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtensionCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\DateTimeSerializationSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElement.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElementCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionsSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\XmlSerializerSection.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeGenerationOptions.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifier.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifiers.cs" />\r
-    <Compile Include="System.Xml.Serialization\ImportContext.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlSerializable.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlTextParser.cs" />\r
-    <Compile Include="System.Xml.Serialization\KeyHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\MapCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\ReflectionHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaTypes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGeneratorConfiguration.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationSource.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeData.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeTranslator.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlChoiceIdentifierAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCustomFormatter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlDeserializationEvents.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMappingAccess.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMemberMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMembersMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlRootAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaEnumerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaProviderAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemas.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationCollectionFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationGeneratedCode.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReadCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReader.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReaderInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriteCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriterInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializer.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerAssemblyAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerFactory.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerImplementation.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerVersionAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTextAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapElementInfo.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberElement.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapping.cs" />\r
-    <Compile Include="System.Xml.XPath\DefaultContext.cs" />\r
-    <Compile Include="System.Xml.XPath\Expression.cs" />\r
-    <Compile Include="System.Xml.XPath\Iterator.cs" />\r
-    <Compile Include="System.Xml.XPath\IXPathNavigable.cs" />\r
-    <Compile Include="System.Xml.XPath\Tokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlCaseOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlDataType.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlSortOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathComparer.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathDocument.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathException.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathExpression.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathItem.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNamespaceScope.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNavigator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeIterator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeType.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathResultType.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextFunction.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextVariable.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslCompiledTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltArgumentList.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltCompileException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltContext.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventArgs.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventHandler.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltSettings.cs" />\r
-    <Compile Include="System.Xml\ConformanceLevel.cs" />\r
-    <Compile Include="System.Xml\DefaultXmlWriter.cs" />\r
-    <Compile Include="System.Xml\DTDAutomata.cs" />\r
-    <Compile Include="System.Xml\DTDObjectModel.cs" />\r
-    <Compile Include="System.Xml\DtdProcessing.cs" />\r
-    <Compile Include="System.Xml\DTDReader.cs" />\r
-    <Compile Include="System.Xml\DTDValidatingReader2.cs" />\r
-    <Compile Include="System.Xml\EntityHandling.cs" />\r
-    <Compile Include="System.Xml\EntityResolvingXmlReader.cs" />\r
-    <Compile Include="System.Xml\Formatting.cs" />\r
-    <Compile Include="System.Xml\IHasXmlChildNode.cs" />\r
-    <Compile Include="System.Xml\IHasXmlNode.cs" />\r
-    <Compile Include="System.Xml\IXmlLineInfo.cs" />\r
-    <Compile Include="System.Xml\IXmlNamespaceResolver.cs" />\r
-    <Compile Include="System.Xml\MonoFIXAttribute.cs" />\r
-    <Compile Include="System.Xml\NamespaceHandling.cs" />\r
-    <Compile Include="System.Xml\NameTable.cs" />\r
-    <Compile Include="System.Xml\NewLineHandling.cs" />\r
-    <Compile Include="System.Xml\ReadState.cs" />\r
-    <Compile Include="System.Xml\ValidationType.cs" />\r
-    <Compile Include="System.Xml\WhitespaceHandling.cs" />\r
-    <Compile Include="System.Xml\WriteState.cs" />\r
-    <Compile Include="System.Xml\XmlAttribute.cs" />\r
-    <Compile Include="System.Xml\XmlAttributeCollection.cs" />\r
-    <Compile Include="System.Xml\XmlCDataSection.cs" />\r
-    <Compile Include="System.Xml\XmlChar.cs" />\r
-    <Compile Include="System.Xml\XmlCharacterData.cs" />\r
-    <Compile Include="System.Xml\XmlComment.cs" />\r
-    <Compile Include="System.Xml\XmlConstructs.cs" />\r
-    <Compile Include="System.Xml\XmlConvert.cs" />\r
-    <Compile Include="System.Xml\XmlDateTimeSerializationMode.cs" />\r
-    <Compile Include="System.Xml\XmlDeclaration.cs" />\r
-    <Compile Include="System.Xml\XmlDocument.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentFragment.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentNavigator.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentType.cs" />\r
-    <Compile Include="System.Xml\XmlElement.cs" />\r
-    <Compile Include="System.Xml\XmlEntity.cs" />\r
-    <Compile Include="System.Xml\XmlEntityReference.cs" />\r
-    <Compile Include="System.Xml\XmlException.cs" />\r
-    <Compile Include="System.Xml\XmlImplementation.cs" />\r
-    <Compile Include="System.Xml\XmlInputStream.cs" />\r
-    <Compile Include="System.Xml\XmlIteratorNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlLinkedNode.cs" />\r
-    <Compile Include="System.Xml\XmlNamedNodeMap.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntry.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntryCache.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceManager.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceScope.cs" />\r
-    <Compile Include="System.Xml\XmlNameTable.cs" />\r
-    <Compile Include="System.Xml\XmlNode.cs" />\r
-    <Compile Include="System.Xml\XmlNodeArrayList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedAction.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventArgs.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventHandler.cs" />\r
-    <Compile Include="System.Xml\XmlNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeListChildren.cs" />\r
-    <Compile Include="System.Xml\XmlNodeOrder.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReader2.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReaderImpl.cs" />\r
-    <Compile Include="System.Xml\XmlNodeType.cs" />\r
-    <Compile Include="System.Xml\XmlNotation.cs" />\r
-    <Compile Include="System.Xml\XmlOutputMethod.cs" />\r
-    <Compile Include="System.Xml\XmlParserContext.cs" />\r
-    <Compile Include="System.Xml\XmlParserInput.cs" />\r
-    <Compile Include="System.Xml\XmlProcessingInstruction.cs" />\r
-    <Compile Include="System.Xml\XmlQualifiedName.cs" />\r
-    <Compile Include="System.Xml\XmlReader.cs" />\r
-    <Compile Include="System.Xml\XmlReaderBinarySupport.cs" />\r
-    <Compile Include="System.Xml\XmlReaderSettings.cs" />\r
-    <Compile Include="System.Xml\XmlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSecureResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSignificantWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlSpace.cs" />\r
-    <Compile Include="System.Xml\XmlText.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader2.cs" />\r
-    <Compile Include="System.Xml\XmlTextWriter2.cs" />\r
-    <Compile Include="System.Xml\XmlTokenizedType.cs" />\r
-    <Compile Include="System.Xml\XmlUrlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlValidatingReader.cs" />\r
-    <Compile Include="System.Xml\XmlWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlWriter.cs" />\r
-    <Compile Include="System.Xml\XmlWriterSettings.cs" />\r
-    <Compile Include="System.Xml\XQueryConvert.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\PatternParser.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\PatternTokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\Parser.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-$(ProjectDir)\..\..\..\mono\msvc\scripts\prepare.exe $(ProjectDir)..\.. xml\r
-$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\System.Xml.XPath\Parser.jay > $(ProjectDir)\System.Xml.XPath\Parser.cs\r
-echo #define XSLT_PATTERN > $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Mono.Xml.Xsl\PatternParser.jay >> $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-echo #define XSLT_PATTERN > $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-type $(ProjectDir)\System.Xml.XPath\Tokenizer.cs >> $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-\r\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-basic.csproj">\r
-      <Project>{B8AA4FF3-2174-4C82-B75E-28C3CA28A380}</Project>\r
-      <Name>corlib\corlib-basic</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System\System-basic.csproj">\r
-      <Project>{808F7F56-308D-4978-8A44-A971BDADA3F6}</Project>\r
-      <Name>System\System-basic</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
diff --git a/mcs/class/System.XML/System.Xml-build.csproj b/mcs/class/System.XML/System.Xml-build.csproj
deleted file mode 100644 (file)
index 01d154d..0000000
+++ /dev/null
@@ -1,476 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{F8FFA803-9D2E-465A-A87D-3F871AD497B6}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    \r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System.Xml</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618,612,642</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XmlSchemaValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityPath.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdIdentityState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdKeyTable.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdParticleValidationState.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdValidatingReader.cs" />\r
-    <Compile Include="Mono.Xml.Schema\XsdWildcard.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocument2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentBuilder2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathDocumentWriter2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNavigator2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode.cs" />\r
-    <Compile Include="Mono.Xml.XPath\DTMXPathNode2.cs" />\r
-    <Compile Include="Mono.Xml.XPath\IdPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\KeyPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\LocationPathPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\Pattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\UnionPattern.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathEditableDocument.cs" />\r
-    <Compile Include="Mono.Xml.XPath\XPathNavigatorReader.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyImports.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslApplyTemplates.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAttribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslAvt.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCallTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslChoose.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslComment.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCompiledElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopy.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslCopyOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslFallback.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslForEach.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslIf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslLiteralElement.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslMessage.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNotSupportedOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslNumber.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslOperation.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslProcessingInstruction.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslTemplateContent.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslText.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslValueOf.cs" />\r
-    <Compile Include="Mono.Xml.Xsl.Operations\XslVariable.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Attribute.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Compiler.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Debug.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Emitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\GenericOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\HtmlEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\MSXslScriptManager.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\Outputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\ScriptCompilerInfo.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\TextOutputter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XmlWriterEmitter.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslAttributeSet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslDecimalFormat.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslFunctions.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslKey.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslOutput.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslSortEvaluator.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslStylesheet.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltCompiledContext.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XsltDebuggerWrapper.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTemplate.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\XslTransformProcessor.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlParserContext.cs" />\r
-    <Compile Include="Mono.Xml\IHasXmlSchemaInfo.cs" />\r
-    <Compile Include="Mono.Xml\SubtreeXmlReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlFilterReader.cs" />\r
-    <Compile Include="Mono.Xml\XmlNodeWriter.cs" />\r
-    <Compile Include="System.Xml.Schema\BuiltInDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\IXmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\SchemaDataValueType.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationEventArgs.cs" />\r
-    <Compile Include="System.Xml.Schema\ValidationHandler.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlAtomicValue.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchema.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAll.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotated.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnnotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAny.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAnyAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAppInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttribute.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaAttributeGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaChoice.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCollectionEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaCompilationSettings.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaComplexType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentModel.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentProcessing.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaContentType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatype.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDatatypeVariety.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDerivationMethod.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaDocumentation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaElement.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaEnumerationFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaExternal.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaForm.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaFractionDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroup.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupBase.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaGroupRef.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaIdentityConstraint.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaImport.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInclude.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInference.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInferenceException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaInfo.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKey.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaKeyref.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMaxLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinExclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinInclusiveFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaMinLengthFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNotation.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaNumericFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObject.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectCollection.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectEnumerator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaObjectTable.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaParticle.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaPatternFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaReader.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaRedefine.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSequence.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSerializer.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentExtension.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleContentRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeContent.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeList.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaSimpleTypeUnion.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaTotalDigitsFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUnique.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUse.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaUtil.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationException.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidationFlags.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidator.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaValidity.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaWhiteSpaceFacet.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSchemaXPath.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlSeverityType.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlTypeCode.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueConverter.cs" />\r
-    <Compile Include="System.Xml.Schema\XmlValueGetter.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtension.cs" />\r
-    <Compile Include="System.Xml.Serialization.Advanced\SchemaImporterExtensionCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\DateTimeSerializationSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElement.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionElementCollection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SchemaImporterExtensionsSection.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="System.Xml.Serialization.Configuration\XmlSerializerSection.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeGenerationOptions.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifier.cs" />\r
-    <Compile Include="System.Xml.Serialization\CodeIdentifiers.cs" />\r
-    <Compile Include="System.Xml.Serialization\ImportContext.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlSerializable.cs" />\r
-    <Compile Include="System.Xml.Serialization\IXmlTextParser.cs" />\r
-    <Compile Include="System.Xml.Serialization\KeyHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\MapCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\ReflectionHelper.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SchemaTypes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGenerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationCodeGeneratorConfiguration.cs" />\r
-    <Compile Include="System.Xml.Serialization\SerializationSource.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapSchemaMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\SoapTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeData.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\TypeTranslator.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\UnreferencedObjectEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAnyElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlArrayItemAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributeOverrides.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlChoiceIdentifierAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCodeExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlCustomFormatter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlDeserializationEvents.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementAttributes.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlElementEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlEnumAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIgnoreAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlIncludeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMappingAccess.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMemberMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlMembersMapping.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventArgs.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlNodeEventHandler.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlReflectionMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlRootAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaEnumerator.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaExporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaImporter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemaProviderAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSchemas.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationCollectionFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationFixupCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationGeneratedCode.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReadCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReader.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationReaderInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriteCallback.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializationWriterInterpreter.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializer.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerAssemblyAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerFactory.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerImplementation.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlSerializerVersionAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTextAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapElementInfo.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMember.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberAttribute.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberElement.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapMemberNamespaces.cs" />\r
-    <Compile Include="System.Xml.Serialization\XmlTypeMapping.cs" />\r
-    <Compile Include="System.Xml.XPath\DefaultContext.cs" />\r
-    <Compile Include="System.Xml.XPath\Expression.cs" />\r
-    <Compile Include="System.Xml.XPath\Iterator.cs" />\r
-    <Compile Include="System.Xml.XPath\IXPathNavigable.cs" />\r
-    <Compile Include="System.Xml.XPath\Tokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlCaseOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlDataType.cs" />\r
-    <Compile Include="System.Xml.XPath\XmlSortOrder.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathComparer.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathDocument.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathException.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathExpression.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathItem.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNamespaceScope.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNavigator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeIterator.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathNodeType.cs" />\r
-    <Compile Include="System.Xml.XPath\XPathResultType.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextFunction.cs" />\r
-    <Compile Include="System.Xml.Xsl\IXsltContextVariable.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslCompiledTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltArgumentList.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltCompileException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltContext.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltException.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventArgs.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltMessageEncounteredEventHandler.cs" />\r
-    <Compile Include="System.Xml.Xsl\XslTransform.cs" />\r
-    <Compile Include="System.Xml.Xsl\XsltSettings.cs" />\r
-    <Compile Include="System.Xml\ConformanceLevel.cs" />\r
-    <Compile Include="System.Xml\DefaultXmlWriter.cs" />\r
-    <Compile Include="System.Xml\DTDAutomata.cs" />\r
-    <Compile Include="System.Xml\DTDObjectModel.cs" />\r
-    <Compile Include="System.Xml\DtdProcessing.cs" />\r
-    <Compile Include="System.Xml\DTDReader.cs" />\r
-    <Compile Include="System.Xml\DTDValidatingReader2.cs" />\r
-    <Compile Include="System.Xml\EntityHandling.cs" />\r
-    <Compile Include="System.Xml\EntityResolvingXmlReader.cs" />\r
-    <Compile Include="System.Xml\Formatting.cs" />\r
-    <Compile Include="System.Xml\IHasXmlChildNode.cs" />\r
-    <Compile Include="System.Xml\IHasXmlNode.cs" />\r
-    <Compile Include="System.Xml\IXmlLineInfo.cs" />\r
-    <Compile Include="System.Xml\IXmlNamespaceResolver.cs" />\r
-    <Compile Include="System.Xml\MonoFIXAttribute.cs" />\r
-    <Compile Include="System.Xml\NamespaceHandling.cs" />\r
-    <Compile Include="System.Xml\NameTable.cs" />\r
-    <Compile Include="System.Xml\NewLineHandling.cs" />\r
-    <Compile Include="System.Xml\ReadState.cs" />\r
-    <Compile Include="System.Xml\ValidationType.cs" />\r
-    <Compile Include="System.Xml\WhitespaceHandling.cs" />\r
-    <Compile Include="System.Xml\WriteState.cs" />\r
-    <Compile Include="System.Xml\XmlAttribute.cs" />\r
-    <Compile Include="System.Xml\XmlAttributeCollection.cs" />\r
-    <Compile Include="System.Xml\XmlCDataSection.cs" />\r
-    <Compile Include="System.Xml\XmlChar.cs" />\r
-    <Compile Include="System.Xml\XmlCharacterData.cs" />\r
-    <Compile Include="System.Xml\XmlComment.cs" />\r
-    <Compile Include="System.Xml\XmlConstructs.cs" />\r
-    <Compile Include="System.Xml\XmlConvert.cs" />\r
-    <Compile Include="System.Xml\XmlDateTimeSerializationMode.cs" />\r
-    <Compile Include="System.Xml\XmlDeclaration.cs" />\r
-    <Compile Include="System.Xml\XmlDocument.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentFragment.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentNavigator.cs" />\r
-    <Compile Include="System.Xml\XmlDocumentType.cs" />\r
-    <Compile Include="System.Xml\XmlElement.cs" />\r
-    <Compile Include="System.Xml\XmlEntity.cs" />\r
-    <Compile Include="System.Xml\XmlEntityReference.cs" />\r
-    <Compile Include="System.Xml\XmlException.cs" />\r
-    <Compile Include="System.Xml\XmlImplementation.cs" />\r
-    <Compile Include="System.Xml\XmlInputStream.cs" />\r
-    <Compile Include="System.Xml\XmlIteratorNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlLinkedNode.cs" />\r
-    <Compile Include="System.Xml\XmlNamedNodeMap.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntry.cs" />\r
-    <Compile Include="System.Xml\XmlNameEntryCache.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceManager.cs" />\r
-    <Compile Include="System.Xml\XmlNamespaceScope.cs" />\r
-    <Compile Include="System.Xml\XmlNameTable.cs" />\r
-    <Compile Include="System.Xml\XmlNode.cs" />\r
-    <Compile Include="System.Xml\XmlNodeArrayList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedAction.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventArgs.cs" />\r
-    <Compile Include="System.Xml\XmlNodeChangedEventHandler.cs" />\r
-    <Compile Include="System.Xml\XmlNodeList.cs" />\r
-    <Compile Include="System.Xml\XmlNodeListChildren.cs" />\r
-    <Compile Include="System.Xml\XmlNodeOrder.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReader2.cs" />\r
-    <Compile Include="System.Xml\XmlNodeReaderImpl.cs" />\r
-    <Compile Include="System.Xml\XmlNodeType.cs" />\r
-    <Compile Include="System.Xml\XmlNotation.cs" />\r
-    <Compile Include="System.Xml\XmlOutputMethod.cs" />\r
-    <Compile Include="System.Xml\XmlParserContext.cs" />\r
-    <Compile Include="System.Xml\XmlParserInput.cs" />\r
-    <Compile Include="System.Xml\XmlProcessingInstruction.cs" />\r
-    <Compile Include="System.Xml\XmlQualifiedName.cs" />\r
-    <Compile Include="System.Xml\XmlReader.cs" />\r
-    <Compile Include="System.Xml\XmlReaderBinarySupport.cs" />\r
-    <Compile Include="System.Xml\XmlReaderSettings.cs" />\r
-    <Compile Include="System.Xml\XmlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSecureResolver.cs" />\r
-    <Compile Include="System.Xml\XmlSignificantWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlSpace.cs" />\r
-    <Compile Include="System.Xml\XmlText.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader.cs" />\r
-    <Compile Include="System.Xml\XmlTextReader2.cs" />\r
-    <Compile Include="System.Xml\XmlTextWriter2.cs" />\r
-    <Compile Include="System.Xml\XmlTokenizedType.cs" />\r
-    <Compile Include="System.Xml\XmlUrlResolver.cs" />\r
-    <Compile Include="System.Xml\XmlValidatingReader.cs" />\r
-    <Compile Include="System.Xml\XmlWhitespace.cs" />\r
-    <Compile Include="System.Xml\XmlWriter.cs" />\r
-    <Compile Include="System.Xml\XmlWriterSettings.cs" />\r
-    <Compile Include="System.Xml\XQueryConvert.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\PatternParser.cs" />\r
-    <Compile Include="Mono.Xml.Xsl\PatternTokenizer.cs" />\r
-    <Compile Include="System.Xml.XPath\Parser.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-$(ProjectDir)\..\..\..\mono\msvc\scripts\prepare.exe $(ProjectDir)..\.. xml\r
-$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\System.Xml.XPath\Parser.jay > $(ProjectDir)\System.Xml.XPath\Parser.cs\r
-echo #define XSLT_PATTERN > $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Mono.Xml.Xsl\PatternParser.jay >> $(ProjectDir)\Mono.Xml.Xsl\PatternParser.cs\r
-echo #define XSLT_PATTERN > $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-type $(ProjectDir)\System.Xml.XPath\Tokenizer.cs >> $(ProjectDir)\Mono.Xml.Xsl\PatternTokenizer.cs\r
-\r\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-build.csproj">\r
-      <Project>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System\System-build.csproj">\r
-      <Project>{78CDD7C1-0524-4A2A-BAA6-2A05CCD7116C}</Project>\r
-      <Name>System\System-build</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index cdfb3fdeff89c373c3a959d777dc4ac50420a8cb..753fdd5bbb8f23a12b369415577b1624e2dfae04 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,219,414,649,1717</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\GenerateHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\IteratorDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\OptimizerPatterns.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\StaticDataManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\TailCallAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILAnnotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILConstructAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILModule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimization.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimizerVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTypeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\ISourceLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\ListBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Pair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilBinary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilChoice.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilCloneVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilDataSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvoke.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeEarlyBound.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeLateBound.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLiteral.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLoop.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReplaceVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilScopedVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilSortKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilStrConcat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTargetType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTernary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTypeChecker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilUnary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilValidationVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SerializationHints.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SubstitutionList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\WhitespaceRule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\QueryReaderSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\ContentIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DecimalFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DocumentOrderComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DodSequenceMerge.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\EarlyBoundInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\NumberFormatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\RtfNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SetIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SiblingIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\StringConcat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\TreeIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleLookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAggregates.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAttributeCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlCollation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlExtensionFunction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILIndex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILStorageConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlIterators.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryRuntime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQuerySequence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryStaticData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlRawWriterWrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSequenceWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKeyAccumulator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XslNumber.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltLibrary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\SourceLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlILCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlIlGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlNodeKindFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQualifiedNameTest.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryCardinality.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryTypeFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXpathBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXPathEnvironment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathAxis.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathCompileException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathOperator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathQilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathScanner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPathConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XslException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\CompilerScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Focus.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\IErrorHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\InvokeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\KeyMatchBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Keywords.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\MatcherBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\OutputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGeneratorEnv.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilStrConcatenator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Scripts.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Stylesheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAst.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAstAnalyzer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltInput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltQilFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslVisitor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ActionFrame.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyImportsAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyTemplatesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeSetAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Avt.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AvtEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BeginEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BuilderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CallTemplateAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ChooseAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CommentAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CompiledAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ContainerAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAttributesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyCodeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNamespacesAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNodesetAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyOfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DbgCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DocumentScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ElementAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\EndEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Event.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ForeachAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\HtmlProps.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\IfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\MessageAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceDecl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorInput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NewInstructionAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NumberAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutKeywords.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScopeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\PrefixQname.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ProcessingInstructionAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Processor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ReaderOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RootAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SequentialOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SortAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StateMachine.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StringOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Stylesheet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateBaseAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateLookupAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Templatemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOnlyOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TheQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\UseAttributesetsAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ValueOfAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\VariableAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WithParamAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WriterOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltCompileContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltDebugger.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltOutput.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\InternalApis\NDP_Common\inc\Win8Helpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\HResults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\InvariantComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Assembly\System.Xml.Assembly.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\AsyncHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64Decoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64Encoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Base64EncoderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\BinXmltoken.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\SqlUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexDecoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexEncoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BinHexEncoderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Bits.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\BitStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\ByteStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\Shape.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\ShapeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathDocumentView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeInfoAtom.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Cache\XPathNodeViewPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\BinaryCompatibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\CharEntityEncoderFallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ConformanceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\DtdProcessing.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\EntityHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlTernaryTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\HtmlUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IDtdParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IncrementalReadDecoders.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IRemovableWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\IValidationEventHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\NamespaceHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\NewLineHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\QueryOutputWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\QueryOutputWriterV1.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelperAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadOnlyTernaryTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ReadState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\SecureStringHasher.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\TextEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\TextUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ValidatingReaderNodeData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\ValidationType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\WhitespaceHandling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlAutoDetectWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlConfiguration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlEventCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlParserContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlRawWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlRawWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlReaderSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSpace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextEncoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImpl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpersAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImpl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImplAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpersAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriterAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XmlWriterSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdCachingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdCachingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdValidatingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Core\XsdValidatingReaderAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\DiagnosticsSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentSchemaValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentXmlWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DocumentXPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\DomNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlAttributeCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlCDataSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlCharacterData.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlChildEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlChildNodes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlComment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocumentFragment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDocumentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlDomTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlElementList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEntity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEntityReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlEventChangedAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlImplementation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlLinkedNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodemap.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodeMap.SmallXmlNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNodeReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlProcessingInstruction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlSignificantWhiteSpace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlText.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlUnspecifiedAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XmlWhitespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Dom\XPathNodeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\EmptyEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\HWStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IApplicationResourceStreamResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IHasXmlNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IXmlLineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\IXmlNamespaceResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\LineInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\MTNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\NameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Ref.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlKnownDtds.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Asttree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\AutoValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BaseProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BaseValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\BitSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Chameleonkey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\CompiledidEntityConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ConstraintStruct.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ContentValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DataTypeImplementation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\DtdValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\FacetChecker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Inference\Infer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Inference\XmlSchemaInferenceException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\IXmlSchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\NamespaceList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Parser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ParserAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\Preprocessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaAttDef.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionpreProcessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaDeclBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaElementDecl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaEntity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNamespacemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaSetCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\SchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\ValidationState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XdrBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XdrValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlAtomicValue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchema.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAll.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotated.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAny.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAppInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroupref.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaChoice.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCompilationSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentModel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentProcessing.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDataType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDerivationMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDocumentation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaExternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaFacet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaForm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupRef.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaIdEntityConstraint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInclude.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaNotation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaParticle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaRedefine.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSequence.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSet.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeContent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeUnion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSubstitutionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaUse.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidationException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlSeverityType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlTokenizedType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlTypeCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XmlValueConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdDuration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Schema\XsdValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\_Events.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Advanced\SchemaImporterExtension.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\AppSettings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeGenerationoptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifiers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Compilation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Compiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\ConfigurationStrings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\DateTimeSerializationSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\SerializationSectionGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Configuration\XmlSerializerSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\ImportContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\indentedWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\IXmlSerializable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\IXmlTextParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Mappings.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Models.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\NameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\PrimitiveXmlSerializers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SchemaObjectWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeOverrides.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapCodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapEnumAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapIgnoreAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapIncludeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapReflectionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapSchemamember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SoapTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\SourceInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\TypeExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Types.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeOverrides.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlChoiceIdentifierAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlCodeExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlCountingReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\Xmlcustomformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlEnumAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlIgnoreAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlIncludeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMemberMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlMembersMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlRootAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaExporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaImporter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSchemas.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationGeneratedCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReaderILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriterILGen.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerAssemblyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerNamespaces.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerVersionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTextAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Serialization\XmlTypeMapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\ValidateNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlCharType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlComplianceUtil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlConvert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlDownloadManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlDownloadManagerAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNamespacemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNamespaceScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNameTable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNodeOrder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlNullResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlQualifiedName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlReservedNs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlSecureResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlSecureResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlUrlResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlUrlResolverAsync.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XmlXapResolver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AbsoluteQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AstNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\AttributeQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Axis.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BaseAxisQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheAxisQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheChildrenQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CacheOutputQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ChildrenQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ClonableStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\CompiledXPathExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ContextQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantBaseQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantoverDescendantQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\DocumentorderQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\EmptyQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ExtensionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Filter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FilterQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingSibling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ForwardPositionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Function.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\FunctionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Group.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\GroupQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\IdQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\IteratorFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\LogicalExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\MergeFilterQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NamespaceQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NodeFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NumberFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\NumericExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Operand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\OperandQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Operator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ParentQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingSibling.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Query.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\QueryBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ResetableIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ReversePositionQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Root.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\SortQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\StringFunctions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\UnionExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\ValueQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\Variable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\VariableQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathArrayIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAxisIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathChildIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathDescendantIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathEmptyIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathMultyIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathScanner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelectionIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelfQuery.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSingletonIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\IXPathNavigable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathDocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathExpr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathItem.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNamespaceScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorKeyComparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNodeIterator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\XPath\XPathNodeType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XslCompiledTransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltArgumentList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XslTransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml\System\Xml\Xslt\XsltSettings.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\GenerateHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\IteratorDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\OptimizerPatterns.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\StaticDataManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\TailCallAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILAnnotation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILConstructAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILModule.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimization.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlILOptimizerVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTrace.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlTypeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\IlGen\XmlIlVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\ISourceLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\ListBase.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Pair.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilBinary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilChoice.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilCloneVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilDataSource.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilExpression.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvoke.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeEarlyBound.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilInvokeLateBound.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLiteral.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilLoop.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilName.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNode.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilParameter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilPatternVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReference.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilReplaceVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilScopedVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilSortKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilStrConcat.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTargetType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTernary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilTypeChecker.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilUnary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilValidationVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\QilXmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SerializationHints.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\SubstitutionList.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QIL\WhitespaceRule.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\QueryReaderSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\ContentIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DecimalFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DocumentOrderComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\DodSequenceMerge.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\EarlyBoundInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\NumberFormatter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\RtfNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SetIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\SiblingIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\StringConcat.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\TreeIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleLookup.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\WhitespaceRuleReader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAggregates.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlAttributeCache.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlCollation.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlExtensionFunction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILIndex.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlILStorageConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlIterators.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlNavigatorStack.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryRuntime.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQuerySequence.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlQueryStaticData.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlRawWriterWrapper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSequenceWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKey.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XmlSortKeyAccumulator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XslNumber.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Runtime\XsltLibrary.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\SourceLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlILCommand.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlIlGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlNodeKindFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQualifiedNameTest.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryCardinality.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryType.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XmlQueryTypeFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXpathBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\IXPathEnvironment.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathAxis.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathCompileException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathOperator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathQilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPath\XPathScanner.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XPathConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XslException.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\CompilerScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Focus.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\IErrorHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\InvokeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\KeyMatchBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Keywords.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\MatcherBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\OutputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilGeneratorEnv.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\QilStrConcatenator.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Scripts.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\Stylesheet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XPathPatternParser.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAst.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslAstAnalyzer.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslFlags.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltInput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XsltQilFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\Xslt\XslVisitor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Action.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ActionFrame.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyImportsAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ApplyTemplatesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AttributeSetAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Avt.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\AvtEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BeginEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\BuilderInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CallTemplateAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ChooseAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CommentAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CompiledAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ContainerAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyAttributesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyCodeAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNamespacesAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyNodesetAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\CopyOfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DbgCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\DocumentScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ElementAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\EndEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Event.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ForeachAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\HtmlProps.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\IfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\InputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\MessageAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceDecl.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NamespaceEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorInput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NavigatorOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NewInstructionAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\NumberAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutKeywords.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScope.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\OutputScopeManager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\PrefixQname.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ProcessingInstructionAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Processor.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ReaderOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RecordOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\RootAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SequentialOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\SortAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StateMachine.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\StringOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Stylesheet.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateBaseAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TemplateLookupAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\Templatemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextEvent.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOnlyOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TextOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\TheQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\UseAttributesetsAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\ValueOfAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\VariableAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WithParamAction.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\WriterOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltCompileContext.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltDebugger.cs" />\r
+    <Compile Include="..\referencesource\System.Data.SqlXml\System\Xml\Xsl\XsltOld\XsltOutput.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\InternalApis\NDP_Common\inc\Win8Helpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\HResults.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\InvariantComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Assembly\System.Xml.Assembly.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\AsyncHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64Decoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64Encoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Base64EncoderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\BinXmltoken.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\SqlUtils.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinaryXml\XmlBinaryReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexDecoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexEncoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BinHexEncoderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Bits.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\BitStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\ByteStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\Shape.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\ShapeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathDocumentView.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeInfoAtom.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeView.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Cache\XPathNodeViewPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\BinaryCompatibility.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\CharEntityEncoderFallback.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ConformanceLevel.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\DtdProcessing.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\EntityHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlTernaryTree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\HtmlUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAdapterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IDtdParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IncrementalReadDecoders.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IRemovableWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\IValidationEventHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\NamespaceHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\NewLineHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\QueryOutputWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\QueryOutputWriterV1.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelper.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadContentAsBinaryHelperAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadOnlyTernaryTree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ReadState.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\SecureStringHasher.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\TextEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\TextUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ValidatingReaderNodeData.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\ValidationType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\WhitespaceHandling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAsyncCheckWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlAutoDetectWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlCharCheckingWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlConfiguration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEncodedRawTextWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlEventCache.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlParserContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlRawWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlRawWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlReaderSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSpace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlSubtreeReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextEncoder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImpl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextReaderImplHelpersAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlUtf8RawTextWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImpl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlValidatingReaderImplAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWellFormedWriterHelpersAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWrappingWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriterAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XmlWriterSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdCachingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdCachingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdValidatingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Core\XsdValidatingReaderAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\DiagnosticsSwitches.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentSchemaValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentXmlWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DocumentXPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\DomNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlAttributeCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlCDataSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlCharacterData.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlChildEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlChildNodes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlComment.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocumentFragment.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDocumentType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlDomTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlElementList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEntity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEntityReference.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlEventChangedAction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlImplementation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlLinkedNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlLoader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlName.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodemap.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNamedNodeMap.SmallXmlNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNodeReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlProcessingInstruction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlSignificantWhiteSpace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlText.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlUnspecifiedAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XmlWhitespace.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Dom\XPathNodeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\EmptyEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\HWStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IApplicationResourceStreamResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IHasXmlNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IXmlLineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\IXmlNamespaceResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\LineInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\MTNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\NameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Ref.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlKnownDtds.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Resolvers\XmlPreloadedResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Asttree.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\AutoValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BaseProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BaseValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\BitSet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Chameleonkey.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\CompiledidEntityConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ConstraintStruct.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ContentValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DataTypeImplementation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\DtdValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\FacetChecker.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Inference\Infer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Inference\XmlSchemaInferenceException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\IXmlSchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\NamespaceList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Parser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ParserAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\Preprocessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaAttDef.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaCollectionpreProcessor.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaDeclBase.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaElementDecl.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaEntity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNames.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNamespacemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaSetCompiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\SchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\ValidationState.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XdrBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XdrValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlAtomicValue.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchema.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAll.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotated.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnnotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAny.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAnyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAppInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaAttributeGroupref.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaChoice.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaCompilationSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexContentRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaComplexType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentModel.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentProcessing.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaContentType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDataType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDerivationMethod.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaDocumentation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaExternal.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaFacet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaForm.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupBase.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaGroupRef.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaIdEntityConstraint.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaImport.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInclude.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaNotation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObject.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaObjectTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaParticle.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaRedefine.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSequence.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSet.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleContentRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeContent.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeRestriction.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSimpleTypeUnion.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaSubstitutionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaUse.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidationException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSchemaValidity.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlSeverityType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlTokenizedType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlTypeCode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XmlValueConverter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdDateTime.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdDuration.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Schema\XsdValidator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\_Events.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Advanced\SchemaImporterExtension.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\AppSettings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeGenerationoptions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifier.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\CodeIdentifiers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Compilation.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Compiler.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\ConfigurationStrings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\DateTimeSerializationSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElement.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionElementCollection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SchemaImporterExtensionsSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\SerializationSectionGroup.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Configuration\XmlSerializerSection.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\ImportContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\indentedWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\IXmlSerializable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\IXmlTextParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Mappings.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Models.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\NameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\PrimitiveXmlSerializers.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SchemaObjectWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributeOverrides.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapCodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapEnumAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapIgnoreAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapIncludeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapReflectionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapSchemamember.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SoapTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\SourceInfo.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\TypeExtensions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Types.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAnyElementAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlArrayItemAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributeOverrides.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlChoiceIdentifierAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlCodeExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlCountingReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\Xmlcustomformatter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlElementAttributes.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlEnumAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlIgnoreAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlIncludeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMemberMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlMembersMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlNamespaceDeclarationsAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlReflectionMember.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlRootAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaExporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaImporter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemaProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSchemas.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationGeneratedCode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationReaderILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializationWriterILGen.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerAssemblyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerFactory.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerNamespaces.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlSerializerVersionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTextAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Serialization\XmlTypeMapping.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\ValidateNames.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlCharType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlComplianceUtil.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlConvert.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlDownloadManager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlDownloadManagerAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlEncoding.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNamespacemanager.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNamespaceScope.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNameTable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNodeOrder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlNullResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlQualifiedName.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlReservedNs.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlSecureResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlSecureResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlUrlResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlUrlResolverAsync.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XmlXapResolver.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AbsoluteQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AstNode.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\AttributeQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Axis.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BaseAxisQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\BooleanFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheAxisQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheChildrenQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CacheOutputQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ChildrenQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ClonableStack.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\CompiledXPathExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ContextQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantBaseQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantoverDescendantQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DescendantQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\DocumentorderQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\EmptyQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ExtensionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Filter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FilterQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FollowingSibling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ForwardPositionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Function.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\FunctionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Group.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\GroupQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\IdQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\IteratorFilter.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\LogicalExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\MergeFilterQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NamespaceQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NodeFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NumberFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\NumericExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Operand.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\OperandQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Operator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ParentQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\PrecedingSibling.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Query.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\QueryBuilder.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ResetableIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ReversePositionQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Root.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\SortQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\StringFunctions.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\UnionExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\ValueQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\Variable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\VariableQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAncestorQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathArrayIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathAxisIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathChildIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathDescendantIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathEmptyIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathMultyIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathParser.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathScanner.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelectionIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSelfQuery.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\Internal\XPathSingletonIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\IXPathNavigable.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathDocument.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathExpr.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathItem.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNamespaceScope.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorKeyComparer.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNavigatorReader.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNodeIterator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\XPath\XPathNodeType.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XslCompiledTransform.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltArgumentList.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltContext.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltException.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XslTransform.cs" />\r
+    <Compile Include="..\referencesource\System.Xml\System\Xml\Xslt\XsltSettings.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="ReferenceSources\LocalAppContextSwitches.cs" />\r
     <Compile Include="ReferenceSources\Res.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
+    <ProjectReference Include="../System/System-secxml-net_4_x.csproj">\r
+      <Project>{19954F80-065E-4D46-8FEF-62BA4D6CFDAD}</Project>\r
+      <Name>System-secxml-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
       <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
       <Name>System.Configuration-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System/System-bare-net_4_x.csproj">\r
-      <Project>{483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}</Project>\r
-      <Name>System-bare-net_4_x</Name>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <Folder Include="Properties\" />\r
index 7969f402f8f14a42963882a9c5d0e8db5ae657ca..8f2de60a83892664ac61f5cb90d72dc37813427d 100644 (file)
@@ -51,17 +51,17 @@ namespace MonoTests.System.Xml
                public void CreateEvidenceForUrl_Basic ()
                {
                        Evidence e = XmlSecureResolver.CreateEvidenceForUrl (null);
-#if DISABLE_CAS_USE
-                       Assert.IsNull (e);
-#else
+#if FEATURE_MONO_CAS
                        Assert.AreEqual (0, e.Count, "null");
+#else
+                       Assert.IsNull (e);
 #endif
 
                        e = XmlSecureResolver.CreateEvidenceForUrl (String.Empty);
-#if DISABLE_CAS_USE
-                       Assert.IsNull (e);
-#else
+#if FEATURE_MONO_CAS
                        Assert.AreEqual (0, e.Count, "String.Empty");
+#else
+                       Assert.IsNull (e);
 #endif
                }
 
index 25d922d37604d16210d5f36b2454d769baca1143..a5d11aeffb1c16f590397c74502c490045f6e757 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index a32e2b0b9784a4fdd9ad4c393f4e748cafad5395..e3988ed811ffcb03d826fec78c7a4b1d4fbb96d8 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_SERIALIZATION</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_SERIALIZATION</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml.Linq\System\Xml\Linq\XComponentModel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml.Linq\System\Xml\Linq\XLinq.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml.Linq\System\Xml\Linq\XNodeNavigator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System.Xml.Linq\System\Xml\Linq\XNodeValidator.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
+    <Compile Include="..\referencesource\System.Xml.Linq\System\Xml\Linq\XComponentModel.cs" />\r
+    <Compile Include="..\referencesource\System.Xml.Linq\System\Xml\Linq\XLinq.cs" />\r
+    <Compile Include="..\referencesource\System.Xml.Linq\System\Xml\Linq\XNodeNavigator.cs" />\r
+    <Compile Include="..\referencesource\System.Xml.Linq\System\Xml\Linq\XNodeValidator.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 852c92dd335600d762067eaf3380ba42d54a4607..5168c310d8608d21d54db0c43b9d10c90567c014 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index d4c83ee497c8c96135c73c406b5a70dc9a9bdc47..b5fb6bb927c52ea13578e019c868e4039664ec34 100644 (file)
@@ -42,6 +42,11 @@ REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_THREAD_SUSPEND_RESUME
 TEST_MCS_FLAGS += -d:MONO_FEATURE_THREAD_SUSPEND_RESUME
 endif
 
+ifndef NO_MULTIPLE_APPDOMAINS
+REFERENCE_SOURCES_FLAGS += -d:MONO_FEATURE_MULTIPLE_APPDOMAINS
+TEST_MCS_FLAGS += -d:MONO_FEATURE_MULTIPLE_APPDOMAINS
+endif
+
 TXT_RESOURCE_STRINGS = ../referencesource/System/System.txt
 
 #
index a4de75e853a54719fc8293f8852e83e2e32092be..00424bd70f370d8cc10be4b2e2ddeec4ead96442 100644 (file)
@@ -215,6 +215,10 @@ namespace Mono.CSharp
                        mcs.StartInfo.RedirectStandardOutput=true;
                        mcs.StartInfo.RedirectStandardError=true;
                        mcs.ErrorDataReceived += new DataReceivedEventHandler (McsStderrDataReceived);
+
+                       // Use same text decoder as mcs and not user set values in Console
+                       mcs.StartInfo.StandardOutputEncoding =
+                       mcs.StartInfo.StandardErrorEncoding = Encoding.UTF8;
                        
                        try {
                                mcs.Start();
index 776751537bdae8df69c5134c20ade5c097c65eb5..f8a83bb6f3b45132e5066093813545f62f9055bb 100644 (file)
@@ -222,7 +222,7 @@ namespace Mono.Net.Security.Private
                }
 
                public int KeyExchangeStrength {
-                       get { return KeyExchangeStrength; }
+                       get { return Impl.KeyExchangeStrength; }
                }
 
                public bool CanRead {
index 55969818a8b5d4299725c0e5f81129020d1f9366..14f7d1a586d2c3520881ab576cda88b3cb97e37b 100644 (file)
@@ -65,16 +65,12 @@ namespace Mono.Net.Security
                public static X509Chain CreateX509Chain (XX509CertificateCollection certs)
                {
                        var chain = new X509Chain ();
-                       chain.ChainPolicy = new X509ChainPolicy ();
+                       chain.ChainPolicy = new X509ChainPolicy ((X509CertificateCollection)(object)certs);
 
 #if !MOBILE
                        chain.ChainPolicy.RevocationMode = revocation_mode;
 #endif
 
-                       for (int i = 1; i < certs.Count; i++) {
-                               chain.ChainPolicy.ExtraStore.Add (certs [i]);
-                       }
-
                        return chain;
                }
 
diff --git a/mcs/class/System/ReferenceSources/AutoWebProxyScriptEngine.cs b/mcs/class/System/ReferenceSources/AutoWebProxyScriptEngine.cs
new file mode 100644 (file)
index 0000000..4e4d285
--- /dev/null
@@ -0,0 +1,179 @@
+using System.Collections;
+using System.Collections.Generic;
+using System.Text.RegularExpressions;
+using Mono.Net;
+
+namespace System.Net
+{
+       class AutoWebProxyScriptEngine
+       {
+               public AutoWebProxyScriptEngine (WebProxy proxy, bool useRegistry)
+               {
+               }
+
+               public Uri AutomaticConfigurationScript { get; set; }
+               public bool AutomaticallyDetectSettings { get; set; }
+
+               public bool GetProxies (Uri destination, out IList<string> proxyList)
+               {
+                       int i = 0;
+                       return GetProxies (destination, out proxyList, ref i);
+               }
+
+               public bool GetProxies(Uri destination, out IList<string> proxyList, ref int syncStatus)
+               {
+                       proxyList = null;
+                       return false;
+               }
+
+               public void Close ()
+               {
+               }
+
+               public void Abort (ref int syncStatus)
+               {
+               }
+
+               public void CheckForChanges ()
+               {
+               }
+
+#if !MOBILE
+               public WebProxyData GetWebProxyData ()
+               {
+                       WebProxyData data;
+
+                       // TODO: Could re-use some pieces from _AutoWebProxyScriptEngine.cs
+                       if (IsWindows ()) {
+                               data = InitializeRegistryGlobalProxy ();
+                               if (data != null)
+                                       return data;
+                       }
+
+                       data = ReadEnvVariables ();
+                       return data ?? new WebProxyData ();
+               }
+
+               WebProxyData ReadEnvVariables ()
+               {
+                       string address = Environment.GetEnvironmentVariable ("http_proxy") ?? Environment.GetEnvironmentVariable ("HTTP_PROXY");
+
+                       if (address != null) {
+                               try {
+                                       if (!address.StartsWith ("http://"))
+                                               address = "http://" + address;
+
+                                       Uri uri = new Uri (address);
+                                       IPAddress ip;
+                                       
+                                       if (IPAddress.TryParse (uri.Host, out ip)) {
+                                               if (IPAddress.Any.Equals (ip)) {
+                                                       UriBuilder builder = new UriBuilder (uri);
+                                                       builder.Host = "127.0.0.1";
+                                                       uri = builder.Uri;
+                                               } else if (IPAddress.IPv6Any.Equals (ip)) {
+                                                       UriBuilder builder = new UriBuilder (uri);
+                                                       builder.Host = "[::1]";
+                                                       uri = builder.Uri;
+                                               }
+                                       }
+
+                                       bool bBypassOnLocal = false;
+                                       ArrayList al = new ArrayList ();
+                                       string bypass = Environment.GetEnvironmentVariable ("no_proxy") ?? Environment.GetEnvironmentVariable ("NO_PROXY");
+                                       
+                                       if (bypass != null) {
+                                               string[] bypassList = bypass.Split (new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
+                                       
+                                               foreach (string str in bypassList) {
+                                                       if (str != "*.local")
+                                                               al.Add (str);
+                                                       else
+                                                               bBypassOnLocal = true;
+                                               }
+                                       }
+
+                                       return new WebProxyData {
+                                               proxyAddress = uri,
+                                               bypassOnLocal = bBypassOnLocal,
+                                               bypassList = CreateBypassList (al)
+                                       };
+                               } catch (UriFormatException) {
+                               }
+                       }
+
+                       return null;
+               }
+
+               static bool IsWindows ()
+               {
+                       return (int) Environment.OSVersion.Platform < 4;
+               }
+                               
+               WebProxyData InitializeRegistryGlobalProxy ()
+               {
+                       int iProxyEnable = (int)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyEnable", 0);
+
+                       if (iProxyEnable > 0) {
+                               string strHttpProxy = "";
+                               bool bBypassOnLocal = false;
+                               ArrayList al = new ArrayList ();
+                               
+                               string strProxyServer = (string)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyServer", null);
+                               string strProxyOverrride = (string)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyOverride", null);
+                               
+                               if (strProxyServer.Contains ("=")) {
+                                       foreach (string strEntry in strProxyServer.Split (new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
+                                               if (strEntry.StartsWith ("http=")) {
+                                                       strHttpProxy = strEntry.Substring (5);
+                                                       break;
+                                               }
+                               } else strHttpProxy = strProxyServer;
+                               
+                               if (strProxyOverrride != null) {
+                                       string[] bypassList = strProxyOverrride.Split (new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
+                               
+                                       foreach (string str in bypassList) {
+                                               if (str != "<local>")
+                                                       al.Add (str);
+                                               else
+                                                       bBypassOnLocal = true;
+                                       }
+                               }
+
+                               return new WebProxyData {
+                                       proxyAddress = ToUri (strHttpProxy),
+                                       bypassOnLocal = bBypassOnLocal,
+                                       bypassList = CreateBypassList (al)
+                               };
+                       }
+
+                       return null;
+               }
+
+               static Uri ToUri (string address)
+               {
+                       if (address == null)
+                               return null;
+                               
+                       if (address.IndexOf ("://", StringComparison.Ordinal) == -1) 
+                               address = "http://" + address;
+
+                       return new Uri (address);
+               }
+
+               // Takes an ArrayList of fileglob-formatted strings and returns an array of Regex-formatted strings
+               static ArrayList CreateBypassList (ArrayList al)
+               {
+                       string[] result = al.ToArray (typeof (string)) as string[];
+                       for (int c = 0; c < result.Length; c++)
+                       {
+                               result [c] = "^" +
+                                       Regex.Escape (result [c]).Replace (@"\*", ".*").Replace (@"\?", ".") +
+                                       "$";
+                       }
+                       return new ArrayList (result);
+               }
+#endif
+       }
+}
\ No newline at end of file
diff --git a/mcs/class/System/ReferenceSources/CAPI.cs b/mcs/class/System/ReferenceSources/CAPI.cs
new file mode 100644 (file)
index 0000000..28e1c47
--- /dev/null
@@ -0,0 +1,162 @@
+namespace System.Security.Cryptography {
+
+       static class CAPI {
+               // OID key type.
+               internal const uint CRYPT_OID_INFO_OID_KEY   = 1;
+               internal const uint CRYPT_OID_INFO_NAME_KEY  = 2;
+               internal const uint CRYPT_OID_INFO_ALGID_KEY = 3;
+               internal const uint CRYPT_OID_INFO_SIGN_KEY  = 4;
+
+               public static string CryptFindOIDInfoNameFromKey (string key, OidGroup oidGroup)
+               {
+                       // TODO: incomplete
+                       // TODO: oidGroup is ignored
+                       switch (key) {
+                       case "1.2.840.113549.1.1.5":
+                       case "1.3.14.3.2.29":
+                       case "1.3.14.3.2.15":
+                               return "sha1RSA";
+                       case "1.2.840.113549.1.1.4":
+                       case "1.3.14.3.2.3":
+                               return "md5RSA";
+                       case "1.2.840.10040.4.3":
+                       case "1.3.14.3.2.13":
+                               return "sha1DSA";
+                       case "1.2.840.113549.1.1.2":
+                       case "1.3.14.7.2.3.1":
+                               return "md2RSA";
+                       case "1.2.840.113549.1.1.3":
+                               return "md4RSA";
+                               return "md4RSA";
+                               return "md4RSA";
+                       case "1.3.14.3.2.27":
+                               return "dsaSHA1";
+                       case "2.16.840.1.101.2.1.1.19":
+                               return "mosaicUpdatedSig";
+                       case "1.3.14.3.2.26":
+                               return "sha1";
+                       case "1.2.840.113549.2.5":
+                               return "md5";
+                       case "2.16.840.1.101.3.4.2.1":
+                               return "sha256";
+                       case "2.16.840.1.101.3.4.2.2":
+                               return "sha384";
+                       case "2.16.840.1.101.3.4.2.3":
+                               return "sha512";
+                       case "1.2.840.113549.1.1.11":
+                               return "sha256RSA";
+                       case "1.2.840.113549.1.1.12":
+                               return "sha384RSA";
+                       case "1.2.840.113549.1.1.13":
+                               return "sha512RSA";
+                       case "1.2.840.113549.1.1.10":
+                               return "RSASSA-PSS";
+                       case "1.2.840.10045.4.1":
+                               return "sha1ECDSA";
+                       case "1.2.840.10045.4.3.2":
+                               return "sha256ECDSA";
+                       case "1.2.840.10045.4.3.3":
+                               return "sha384ECDSA";
+                       case "1.2.840.10045.4.3.4":
+                               return "sha512ECDSA";
+                       case "1.2.840.10045.4.3":
+                               return "specifiedECDSA";
+                       case "1.2.840.113549.1.1.1":
+                               return "RSA";
+                       case "1.2.840.113549.1.7.1":
+                               return "PKCS 7 Data";
+                       case "1.2.840.113549.1.9.3":
+                               return "Content Type";
+                       case "1.2.840.113549.1.9.4":
+                               return "Message Digest";
+                       case "1.2.840.113549.1.9.5":
+                               return "Signing Time";
+                       case "1.2.840.113549.3.7":
+                               return "3des";
+                       case "2.5.29.17":
+                               return "Subject Alternative Name";
+                       case "2.16.840.1.101.3.4.1.2":
+                               return "aes128";
+                       case "2.16.840.1.101.3.4.1.42":
+                               return "aes256";
+                       case "2.16.840.1.113730.1.1":
+                               return "Netscape Cert Type";
+                       }
+
+                       return null;
+               }
+
+               public static string CryptFindOIDInfoKeyFromName (string name, OidGroup oidGroup)
+               {
+                       // TODO: incomplete
+                       // TODO: oidGroup is ignored                    
+                       switch(name) {
+                       case "sha1RSA":
+                               return "1.2.840.113549.1.1.5";
+                       case "md5RSA":
+                               return "1.2.840.113549.1.1.4";
+                       case "sha1DSA":
+                               return "1.2.840.10040.4.3";
+                       case "shaRSA":
+                               return "1.3.14.3.2.29";
+                       case "md2RSA":
+                               return "1.2.840.113549.1.1.2";
+                       case "md4RSA":
+                               return "1.2.840.113549.1.1.3";
+                       case "dsaSHA1":
+                               return "1.3.14.3.2.27";
+                       case "mosaicUpdatedSig":
+                               return "2.16.840.1.101.2.1.1.19";
+                       case "sha1":
+                               return "1.3.14.3.2.26";
+                       case "md5":
+                               return "1.2.840.113549.2.5";
+                       case "sha256":
+                               return "2.16.840.1.101.3.4.2.1";
+                       case "sha384":
+                               return "2.16.840.1.101.3.4.2.2";
+                       case "sha512":
+                               return "2.16.840.1.101.3.4.2.3";
+                       case "sha256RSA":
+                               return "1.2.840.113549.1.1.11";
+                       case "sha384RSA":
+                               return "1.2.840.113549.1.1.12";
+                       case "sha512RSA":
+                               return "1.2.840.113549.1.1.13";
+                       case "RSASSA-PSS":
+                               return "1.2.840.113549.1.1.10";
+                       case "sha1ECDSA":
+                               return "1.2.840.10045.4.1";
+                       case "sha256ECDSA":
+                               return "1.2.840.10045.4.3.2";
+                       case "sha384ECDSA":
+                               return "1.2.840.10045.4.3.3";
+                       case "sha512ECDSA":
+                               return "1.2.840.10045.4.3.4";
+                       case "specifiedECDSA":
+                               return "1.2.840.10045.4.3";
+                       case "RSA":
+                               return "1.2.840.113549.1.1.1";
+                       case "PKCS 7 Data":
+                               return "1.2.840.113549.1.7.1";
+                       case "Content Type":
+                               return "1.2.840.113549.1.9.3";
+                       case "Message Digest":
+                               return "1.2.840.113549.1.9.4";
+                       case "Signing Time":
+                               return "1.2.840.113549.1.9.5";
+                       case "3des":
+                               return "1.2.840.113549.3.7";
+                       case "Subject Alternative Name":
+                               return "2.5.29.17";
+                       case "aes128":
+                               return "2.16.840.1.101.3.4.1.2";
+                       case "aes256":
+                               return "2.16.840.1.101.3.4.1.42";
+                       case "Netscape Cert Type":
+                               return "2.16.840.1.113730.1.1";
+                       }
+                       return null;
+               }
+       }
+}
\ No newline at end of file
diff --git a/mcs/class/System/ReferenceSources/HttpApi.cs b/mcs/class/System/ReferenceSources/HttpApi.cs
new file mode 100644 (file)
index 0000000..b7f3043
--- /dev/null
@@ -0,0 +1,164 @@
+using System.Collections;
+
+namespace System.Net
+{
+       static class UnsafeNclNativeMethods
+       {
+               internal static unsafe class HttpApi 
+               {
+                       const int HttpHeaderRequestMaximum  = (int)HttpRequestHeader.UserAgent + 1;
+                       const int HttpHeaderResponseMaximum = (int)HttpResponseHeader.WwwAuthenticate + 1;
+
+                       internal static class HTTP_REQUEST_HEADER_ID {
+                               internal static string ToString(int position) {
+                                       return m_Strings[position];
+                               }
+
+                               private static string[] m_Strings = {
+                                       "Cache-Control",
+                                       "Connection",
+                                       "Date",
+                                       "Keep-Alive",
+                                       "Pragma",
+                                       "Trailer",
+                                       "Transfer-Encoding",
+                                       "Upgrade",
+                                       "Via",
+                                       "Warning",
+
+                                       "Allow",
+                                       "Content-Length",
+                                       "Content-Type",
+                                       "Content-Encoding",
+                                       "Content-Language",
+                                       "Content-Location",
+                                       "Content-MD5",
+                                       "Content-Range",
+                                       "Expires",
+                                       "Last-Modified",
+
+                                       "Accept",
+                                       "Accept-Charset",
+                                       "Accept-Encoding",
+                                       "Accept-Language",
+                                       "Authorization",
+                                       "Cookie",
+                                       "Expect",
+                                       "From",
+                                       "Host",
+                                       "If-Match",
+
+                                       "If-Modified-Since",
+                                       "If-None-Match",
+                                       "If-Range",
+                                       "If-Unmodified-Since",
+                                       "Max-Forwards",
+                                       "Proxy-Authorization",
+                                       "Referer",
+                                       "Range",
+                                       "Te",
+                                       "Translate",
+                                       "User-Agent",
+                               };
+                       }
+
+                       internal static class HTTP_RESPONSE_HEADER_ID {
+                               private static Hashtable m_Hashtable;
+
+                               static HTTP_RESPONSE_HEADER_ID() {
+                                       m_Hashtable = new Hashtable((int)Enum.HttpHeaderResponseMaximum);
+                                       for (int i = 0; i < (int)Enum.HttpHeaderResponseMaximum; i++) {
+                                               m_Hashtable.Add(m_Strings[i], i);
+                                       }
+                               }
+
+                               internal static int IndexOfKnownHeader(string HeaderName) {
+                                       object index = m_Hashtable[HeaderName];
+                                       return index==null ? -1 : (int)index;
+                                }
+
+                               internal static string ToString(int position) {
+                                       return m_Strings[position];
+                               }
+                       }
+
+                       internal enum Enum {
+                               HttpHeaderCacheControl          = 0,    // general-header [section 4.5]
+                               HttpHeaderConnection            = 1,    // general-header [section 4.5]
+                               HttpHeaderDate                  = 2,    // general-header [section 4.5]
+                               HttpHeaderKeepAlive             = 3,    // general-header [not in rfc]
+                               HttpHeaderPragma                = 4,    // general-header [section 4.5]
+                               HttpHeaderTrailer               = 5,    // general-header [section 4.5]
+                               HttpHeaderTransferEncoding      = 6,    // general-header [section 4.5]
+                               HttpHeaderUpgrade               = 7,    // general-header [section 4.5]
+                               HttpHeaderVia                   = 8,    // general-header [section 4.5]
+                               HttpHeaderWarning               = 9,    // general-header [section 4.5]
+
+                               HttpHeaderAllow                 = 10,   // entity-header  [section 7.1]
+                               HttpHeaderContentLength         = 11,   // entity-header  [section 7.1]
+                               HttpHeaderContentType           = 12,   // entity-header  [section 7.1]
+                               HttpHeaderContentEncoding       = 13,   // entity-header  [section 7.1]
+                               HttpHeaderContentLanguage       = 14,   // entity-header  [section 7.1]
+                               HttpHeaderContentLocation       = 15,   // entity-header  [section 7.1]
+                               HttpHeaderContentMd5            = 16,   // entity-header  [section 7.1]
+                               HttpHeaderContentRange          = 17,   // entity-header  [section 7.1]
+                               HttpHeaderExpires               = 18,   // entity-header  [section 7.1]
+                               HttpHeaderLastModified          = 19,   // entity-header  [section 7.1]
+
+
+                               // Response Headers
+
+                               HttpHeaderAcceptRanges          = 20,   // response-header [section 6.2]
+                               HttpHeaderAge                   = 21,   // response-header [section 6.2]
+                               HttpHeaderEtag                  = 22,   // response-header [section 6.2]
+                               HttpHeaderLocation              = 23,   // response-header [section 6.2]
+                               HttpHeaderProxyAuthenticate     = 24,   // response-header [section 6.2]
+                               HttpHeaderRetryAfter            = 25,   // response-header [section 6.2]
+                               HttpHeaderServer                = 26,   // response-header [section 6.2]
+                               HttpHeaderSetCookie             = 27,   // response-header [not in rfc]
+                               HttpHeaderVary                  = 28,   // response-header [section 6.2]
+                               HttpHeaderWwwAuthenticate       = 29,   // response-header [section 6.2]
+
+                               HttpHeaderResponseMaximum       = 30,
+
+
+                               HttpHeaderMaximum               = 41
+                       }
+
+                       private static string[] m_Strings = {
+                               "Cache-Control",
+                               "Connection",
+                               "Date",
+                               "Keep-Alive",
+                               "Pragma",
+                               "Trailer",
+                               "Transfer-Encoding",
+                               "Upgrade",
+                               "Via",
+                               "Warning",
+
+                               "Allow",
+                               "Content-Length",
+                               "Content-Type",
+                               "Content-Encoding",
+                               "Content-Language",
+                               "Content-Location",
+                               "Content-MD5",
+                               "Content-Range",
+                               "Expires",
+                               "Last-Modified",
+
+                               "Accept-Ranges",
+                               "Age",
+                               "ETag",
+                               "Location",
+                               "Proxy-Authenticate",
+                               "Retry-After",
+                               "Server",
+                               "Set-Cookie",
+                               "Vary",
+                               "WWW-Authenticate",
+                       };
+               }
+       }
+}
\ No newline at end of file
index fe8da2b35823b9b8680f57a91ba898afb2ef4634..b5b773e28c4f186888e9a03b710e7524d4c66c23 100644 (file)
@@ -22,18 +22,48 @@ namespace System.Net {
                }
 
                [Conditional ("TRACE")]
-               internal static void Enter(TraceSource traceSource, object obj, string method, object paramObject) {
-               }
+               internal static void Enter(TraceSource traceSource, object obj, string method, object paramObject) {
+               }
+
+               [Conditional ("TRACE")]
+               internal static void Enter(TraceSource traceSource, string msg) {
+               }
+
+               [Conditional ("TRACE")]
+               internal static void Exception(TraceSource traceSource, object obj, string method, Exception e) {
+               }
 
                [Conditional ("TRACE")]
                internal static void Exit(TraceSource traceSource, object obj, string method, object retObject) {
                }
 
+               [Conditional ("TRACE")]
+               internal static void Exit(TraceSource traceSource, string msg) {
+               }
+
+               [Conditional ("TRACE")]
                internal static void PrintInfo(TraceSource traceSource, object obj, string method, string msg) {
                }
 
+               [Conditional ("TRACE")]
+               internal static void PrintInfo(TraceSource traceSource, object obj, string msg) {
+               }
+
+               [Conditional ("TRACE")]
+               internal static void PrintInfo(TraceSource traceSource, string msg) {
+               }
+
+               [Conditional ("TRACE")]
                internal static void PrintWarning(TraceSource traceSource, object obj, string method, string msg) {
                }
+
+               [Conditional ("TRACE")]
+               internal static void PrintWarning(TraceSource traceSource, string msg) {
+               }
+
+               [Conditional ("TRACE")]
+               internal static void PrintError(TraceSource traceSource, string msg) {
+               }
        }
 
 #if MOBILE
index ca41ea97acc3c02541182d20d68ee18ccea42033..d2386472e08b004c4cc73f5225a0da81af5e7a46 100644 (file)
@@ -38,6 +38,15 @@ namespace Microsoft.Win32
                public const int WAIT_ABANDONED   = 0x00000080;
                public const int WAIT_ABANDONED_0 = WAIT_ABANDONED;
 
+               public const int ERROR_FILE_NOT_FOUND = 2;
+               public const int ERROR_PATH_NOT_FOUND = 3;
+               public const int ERROR_ACCESS_DENIED = 5;
+               public const int ERROR_INVALID_HANDLE = 6;
+               public const int ERROR_SHARING_VIOLATION = 32;
+               public const int ERROR_INVALID_NAME = 0x7B;
+               public const int ERROR_ALREADY_EXISTS = 183;
+               public const int ERROR_FILENAME_EXCED_RANGE = 0xCE;
+
                public static bool DuplicateHandle(HandleRef hSourceProcessHandle, SafeHandle hSourceHandle, HandleRef hTargetProcess,
                        out SafeWaitHandle targetHandle, int dwDesiredAccess, bool bInheritHandle, int dwOptions)
                {
diff --git a/mcs/class/System/ReferenceSources/RequestCacheProtocol.cs b/mcs/class/System/ReferenceSources/RequestCacheProtocol.cs
new file mode 100644 (file)
index 0000000..b9805f3
--- /dev/null
@@ -0,0 +1,10 @@
+namespace System.Net.Cache
+{
+       class RequestCacheProtocol
+       {
+               public RequestCacheProtocol (object arg1, object arg2)
+               {
+                       throw new NotImplementedException ();
+               }
+       }
+}
\ No newline at end of file
index 35d8f634c02343e74fa0d4c0de01d6c69129a832..cfcd038e9b54b2ee876d4b8b5d5010f9275ecacd 100644 (file)
@@ -3,10 +3,14 @@
 //
 // Copyright 2014 Xamarin Inc
 //
-// Mono-specific additions, which are not in SR.cs.
+// Mono-specific additions, which are not in SR.cs or missing in referencesource
 //
 partial class SR
 {
        public const string mono_net_io_shutdown = "mono_net_io_shutdown";
        public const string mono_net_io_renegotiate = "mono_net_io_renegotiate";
+
+       public const string net_log_set_socketoption_reuseport_default_on = "net_log_set_socketoption_reuseport_default_on";
+       public const string net_log_set_socketoption_reuseport_not_supported = "net_log_set_socketoption_reuseport_not_supported";
+       public const string net_log_set_socketoption_reuseport = "net_log_set_socketoption_reuseport";
 }
index 595c569e6c4a39edb008bec8bff173773ddda1ff..afe34459bbb58f8ae30911fd6b10b158757feed1 100644 (file)
@@ -1,3 +1,5 @@
+using System.Net.Security;
+
 namespace System.Net.Configuration {
        sealed class SettingsSectionInternal
        {
@@ -15,5 +17,14 @@ namespace System.Net.Configuration {
 #endif
 
                internal bool HttpListenerUnescapeRequestUrl = true;
+
+
+               internal bool UseNagleAlgorithm { get; set; }
+               internal bool Expect100Continue { get; set; }
+               internal bool CheckCertificateName { get; private set; }
+               internal int DnsRefreshTimeout { get; set; }
+               internal bool EnableDnsRoundRobin { get; set; }
+               internal bool CheckCertificateRevocationList { get; set; }
+               internal EncryptionPolicy EncryptionPolicy { get; private set; }
        }
 }
diff --git a/mcs/class/System/ReferenceSources/SystemNetworkCredential.cs b/mcs/class/System/ReferenceSources/SystemNetworkCredential.cs
deleted file mode 100644 (file)
index 71f87c8..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-namespace System.Net {
-    //
-    // Object representing default credentials
-    //
-    internal class SystemNetworkCredential : NetworkCredential {
-        internal static readonly SystemNetworkCredential defaultCredential = new SystemNetworkCredential();
-
-        // We want reference equality to work.  Making this private is a good way to guarantee that.
-        private SystemNetworkCredential() :
-            base(string.Empty, string.Empty, string.Empty) {
-        }
-    }
-}
\ No newline at end of file
diff --git a/mcs/class/System/ReferenceSources/WebHeaderCollectionType.cs b/mcs/class/System/ReferenceSources/WebHeaderCollectionType.cs
deleted file mode 100644 (file)
index fdca141..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-namespace System.Net {
-    internal enum WebHeaderCollectionType : ushort {
-        Unknown,
-        WebRequest,
-        WebResponse,
-        HttpWebRequest,
-        HttpWebResponse,
-        HttpListenerRequest,
-        HttpListenerResponse,
-        FtpWebRequest,
-        FtpWebResponse,
-        FileWebRequest,
-        FileWebResponse,
-    }
-} 
\ No newline at end of file
diff --git a/mcs/class/System/System-bare-build.csproj b/mcs/class/System/System-bare-build.csproj
deleted file mode 100644 (file)
index 58abff9..0000000
+++ /dev/null
@@ -1,1183 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{E474AE8F-9163-4A93-A5E7-D93B56468E32}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <OutputPath>./../../class/lib/build/bare</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeProvider.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeProvider.cs" />\r
-    <Compile Include="Microsoft.Win32\IntranetZoneCredentialPolicy.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModes.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndReasons.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchReason.cs" />\r
-    <Compile Include="Microsoft.Win32\SystemEvents.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceCategory.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventHandler.cs" />\r
-    <Compile Include="Mono.Http\NtlmClient.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsHeader.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsOpCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsPacket.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuery.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuestion.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsRCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecord.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordAAAA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordCName.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordIPAddress.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordPTR.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResponse.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsUtil.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverAsyncOperation.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverError.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolver.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolverEventArgs.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomProvider.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Compiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerError.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerInfo.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerParameters.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOption.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOptionsCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerResults.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Executor.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratorSupport.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\IndentedTextWriter.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\LanguageOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\TempFileCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeAssignStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgument.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="System.CodeDom\CodeCastExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClause.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeChecksumPragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeComment.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeConditionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectionExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeGotoStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeIterationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLabeledStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLinePragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberEvent.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberField.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberProperty.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespace.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImport.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeObject.cs" />\r
-    <Compile Include="System.CodeDom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionMode.cs" />\r
-    <Compile Include="System.CodeDom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDelegate.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameter.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReference.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceOptions.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\FieldDirection.cs" />\r
-    <Compile Include="System.CodeDom\ICodeDomVisitor.cs" />\r
-    <Compile Include="System.CodeDom\MemberAttributes.cs" />\r
-    <Compile Include="System.Collections.Concurrent\BlockingCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="System.Collections.Generic\ISet.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedList.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedListNode.cs" />\r
-    <Compile Include="System.Collections.Generic\Queue.cs" />\r
-    <Compile Include="System.Collections.Generic\RBTree.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedList.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedSet.cs" />\r
-    <Compile Include="System.Collections.Generic\Stack.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ObservableCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyObservableCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\BitVector32.cs" />\r
-    <Compile Include="System.Collections.Specialized\CollectionsUtil.cs" />\r
-    <Compile Include="System.Collections.Specialized\HybridDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\INotifyCollectionChanged.cs" />\r
-    <Compile Include="System.Collections.Specialized\IOrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ListDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameObjectCollectionBase.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameValueCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedAction.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventArgs.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventHandler.cs" />\r
-    <Compile Include="System.Collections.Specialized\OrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ProcessStringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringEnumerator.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ContextStack.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerLoader.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost2.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\INameCreationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationship.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\SerializationStore.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CheckoutException.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CommandID.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransaction.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerb.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerbCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpContextType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentChangeService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentInitializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerEventService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerFilter.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDictionaryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IEventBindingService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderListService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IHelpService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IInheritanceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IMenuCommandService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IReferenceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IResourceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IRootDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ISelectionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITreeDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeResolutionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\MenuCommand.cs" />\r
-    <Compile Include="System.ComponentModel.Design\RuntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\SelectionTypes.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardCommands.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardToolWindows.cs" />\r
-    <Compile Include="System.ComponentModel.Design\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ViewTechnology.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AmbientValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ArrayConverter.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperation.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperationManager.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeCollection.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BackgroundWorker.cs" />\r
-    <Compile Include="System.ComponentModel\BaseNumberConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BindableSupport.cs" />\r
-    <Compile Include="System.ComponentModel\BindingDirection.cs" />\r
-    <Compile Include="System.ComponentModel\BindingList.cs" />\r
-    <Compile Include="System.ComponentModel\BooleanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\CharConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeAction.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\Component.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentEditor.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentResourceManager.cs" />\r
-    <Compile Include="System.ComponentModel\Container.cs" />\r
-    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />\r
-    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodType.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DecimalConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DerivedPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DescriptionAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DisplayNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DoubleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\EditorAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableState.cs" />\r
-    <Compile Include="System.ComponentModel\EnumConverter.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\EventHandlerList.cs" />\r
-    <Compile Include="System.ComponentModel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\GuidConverter.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingList.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingListView.cs" />\r
-    <Compile Include="System.ComponentModel\ICancelAddNew.cs" />\r
-    <Compile Include="System.ComponentModel\IChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IComponent.cs" />\r
-    <Compile Include="System.ComponentModel\IContainer.cs" />\r
-    <Compile Include="System.ComponentModel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\IDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\IEditableObject.cs" />\r
-    <Compile Include="System.ComponentModel\IExtenderProvider.cs" />\r
-    <Compile Include="System.ComponentModel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="System.ComponentModel\IListSource.cs" />\r
-    <Compile Include="System.ComponentModel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\INestedSite.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />\r
-    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InstanceCreationEditor.cs" />\r
-    <Compile Include="System.ComponentModel\Int16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="System.ComponentModel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="System.ComponentModel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\ISite.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitialize.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="System.ComponentModel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="System.ComponentModel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="System.ComponentModel\ITypedList.cs" />\r
-    <Compile Include="System.ComponentModel\License.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseException.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseManager.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseUsageMode.cs" />\r
-    <Compile Include="System.ComponentModel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\ListBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedType.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescription.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDirection.cs" />\r
-    <Compile Include="System.ComponentModel\LocalizableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MarshalByValueComponent.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextProvider.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextResultHint.cs" />\r
-    <Compile Include="System.ComponentModel\MemberDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MultilineStringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\NestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\NullableConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabScope.cs" />\r
-    <Compile Include="System.ComponentModel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReferenceConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionEventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshProperties.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunInstallerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\SByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\SingleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\StringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SyntaxCheck.cs" />\r
-    <Compile Include="System.ComponentModel\TimeSpanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\TypeListConverter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\WarningException.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapper.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapperComparer.cs" />\r
-    <Compile Include="System.ComponentModel\Win32Exception.cs" />\r
-    <Compile Include="System.Configuration\ApplicationScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsBase.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsGroup.cs" />\r
-    <Compile Include="System.Configuration\AppSettingsReader.cs" />\r
-    <Compile Include="System.Configuration\ClientSettingsSection.cs" />\r
-    <Compile Include="System.Configuration\ConfigHelper.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationException.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationSettings.cs" />\r
-    <Compile Include="System.Configuration\ConfigXmlDocument.cs" />\r
-    <Compile Include="System.Configuration\CustomizableFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\DefaultSettingValueAttribute.cs" />\r
-    <Compile Include="System.Configuration\DictionarySectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IApplicationSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSystem.cs" />\r
-    <Compile Include="System.Configuration\IConfigXmlNode.cs" />\r
-    <Compile Include="System.Configuration\IdnElement.cs" />\r
-    <Compile Include="System.Configuration\IgnoreSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IPersistComponentSettings.cs" />\r
-    <Compile Include="System.Configuration\IriParsingElement.cs" />\r
-    <Compile Include="System.Configuration\ISettingsProviderService.cs" />\r
-    <Compile Include="System.Configuration\LocalFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\NameValueFileSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NameValueSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NoSettingsVersionUpgradeAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingElement.cs" />\r
-    <Compile Include="System.Configuration\SettingElementCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsAttributeDictionary.cs" />\r
-    <Compile Include="System.Configuration\SettingsBase.cs" />\r
-    <Compile Include="System.Configuration\SettingsContext.cs" />\r
-    <Compile Include="System.Configuration\SettingsDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupNameAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageability.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageabilityAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProperty.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyIsReadOnlyException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyNotFoundException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValue.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValueCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyWrongTypeException.cs" />\r
-    <Compile Include="System.Configuration\SettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsSavingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAs.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAsAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingValueElement.cs" />\r
-    <Compile Include="System.Configuration\SingleTagSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\SpecialSetting.cs" />\r
-    <Compile Include="System.Configuration\SpecialSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UriSection.cs" />\r
-    <Compile Include="System.Configuration\UserScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UserSettingsGroup.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\ExcludeFromCodeCoverageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\AlphabeticalEnumConverter.cs" />\r
-    <Compile Include="System.Diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSample.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSampleCalculator.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\Debug.cs" />\r
-    <Compile Include="System.Diagnostics\DefaultTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DiagnosticsConfigurationHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EventInstance.cs" />\r
-    <Compile Include="System.Diagnostics\EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryType.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogImpl.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermission.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\EventSourceCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\EventTypeFilter.cs" />\r
-    <Compile Include="System.Diagnostics\FileVersionInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ICollectData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollectionCollection.cs" />\r
-    <Compile Include="System.Diagnostics\LocalFileEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\MonitoringDescriptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\NullEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\OverflowAction.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounter.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategory.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategoryType.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstanceLifetime.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterManager.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermission.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterType.cs" />\r
-    <Compile Include="System.Diagnostics\Process.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModule.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModuleCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessPriorityClass.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessStartInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThread.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThreadCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessWindowStyle.cs" />\r
-    <Compile Include="System.Diagnostics\SourceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\SourceLevels.cs" />\r
-    <Compile Include="System.Diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Stopwatch.cs" />\r
-    <Compile Include="System.Diagnostics\Switch.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadPriorityLevel.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadState.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadWaitReason.cs" />\r
-    <Compile Include="System.Diagnostics\Trace.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventType.cs" />\r
-    <Compile Include="System.Diagnostics\TraceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\TraceImpl.cs" />\r
-    <Compile Include="System.Diagnostics\TraceLevel.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListenerCollection.cs" />\r
-    <Compile Include="System.Diagnostics\TraceOptions.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSource.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSourceInfo.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Win32EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionLevel.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionMode.cs" />\r
-    <Compile Include="System.IO.Compression\DeflateStream.cs" />\r
-    <Compile Include="System.IO.Compression\GZipStream.cs" />\r
-    <Compile Include="System.IO.Ports\Handshake.cs" />\r
-    <Compile Include="System.IO.Ports\ISerialStream.cs" />\r
-    <Compile Include="System.IO.Ports\Parity.cs" />\r
-    <Compile Include="System.IO.Ports\SerialData.cs" />\r
-    <Compile Include="System.IO.Ports\SerialError.cs" />\r
-    <Compile Include="System.IO.Ports\SerialErrorEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChange.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChangedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPort.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPortStream.cs" />\r
-    <Compile Include="System.IO.Ports\SerialReceivedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialSignal.cs" />\r
-    <Compile Include="System.IO.Ports\StopBits.cs" />\r
-    <Compile Include="System.IO.Ports\WinSerialStream.cs" />\r
-    <Compile Include="System.IO\DefaultWatcher.cs" />\r
-    <Compile Include="System.IO\ErrorEventArgs.cs" />\r
-    <Compile Include="System.IO\ErrorEventHandler.cs" />\r
-    <Compile Include="System.IO\FAMWatcher.cs" />\r
-    <Compile Include="System.IO\FileAction.cs" />\r
-    <Compile Include="System.IO\FileSystemEventArgs.cs" />\r
-    <Compile Include="System.IO\FileSystemEventHandler.cs" />\r
-    <Compile Include="System.IO\FileSystemWatcher.cs" />\r
-    <Compile Include="System.IO\IFileWatcher.cs" />\r
-    <Compile Include="System.IO\InotifyWatcher.cs" />\r
-    <Compile Include="System.IO\InternalBufferOverflowException.cs" />\r
-    <Compile Include="System.IO\InvalidDataException.cs" />\r
-    <Compile Include="System.IO\IODescriptionAttribute.cs" />\r
-    <Compile Include="System.IO\KeventWatcher.cs" />\r
-    <Compile Include="System.IO\MonoSyncFileStream.cs" />\r
-    <Compile Include="System.IO\NotifyFilters.cs" />\r
-    <Compile Include="System.IO\NullFileWatcher.cs" />\r
-    <Compile Include="System.IO\RenamedEventArgs.cs" />\r
-    <Compile Include="System.IO\RenamedEventHandler.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\WaitForChangedResult.cs" />\r
-    <Compile Include="System.IO\WatcherChangeTypes.cs" />\r
-    <Compile Include="System.IO\WindowsWatcher.cs" />\r
-    <Compile Include="System.Media\AudioData.cs" />\r
-    <Compile Include="System.Media\AudioDevice.cs" />\r
-    <Compile Include="System.Media\SoundPlayer.cs" />\r
-    <Compile Include="System.Media\SystemSound.cs" />\r
-    <Compile Include="System.Media\SystemSounds.cs" />\r
-    <Compile Include="System.Media\Win32SoundPlayer.cs" />\r
-    <Compile Include="System.Net.Cache\HttpCacheAgeControl.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModulesSection.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElement.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementSection.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxyHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxySection.cs" />\r
-    <Compile Include="System.Net.Configuration\FtpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpWebRequestElement.cs" />\r
-    <Compile Include="System.Net.Configuration\Ipv6Element.cs" />\r
-    <Compile Include="System.Net.Configuration\MailSettingsSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\ModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\NetAuthenticationModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetConfigurationHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\PerformanceCountersElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ProxyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\RequestCachingSection.cs" />\r
-    <Compile Include="System.Net.Configuration\ServicePointManagerElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SettingsSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpNetworkElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSpecifiedPickupDirectoryElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SocketElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebProxyScriptElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModulesSection.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateView.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateViewCollection.cs" />\r
-    <Compile Include="System.Net.Mail\Attachment.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentBase.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentCollection.cs" />\r
-    <Compile Include="System.Net.Mail\DeliveryNotificationOptions.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResource.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResourceCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddress.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddressCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailMessage.cs" />\r
-    <Compile Include="System.Net.Mail\MailPriority.cs" />\r
-    <Compile Include="System.Net.Mail\SendCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpAccess.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpClient.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpDeliveryMethod.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientsException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.Mime\ContentDisposition.cs" />\r
-    <Compile Include="System.Net.Mime\ContentType.cs" />\r
-    <Compile Include="System.Net.Mime\DispositionTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\MediaTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\TransferEncoding.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticatedStream.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticationLevel.cs" />\r
-    <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
-    <Compile Include="System.Net.Security\NegotiateStream.cs" />\r
-    <Compile Include="System.Net.Security\ProtectionLevel.cs" />\r
-    <Compile Include="System.Net.Security\RemoteCertificateValidationCallback.cs" />\r
-    <Compile Include="System.Net.Security\SslPolicyErrors.cs" />\r
-    <Compile Include="System.Net.Security\SslStream.cs" />\r
-    <Compile Include="System.Net.Sockets\AddressFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\IOControlCode.cs" />\r
-    <Compile Include="System.Net.Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\IPv6MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\LingerOption.cs" />\r
-    <Compile Include="System.Net.Sockets\MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\NetworkStream.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolType.cs" />\r
-    <Compile Include="System.Net.Sockets\SelectMode.cs" />\r
-    <Compile Include="System.Net.Sockets\SendPacketsElement.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket_2_1.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncEventArgs.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncOperation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketError.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketException.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketFlags.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionName.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketShutdown.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketType.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpListener.cs" />\r
-    <Compile Include="System.Net.Sockets\TransmitFileOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocketOptions.cs" />\r
-    <Compile Include="System.Net.WebSockets\HttpListenerWebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\StreamWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketCloseStatus.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketError.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketException.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketMessageType.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
-    <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
-    <Compile Include="System.Net\BasicClient.cs" />\r
-    <Compile Include="System.Net\BindIPEndPoint.cs" />\r
-    <Compile Include="System.Net\ChunkedInputStream.cs" />\r
-    <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\Cookie.cs" />\r
-    <Compile Include="System.Net\CookieCollection.cs" />\r
-    <Compile Include="System.Net\CookieContainer.cs" />\r
-    <Compile Include="System.Net\CookieException.cs" />\r
-    <Compile Include="System.Net\CookieParser.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
-    <Compile Include="System.Net\DecompressionMethods.cs" />\r
-    <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
-    <Compile Include="System.Net\DigestClient.cs" />\r
-    <Compile Include="System.Net\Dns.cs" />\r
-    <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
-    <Compile Include="System.Net\DnsPermission.cs" />\r
-    <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
-    <Compile Include="System.Net\EndPointListener.cs" />\r
-    <Compile Include="System.Net\EndPointManager.cs" />\r
-    <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
-    <Compile Include="System.Net\FtpAsyncResult.cs" />\r
-    <Compile Include="System.Net\FtpDataStream.cs" />\r
-    <Compile Include="System.Net\FtpRequestCreator.cs" />\r
-    <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
-    <Compile Include="System.Net\FtpWebRequest.cs" />\r
-    <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
-    <Compile Include="System.Net\HttpConnection.cs" />\r
-    <Compile Include="System.Net\HttpContinueDelegate.cs" />\r
-    <Compile Include="System.Net\HttpListener.cs" />\r
-    <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
-    <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
-    <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
-    <Compile Include="System.Net\HttpListenerRequest.cs" />\r
-    <Compile Include="System.Net\HttpListenerResponse.cs" />\r
-    <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
-    <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpUtility.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
-    <Compile Include="System.Net\HttpWebRequest.cs" />\r
-    <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
-    <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
-    <Compile Include="System.Net\IPv6Address.cs" />\r
-    <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
-    <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
-    <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
-    <Compile Include="System.Net\ListenerPrefix.cs" />\r
-    <Compile Include="System.Net\MacProxy.cs" />\r
-    <Compile Include="System.Net\MonoHttpDate.cs" />\r
-    <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
-    <Compile Include="System.Net\NetworkCredential.cs" />\r
-    <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
-    <Compile Include="System.Net\RequestStream.cs" />\r
-    <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
-    <Compile Include="System.Net\ServicePoint.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
-    <Compile Include="System.Net\SimpleAsyncResult.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
-    <Compile Include="System.Net\SocketPermission.cs" />\r
-    <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\WebAsyncResult.cs" />\r
-    <Compile Include="System.Net\WebClient.cs" />\r
-    <Compile Include="System.Net\WebConnection.cs" />\r
-    <Compile Include="System.Net\WebConnectionData.cs" />\r
-    <Compile Include="System.Net\WebConnectionGroup.cs" />\r
-    <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebPermission.cs" />\r
-    <Compile Include="System.Net\WebPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
-    <Compile Include="System.Net\WebUtility.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IAdviseSink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDataObject.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumFORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumSTATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STGMEDIUM.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYMED.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleCollector.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StandardOleMarshalObject.cs" />\r
-    <Compile Include="System.Runtime.Versioning\FrameworkName.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreSecurity.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ConfigUtil.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ExtendedProtectionPolicyElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElementCollection.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBinding.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBindingKind.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicy.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicyTypeConverter.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\PolicyEnforcement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ProtectionScenario.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ServiceNameCollection.cs" />\r
-    <Compile Include="System.Security.Authentication\AuthenticationException.cs" />\r
-    <Compile Include="System.Security.Authentication\CipherAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\ExchangeAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\HashAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\InvalidCredentialException.cs" />\r
-    <Compile Include="System.Security.Authentication\SslProtocols.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OpenFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OSX509Certificates.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\PublicKey.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreLocation.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedNameFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509BasicConstraintsExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509EnhancedKeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Extension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509NameType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationFlag.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationMode.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Store.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509VerificationFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\arch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\BaseMachine.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\cache.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Capture.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CaptureCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\category.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CILCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\compiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\debug.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Group.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\GroupCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interval.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Match.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchEvaluator.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\parser.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\quicksearch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Regex.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexOptions.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunner.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\replace.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxInterpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxOp.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\syntax.cs" />\r
-    <Compile Include="System.Threading\Barrier.cs" />\r
-    <Compile Include="System.Threading\BarrierPostPhaseException.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
-    <Compile Include="System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="System.Timers\Timer.cs" />\r
-    <Compile Include="System.Timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermission.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
-    <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
-    <Compile Include="System\Platform.cs" />\r
-    <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriComponents.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriFormat.cs" />\r
-    <Compile Include="System\UriFormatException.cs" />\r
-    <Compile Include="System\UriHostNameType.cs" />\r
-    <Compile Include="System\UriIdnScope.cs" />\r
-    <Compile Include="System\UriKind.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
-    <Compile Include="System\UriPartial.cs" />\r
-    <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PreBuildEvent>
-    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PreBuildEvent>
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="../corlib/corlib-build.csproj">\r
-      <Project>{0CAF787F-F70B-4556-987A-67E036CD71C1}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/Asterisk.wav">\r
-      <LogicalName>Asterisk.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Beep.wav">\r
-      <LogicalName>Beep.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Exclamation.wav">\r
-      <LogicalName>Exclamation.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Hand.wav">\r
-      <LogicalName>Hand.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Question.wav">\r
-      <LogicalName>Question.wav</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
index 6151fc93565a8df0d60e801dbf84b86426270d3f..e748039ef2bb842653822fea1bbc110e9e04ed75 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/bare</OutputPath>\r
+    <IntermediateOutputPath>obj-bare</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME</DefineConstants>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME</DefineConstants>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\License.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\invariantcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\SecurityUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\WeakHashtable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookie.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookieexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Internal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SocketException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\webclient.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIFormatException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriHostNameType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIPartial.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\Timer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\threading\Barrier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\microsoft\win32\safehandles\SafeProcessHandle.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\License.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\misc\hresults.cs" />\r
+    <Compile Include="..\referencesource\System\misc\invariantcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System\misc\SecurityUtils.cs" />\r
+    <Compile Include="..\referencesource\System\misc\WeakHashtable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_DomainName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv4Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv6Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UncName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UriSyntax.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\GenericUriParser.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\IriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Connection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_emptywebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfoTable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HTTPDateParse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_IStreams.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_NetRes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_PooledStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ProxyChain.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_TimerThread.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_WebProxyDataBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationScheme.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationSchemeSelector.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Authorization.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Configuration\DefaultProxySection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\connectionpool.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookie.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookieexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\CredentialCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\DnsEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\EndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebrequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebresponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\FtpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\GlobalProxySelection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpRequestHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpResponseHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpVersion.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IAuthenticationModule.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICertificatePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentials.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentialsByHost.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Internal.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPHostEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\iwebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebProxyFinder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebRequestCreate.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkAccess.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\DuplicateAddressDetectionState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV4Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV6Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\interfacetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv4InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv6InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkAddressChange.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterface.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterfaceComponent.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\nodetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\OperationalStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PhysicalAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\pingexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingReply.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PrefixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SuffixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemGatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemMulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemTcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemUnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UdpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ProtocolViolationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportContext.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webclient.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebExceptionStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebHeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequestMethods.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebResponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebUtility.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URI.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\uribuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriExt.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIFormatException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHostNameType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriParserTemplates.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIPartial.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriScheme.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\Authentication\ExtendedProtection\TokenBinding.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\oid.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\x509\x509utils.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\Process.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\ProcessStartInfo.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\processwaithandle.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\Timer.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\IO\ports\InternalResources.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\Barrier.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
     <Compile Include="ReferenceSources\_SslState.cs" />\r
     <Compile Include="ReferenceSources\_SslStream.cs" />\r
     <Compile Include="ReferenceSources\AssertWrapper.cs" />\r
+    <Compile Include="ReferenceSources\AutoWebProxyScriptEngine.cs" />\r
     <Compile Include="ReferenceSources\BinaryCompatibility.cs" />\r
+    <Compile Include="ReferenceSources\CAPI.cs" />\r
     <Compile Include="ReferenceSources\ConfigurationManagerInternalFactory.cs" />\r
+    <Compile Include="ReferenceSources\EnvironmentHelpers.cs" />\r
+    <Compile Include="ReferenceSources\HttpApi.cs" />\r
     <Compile Include="ReferenceSources\HttpSysSettings.cs" />\r
     <Compile Include="ReferenceSources\Internal.cs" />\r
     <Compile Include="ReferenceSources\Logging.cs" />\r
     <Compile Include="ReferenceSources\NativeMethods.cs" />\r
+    <Compile Include="ReferenceSources\RequestCacheProtocol.cs" />\r
     <Compile Include="ReferenceSources\SettingsSectionInternal.cs" />\r
     <Compile Include="ReferenceSources\Socket.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
     <Compile Include="ReferenceSources\SSPIConfiguration.cs" />\r
     <Compile Include="ReferenceSources\SSPISafeHandles.cs" />\r
     <Compile Include="ReferenceSources\SSPIWrapper.cs" />\r
-    <Compile Include="ReferenceSources\SystemNetworkCredential.cs" />\r
-    <Compile Include="ReferenceSources\WebHeaderCollectionType.cs" />\r
     <Compile Include="ReferenceSources\Win32Exception.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
     <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
     <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.Security\EncryptionPolicy.cs" />\r
     <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
     <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
     <Compile Include="System.Net\BasicClient.cs" />\r
     <Compile Include="System.Net\BindIPEndPoint.cs" />\r
     <Compile Include="System.Net\ChunkedInputStream.cs" />\r
     <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
     <Compile Include="System.Net\DecompressionMethods.cs" />\r
     <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
     <Compile Include="System.Net\DigestClient.cs" />\r
     <Compile Include="System.Net\Dns.cs" />\r
     <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
     <Compile Include="System.Net\DnsPermission.cs" />\r
     <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
     <Compile Include="System.Net\EndPointListener.cs" />\r
     <Compile Include="System.Net\EndPointManager.cs" />\r
     <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
     <Compile Include="System.Net\FtpAsyncResult.cs" />\r
     <Compile Include="System.Net\FtpDataStream.cs" />\r
     <Compile Include="System.Net\FtpRequestCreator.cs" />\r
     <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
     <Compile Include="System.Net\FtpWebRequest.cs" />\r
     <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
     <Compile Include="System.Net\HttpConnection.cs" />\r
     <Compile Include="System.Net\HttpListener.cs" />\r
     <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
     <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
     <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
     <Compile Include="System.Net\HttpListenerRequest.cs" />\r
     <Compile Include="System.Net\HttpListenerResponse.cs" />\r
     <Compile Include="System.Net\HttpListenerTimeoutManager.cs" />\r
     <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
     <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
     <Compile Include="System.Net\HttpWebRequest.cs" />\r
     <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
     <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
     <Compile Include="System.Net\IPv6Address.cs" />\r
     <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
     <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
     <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
     <Compile Include="System.Net\ListenerPrefix.cs" />\r
     <Compile Include="System.Net\MacProxy.cs" />\r
     <Compile Include="System.Net\MonoHttpDate.cs" />\r
     <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
     <Compile Include="System.Net\NetworkCredential.cs" />\r
     <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
     <Compile Include="System.Net\RequestStream.cs" />\r
     <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
     <Compile Include="System.Net\ServicePoint.cs" />\r
     <Compile Include="System.Net\ServicePointManager.cs" />\r
     <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
     <Compile Include="System.Net\SimpleAsyncResult.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
     <Compile Include="System.Net\SocketPermission.cs" />\r
     <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
     <Compile Include="System.Net\WebAsyncResult.cs" />\r
     <Compile Include="System.Net\WebConnection.cs" />\r
     <Compile Include="System.Net\WebConnectionData.cs" />\r
     <Compile Include="System.Net\WebConnectionGroup.cs" />\r
     <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Impl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2ImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImpl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Helper2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidGroup.cs" />\r
     <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
     <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
     <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
     <Compile Include="System\IOSelector.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
     <Compile Include="System\Platform.cs" />\r
     <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriHelper.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
     <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
diff --git a/mcs/class/System/System-basic.csproj b/mcs/class/System/System-basic.csproj
deleted file mode 100644 (file)
index 0fbbcc6..0000000
+++ /dev/null
@@ -1,1192 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{808F7F56-308D-4978-8A44-A971BDADA3F6}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <OutputPath>./../../class/lib/basic</OutputPath>\r
-    <NoStdLib>False</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System</AssemblyName>\r
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;BOOTSTRAP_BASIC;CONFIGURATION_2_0;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;BOOTSTRAP_BASIC;CONFIGURATION_2_0;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="..\corlib\Mono\DataConverter.cs" />\r
-    <Compile Include="..\corlib\System.Collections.Generic\CollectionDebuggerView.cs" />\r
-    <Compile Include="..\corlib\System.Collections\CollectionDebuggerView.cs" />\r
-    <Compile Include="..\corlib\System.IO\MonoFileType.cs" />\r
-    <Compile Include="..\corlib\System.IO\MonoIO.cs" />\r
-    <Compile Include="..\corlib\System.IO\MonoIOError.cs" />\r
-    <Compile Include="..\corlib\System.IO\MonoIOStat.cs" />\r
-    <Compile Include="..\corlib\System.Threading.Tasks\CyclicDeque.cs" />\r
-    <Compile Include="..\corlib\System.Threading.Tasks\IConcurrentDeque.cs" />\r
-    <Compile Include="..\corlib\System.Threading.Tasks\PopResult.cs" />\r
-    <Compile Include="..\corlib\System.Threading\AtomicBoolean.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeProvider.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeProvider.cs" />\r
-    <Compile Include="Microsoft.Win32\IntranetZoneCredentialPolicy.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModes.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndReasons.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchReason.cs" />\r
-    <Compile Include="Microsoft.Win32\SystemEvents.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceCategory.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventHandler.cs" />\r
-    <Compile Include="Mono.Http\NtlmClient.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsHeader.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsOpCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsPacket.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuery.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuestion.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsRCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecord.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordAAAA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordCName.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordIPAddress.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordPTR.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResponse.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsUtil.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverAsyncOperation.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverError.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolver.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolverEventArgs.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomProvider.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Compiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerError.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerInfo.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerParameters.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOption.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOptionsCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerResults.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Executor.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratorSupport.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\IndentedTextWriter.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\LanguageOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\TempFileCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeAssignStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgument.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="System.CodeDom\CodeCastExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClause.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeChecksumPragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeComment.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeConditionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectionExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeGotoStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeIterationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLabeledStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLinePragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberEvent.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberField.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberProperty.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespace.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImport.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeObject.cs" />\r
-    <Compile Include="System.CodeDom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionMode.cs" />\r
-    <Compile Include="System.CodeDom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDelegate.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameter.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReference.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceOptions.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\FieldDirection.cs" />\r
-    <Compile Include="System.CodeDom\ICodeDomVisitor.cs" />\r
-    <Compile Include="System.CodeDom\MemberAttributes.cs" />\r
-    <Compile Include="System.Collections.Concurrent\BlockingCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="System.Collections.Generic\ISet.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedList.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedListNode.cs" />\r
-    <Compile Include="System.Collections.Generic\Queue.cs" />\r
-    <Compile Include="System.Collections.Generic\RBTree.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedList.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedSet.cs" />\r
-    <Compile Include="System.Collections.Generic\Stack.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ObservableCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyObservableCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\BitVector32.cs" />\r
-    <Compile Include="System.Collections.Specialized\CollectionsUtil.cs" />\r
-    <Compile Include="System.Collections.Specialized\HybridDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\INotifyCollectionChanged.cs" />\r
-    <Compile Include="System.Collections.Specialized\IOrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ListDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameObjectCollectionBase.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameValueCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedAction.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventArgs.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventHandler.cs" />\r
-    <Compile Include="System.Collections.Specialized\OrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ProcessStringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringEnumerator.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ContextStack.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerLoader.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost2.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\INameCreationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationship.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\SerializationStore.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CheckoutException.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CommandID.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransaction.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerb.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerbCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpContextType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentChangeService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentInitializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerEventService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerFilter.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDictionaryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IEventBindingService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderListService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IHelpService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IInheritanceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IMenuCommandService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IReferenceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IResourceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IRootDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ISelectionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITreeDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeResolutionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\MenuCommand.cs" />\r
-    <Compile Include="System.ComponentModel.Design\RuntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\SelectionTypes.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardCommands.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardToolWindows.cs" />\r
-    <Compile Include="System.ComponentModel.Design\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ViewTechnology.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AmbientValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ArrayConverter.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperation.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperationManager.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeCollection.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BackgroundWorker.cs" />\r
-    <Compile Include="System.ComponentModel\BaseNumberConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BindableSupport.cs" />\r
-    <Compile Include="System.ComponentModel\BindingDirection.cs" />\r
-    <Compile Include="System.ComponentModel\BindingList.cs" />\r
-    <Compile Include="System.ComponentModel\BooleanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\CharConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeAction.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\Component.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentEditor.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentResourceManager.cs" />\r
-    <Compile Include="System.ComponentModel\Container.cs" />\r
-    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />\r
-    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodType.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DecimalConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DerivedPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DescriptionAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DisplayNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DoubleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\EditorAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableState.cs" />\r
-    <Compile Include="System.ComponentModel\EnumConverter.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\EventHandlerList.cs" />\r
-    <Compile Include="System.ComponentModel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\GuidConverter.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingList.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingListView.cs" />\r
-    <Compile Include="System.ComponentModel\ICancelAddNew.cs" />\r
-    <Compile Include="System.ComponentModel\IChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IComponent.cs" />\r
-    <Compile Include="System.ComponentModel\IContainer.cs" />\r
-    <Compile Include="System.ComponentModel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\IDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\IEditableObject.cs" />\r
-    <Compile Include="System.ComponentModel\IExtenderProvider.cs" />\r
-    <Compile Include="System.ComponentModel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="System.ComponentModel\IListSource.cs" />\r
-    <Compile Include="System.ComponentModel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\INestedSite.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />\r
-    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InstanceCreationEditor.cs" />\r
-    <Compile Include="System.ComponentModel\Int16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="System.ComponentModel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="System.ComponentModel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\ISite.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitialize.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="System.ComponentModel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="System.ComponentModel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="System.ComponentModel\ITypedList.cs" />\r
-    <Compile Include="System.ComponentModel\License.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseException.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseManager.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseUsageMode.cs" />\r
-    <Compile Include="System.ComponentModel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\ListBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedType.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescription.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDirection.cs" />\r
-    <Compile Include="System.ComponentModel\LocalizableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MarshalByValueComponent.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextProvider.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextResultHint.cs" />\r
-    <Compile Include="System.ComponentModel\MemberDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MultilineStringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\NestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\NullableConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabScope.cs" />\r
-    <Compile Include="System.ComponentModel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReferenceConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionEventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshProperties.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunInstallerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\SByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\SingleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\StringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SyntaxCheck.cs" />\r
-    <Compile Include="System.ComponentModel\TimeSpanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\TypeListConverter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\WarningException.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapper.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapperComparer.cs" />\r
-    <Compile Include="System.ComponentModel\Win32Exception.cs" />\r
-    <Compile Include="System.Configuration\ApplicationScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsBase.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsGroup.cs" />\r
-    <Compile Include="System.Configuration\AppSettingsReader.cs" />\r
-    <Compile Include="System.Configuration\ClientSettingsSection.cs" />\r
-    <Compile Include="System.Configuration\ConfigHelper.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationException.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationSettings.cs" />\r
-    <Compile Include="System.Configuration\ConfigXmlDocument.cs" />\r
-    <Compile Include="System.Configuration\CustomizableFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\DefaultSettingValueAttribute.cs" />\r
-    <Compile Include="System.Configuration\DictionarySectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IApplicationSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSystem.cs" />\r
-    <Compile Include="System.Configuration\IConfigXmlNode.cs" />\r
-    <Compile Include="System.Configuration\IdnElement.cs" />\r
-    <Compile Include="System.Configuration\IgnoreSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IPersistComponentSettings.cs" />\r
-    <Compile Include="System.Configuration\IriParsingElement.cs" />\r
-    <Compile Include="System.Configuration\ISettingsProviderService.cs" />\r
-    <Compile Include="System.Configuration\LocalFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\NameValueFileSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NameValueSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NoSettingsVersionUpgradeAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingElement.cs" />\r
-    <Compile Include="System.Configuration\SettingElementCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsAttributeDictionary.cs" />\r
-    <Compile Include="System.Configuration\SettingsBase.cs" />\r
-    <Compile Include="System.Configuration\SettingsContext.cs" />\r
-    <Compile Include="System.Configuration\SettingsDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupNameAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageability.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageabilityAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProperty.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyIsReadOnlyException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyNotFoundException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValue.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValueCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyWrongTypeException.cs" />\r
-    <Compile Include="System.Configuration\SettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsSavingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAs.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAsAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingValueElement.cs" />\r
-    <Compile Include="System.Configuration\SingleTagSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\SpecialSetting.cs" />\r
-    <Compile Include="System.Configuration\SpecialSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UriSection.cs" />\r
-    <Compile Include="System.Configuration\UserScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UserSettingsGroup.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\ExcludeFromCodeCoverageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\AlphabeticalEnumConverter.cs" />\r
-    <Compile Include="System.Diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSample.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSampleCalculator.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\Debug.cs" />\r
-    <Compile Include="System.Diagnostics\DefaultTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DiagnosticsConfigurationHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EventInstance.cs" />\r
-    <Compile Include="System.Diagnostics\EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryType.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogImpl.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermission.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\EventSourceCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\EventTypeFilter.cs" />\r
-    <Compile Include="System.Diagnostics\FileVersionInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ICollectData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollectionCollection.cs" />\r
-    <Compile Include="System.Diagnostics\LocalFileEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\MonitoringDescriptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\NullEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\OverflowAction.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounter.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategory.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategoryType.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstanceLifetime.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterManager.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermission.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterType.cs" />\r
-    <Compile Include="System.Diagnostics\Process.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModule.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModuleCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessPriorityClass.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessStartInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThread.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThreadCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessWindowStyle.cs" />\r
-    <Compile Include="System.Diagnostics\SourceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\SourceLevels.cs" />\r
-    <Compile Include="System.Diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Stopwatch.cs" />\r
-    <Compile Include="System.Diagnostics\Switch.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadPriorityLevel.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadState.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadWaitReason.cs" />\r
-    <Compile Include="System.Diagnostics\Trace.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventType.cs" />\r
-    <Compile Include="System.Diagnostics\TraceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\TraceImpl.cs" />\r
-    <Compile Include="System.Diagnostics\TraceLevel.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListenerCollection.cs" />\r
-    <Compile Include="System.Diagnostics\TraceOptions.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSource.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSourceInfo.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Win32EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionLevel.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionMode.cs" />\r
-    <Compile Include="System.IO.Compression\DeflateStream.cs" />\r
-    <Compile Include="System.IO.Compression\GZipStream.cs" />\r
-    <Compile Include="System.IO.Ports\Handshake.cs" />\r
-    <Compile Include="System.IO.Ports\ISerialStream.cs" />\r
-    <Compile Include="System.IO.Ports\Parity.cs" />\r
-    <Compile Include="System.IO.Ports\SerialData.cs" />\r
-    <Compile Include="System.IO.Ports\SerialError.cs" />\r
-    <Compile Include="System.IO.Ports\SerialErrorEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChange.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChangedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPort.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPortStream.cs" />\r
-    <Compile Include="System.IO.Ports\SerialReceivedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialSignal.cs" />\r
-    <Compile Include="System.IO.Ports\StopBits.cs" />\r
-    <Compile Include="System.IO.Ports\WinSerialStream.cs" />\r
-    <Compile Include="System.IO\DefaultWatcher.cs" />\r
-    <Compile Include="System.IO\ErrorEventArgs.cs" />\r
-    <Compile Include="System.IO\ErrorEventHandler.cs" />\r
-    <Compile Include="System.IO\FAMWatcher.cs" />\r
-    <Compile Include="System.IO\FileAction.cs" />\r
-    <Compile Include="System.IO\FileSystemEventArgs.cs" />\r
-    <Compile Include="System.IO\FileSystemEventHandler.cs" />\r
-    <Compile Include="System.IO\FileSystemWatcher.cs" />\r
-    <Compile Include="System.IO\IFileWatcher.cs" />\r
-    <Compile Include="System.IO\InotifyWatcher.cs" />\r
-    <Compile Include="System.IO\InternalBufferOverflowException.cs" />\r
-    <Compile Include="System.IO\InvalidDataException.cs" />\r
-    <Compile Include="System.IO\IODescriptionAttribute.cs" />\r
-    <Compile Include="System.IO\KeventWatcher.cs" />\r
-    <Compile Include="System.IO\MonoSyncFileStream.cs" />\r
-    <Compile Include="System.IO\NotifyFilters.cs" />\r
-    <Compile Include="System.IO\NullFileWatcher.cs" />\r
-    <Compile Include="System.IO\RenamedEventArgs.cs" />\r
-    <Compile Include="System.IO\RenamedEventHandler.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\WaitForChangedResult.cs" />\r
-    <Compile Include="System.IO\WatcherChangeTypes.cs" />\r
-    <Compile Include="System.IO\WindowsWatcher.cs" />\r
-    <Compile Include="System.Media\AudioData.cs" />\r
-    <Compile Include="System.Media\AudioDevice.cs" />\r
-    <Compile Include="System.Media\SoundPlayer.cs" />\r
-    <Compile Include="System.Media\SystemSound.cs" />\r
-    <Compile Include="System.Media\SystemSounds.cs" />\r
-    <Compile Include="System.Media\Win32SoundPlayer.cs" />\r
-    <Compile Include="System.Net.Cache\HttpCacheAgeControl.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModulesSection.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElement.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementSection.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxyHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxySection.cs" />\r
-    <Compile Include="System.Net.Configuration\FtpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpWebRequestElement.cs" />\r
-    <Compile Include="System.Net.Configuration\Ipv6Element.cs" />\r
-    <Compile Include="System.Net.Configuration\MailSettingsSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\ModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\NetAuthenticationModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetConfigurationHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\PerformanceCountersElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ProxyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\RequestCachingSection.cs" />\r
-    <Compile Include="System.Net.Configuration\ServicePointManagerElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SettingsSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpNetworkElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSpecifiedPickupDirectoryElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SocketElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebProxyScriptElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModulesSection.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateView.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateViewCollection.cs" />\r
-    <Compile Include="System.Net.Mail\Attachment.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentBase.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentCollection.cs" />\r
-    <Compile Include="System.Net.Mail\DeliveryNotificationOptions.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResource.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResourceCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddress.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddressCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailMessage.cs" />\r
-    <Compile Include="System.Net.Mail\MailPriority.cs" />\r
-    <Compile Include="System.Net.Mail\SendCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpAccess.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpClient.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpDeliveryMethod.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientsException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.Mime\ContentDisposition.cs" />\r
-    <Compile Include="System.Net.Mime\ContentType.cs" />\r
-    <Compile Include="System.Net.Mime\DispositionTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\MediaTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\TransferEncoding.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticatedStream.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticationLevel.cs" />\r
-    <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
-    <Compile Include="System.Net.Security\NegotiateStream.cs" />\r
-    <Compile Include="System.Net.Security\ProtectionLevel.cs" />\r
-    <Compile Include="System.Net.Security\RemoteCertificateValidationCallback.cs" />\r
-    <Compile Include="System.Net.Security\SslPolicyErrors.cs" />\r
-    <Compile Include="System.Net.Security\SslStream.cs" />\r
-    <Compile Include="System.Net.Sockets\AddressFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\IOControlCode.cs" />\r
-    <Compile Include="System.Net.Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\IPv6MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\LingerOption.cs" />\r
-    <Compile Include="System.Net.Sockets\MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\NetworkStream.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolType.cs" />\r
-    <Compile Include="System.Net.Sockets\SelectMode.cs" />\r
-    <Compile Include="System.Net.Sockets\SendPacketsElement.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket_2_1.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncEventArgs.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncOperation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketError.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketException.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketFlags.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionName.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketShutdown.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketType.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpListener.cs" />\r
-    <Compile Include="System.Net.Sockets\TransmitFileOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocketOptions.cs" />\r
-    <Compile Include="System.Net.WebSockets\HttpListenerWebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketCloseStatus.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketError.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketException.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketMessageType.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
-    <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
-    <Compile Include="System.Net\BasicClient.cs" />\r
-    <Compile Include="System.Net\BindIPEndPoint.cs" />\r
-    <Compile Include="System.Net\ChunkedInputStream.cs" />\r
-    <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\Cookie.cs" />\r
-    <Compile Include="System.Net\CookieCollection.cs" />\r
-    <Compile Include="System.Net\CookieContainer.cs" />\r
-    <Compile Include="System.Net\CookieException.cs" />\r
-    <Compile Include="System.Net\CookieParser.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
-    <Compile Include="System.Net\DecompressionMethods.cs" />\r
-    <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
-    <Compile Include="System.Net\DigestClient.cs" />\r
-    <Compile Include="System.Net\Dns.cs" />\r
-    <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
-    <Compile Include="System.Net\DnsPermission.cs" />\r
-    <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
-    <Compile Include="System.Net\EndPointListener.cs" />\r
-    <Compile Include="System.Net\EndPointManager.cs" />\r
-    <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
-    <Compile Include="System.Net\FtpAsyncResult.cs" />\r
-    <Compile Include="System.Net\FtpDataStream.cs" />\r
-    <Compile Include="System.Net\FtpRequestCreator.cs" />\r
-    <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
-    <Compile Include="System.Net\FtpWebRequest.cs" />\r
-    <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
-    <Compile Include="System.Net\HttpConnection.cs" />\r
-    <Compile Include="System.Net\HttpContinueDelegate.cs" />\r
-    <Compile Include="System.Net\HttpListener.cs" />\r
-    <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
-    <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
-    <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
-    <Compile Include="System.Net\HttpListenerRequest.cs" />\r
-    <Compile Include="System.Net\HttpListenerResponse.cs" />\r
-    <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
-    <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpUtility.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
-    <Compile Include="System.Net\HttpWebRequest.cs" />\r
-    <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
-    <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
-    <Compile Include="System.Net\IPv6Address.cs" />\r
-    <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
-    <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
-    <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
-    <Compile Include="System.Net\ListenerPrefix.cs" />\r
-    <Compile Include="System.Net\MacProxy.cs" />\r
-    <Compile Include="System.Net\MonoHttpDate.cs" />\r
-    <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
-    <Compile Include="System.Net\NetworkCredential.cs" />\r
-    <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
-    <Compile Include="System.Net\RequestStream.cs" />\r
-    <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
-    <Compile Include="System.Net\ServicePoint.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
-    <Compile Include="System.Net\SocketPermission.cs" />\r
-    <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\WebAsyncResult.cs" />\r
-    <Compile Include="System.Net\WebClient.cs" />\r
-    <Compile Include="System.Net\WebConnection.cs" />\r
-    <Compile Include="System.Net\WebConnectionData.cs" />\r
-    <Compile Include="System.Net\WebConnectionGroup.cs" />\r
-    <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebPermission.cs" />\r
-    <Compile Include="System.Net\WebPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
-    <Compile Include="System.Net\WebUtility.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IAdviseSink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDataObject.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumFORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumSTATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STGMEDIUM.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYMED.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleCollector.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StandardOleMarshalObject.cs" />\r
-    <Compile Include="System.Runtime.Versioning\FrameworkName.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreSecurity.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ConfigUtil.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ExtendedProtectionPolicyElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElementCollection.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBinding.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBindingKind.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicy.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicyTypeConverter.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\PolicyEnforcement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ProtectionScenario.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ServiceNameCollection.cs" />\r
-    <Compile Include="System.Security.Authentication\AuthenticationException.cs" />\r
-    <Compile Include="System.Security.Authentication\CipherAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\ExchangeAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\HashAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\InvalidCredentialException.cs" />\r
-    <Compile Include="System.Security.Authentication\SslProtocols.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OpenFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OSX509Certificates.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\PublicKey.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreLocation.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedNameFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509BasicConstraintsExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509EnhancedKeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Extension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509NameType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationFlag.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationMode.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Store.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509VerificationFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\arch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\BaseMachine.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\cache.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Capture.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CaptureCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\category.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CILCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\compiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\debug.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Group.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\GroupCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interval.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Match.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchEvaluator.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\parser.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\quicksearch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Regex.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexOptions.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunner.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\replace.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxInterpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxOp.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\syntax.cs" />\r
-    <Compile Include="System.Threading\Barrier.cs" />\r
-    <Compile Include="System.Threading\BarrierPostPhaseException.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
-    <Compile Include="System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="System.Timers\Timer.cs" />\r
-    <Compile Include="System.Timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermission.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
-    <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
-    <Compile Include="System\Platform.cs" />\r
-    <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriComponents.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriFormat.cs" />\r
-    <Compile Include="System\UriFormatException.cs" />\r
-    <Compile Include="System\UriHostNameType.cs" />\r
-    <Compile Include="System\UriIdnScope.cs" />\r
-    <Compile Include="System\UriKind.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
-    <Compile Include="System\UriPartial.cs" />\r
-    <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <Reference Include="System.Xml.dll">\r
-      <SpecificVersion>False</SpecificVersion>\r
-      <HintPath>System.Xml.dll</HintPath>\r
-      <Private>False</Private>\r
-    </Reference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/Asterisk.wav">\r
-      <LogicalName>Asterisk.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Beep.wav">\r
-      <LogicalName>Beep.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Exclamation.wav">\r
-      <LogicalName>Exclamation.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Hand.wav">\r
-      <LogicalName>Hand.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Question.wav">\r
-      <LogicalName>Question.wav</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
diff --git a/mcs/class/System/System-build.csproj b/mcs/class/System/System-build.csproj
deleted file mode 100644 (file)
index 07f879e..0000000
+++ /dev/null
@@ -1,1181 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{78CDD7C1-0524-4A2A-BAA6-2A05CCD7116C}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeProvider.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeProvider.cs" />\r
-    <Compile Include="Microsoft.Win32\IntranetZoneCredentialPolicy.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModes.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndReasons.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchReason.cs" />\r
-    <Compile Include="Microsoft.Win32\SystemEvents.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceCategory.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventHandler.cs" />\r
-    <Compile Include="Mono.Http\NtlmClient.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsHeader.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsOpCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsPacket.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuery.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuestion.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsRCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecord.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordAAAA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordCName.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordIPAddress.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordPTR.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResponse.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsUtil.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverAsyncOperation.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverError.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolver.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolverEventArgs.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomProvider.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Compiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerError.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerInfo.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerParameters.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOption.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOptionsCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerResults.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Executor.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratorSupport.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\IndentedTextWriter.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\LanguageOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\TempFileCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeAssignStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgument.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="System.CodeDom\CodeCastExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClause.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeChecksumPragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeComment.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeConditionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectionExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeGotoStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeIterationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLabeledStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLinePragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberEvent.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberField.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberProperty.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespace.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImport.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeObject.cs" />\r
-    <Compile Include="System.CodeDom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionMode.cs" />\r
-    <Compile Include="System.CodeDom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDelegate.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameter.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReference.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceOptions.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\FieldDirection.cs" />\r
-    <Compile Include="System.CodeDom\ICodeDomVisitor.cs" />\r
-    <Compile Include="System.CodeDom\MemberAttributes.cs" />\r
-    <Compile Include="System.Collections.Concurrent\BlockingCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="System.Collections.Generic\ISet.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedList.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedListNode.cs" />\r
-    <Compile Include="System.Collections.Generic\Queue.cs" />\r
-    <Compile Include="System.Collections.Generic\RBTree.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedList.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedSet.cs" />\r
-    <Compile Include="System.Collections.Generic\Stack.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ObservableCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyObservableCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\BitVector32.cs" />\r
-    <Compile Include="System.Collections.Specialized\CollectionsUtil.cs" />\r
-    <Compile Include="System.Collections.Specialized\HybridDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\INotifyCollectionChanged.cs" />\r
-    <Compile Include="System.Collections.Specialized\IOrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ListDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameObjectCollectionBase.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameValueCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedAction.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventArgs.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventHandler.cs" />\r
-    <Compile Include="System.Collections.Specialized\OrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ProcessStringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringEnumerator.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ContextStack.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerLoader.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost2.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\INameCreationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationship.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\SerializationStore.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CheckoutException.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CommandID.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransaction.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerb.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerbCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpContextType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentChangeService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentInitializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerEventService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerFilter.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDictionaryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IEventBindingService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderListService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IHelpService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IInheritanceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IMenuCommandService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IReferenceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IResourceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IRootDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ISelectionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITreeDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeResolutionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\MenuCommand.cs" />\r
-    <Compile Include="System.ComponentModel.Design\RuntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\SelectionTypes.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardCommands.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardToolWindows.cs" />\r
-    <Compile Include="System.ComponentModel.Design\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ViewTechnology.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AmbientValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ArrayConverter.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperation.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperationManager.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeCollection.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BackgroundWorker.cs" />\r
-    <Compile Include="System.ComponentModel\BaseNumberConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BindableSupport.cs" />\r
-    <Compile Include="System.ComponentModel\BindingDirection.cs" />\r
-    <Compile Include="System.ComponentModel\BindingList.cs" />\r
-    <Compile Include="System.ComponentModel\BooleanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\CharConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeAction.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\Component.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentEditor.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentResourceManager.cs" />\r
-    <Compile Include="System.ComponentModel\Container.cs" />\r
-    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />\r
-    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodType.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DecimalConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DerivedPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DescriptionAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DisplayNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DoubleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\EditorAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableState.cs" />\r
-    <Compile Include="System.ComponentModel\EnumConverter.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\EventHandlerList.cs" />\r
-    <Compile Include="System.ComponentModel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\GuidConverter.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingList.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingListView.cs" />\r
-    <Compile Include="System.ComponentModel\ICancelAddNew.cs" />\r
-    <Compile Include="System.ComponentModel\IChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IComponent.cs" />\r
-    <Compile Include="System.ComponentModel\IContainer.cs" />\r
-    <Compile Include="System.ComponentModel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\IDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\IEditableObject.cs" />\r
-    <Compile Include="System.ComponentModel\IExtenderProvider.cs" />\r
-    <Compile Include="System.ComponentModel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="System.ComponentModel\IListSource.cs" />\r
-    <Compile Include="System.ComponentModel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\INestedSite.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />\r
-    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InstanceCreationEditor.cs" />\r
-    <Compile Include="System.ComponentModel\Int16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="System.ComponentModel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="System.ComponentModel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\ISite.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitialize.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="System.ComponentModel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="System.ComponentModel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="System.ComponentModel\ITypedList.cs" />\r
-    <Compile Include="System.ComponentModel\License.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseException.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseManager.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseUsageMode.cs" />\r
-    <Compile Include="System.ComponentModel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\ListBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedType.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescription.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDirection.cs" />\r
-    <Compile Include="System.ComponentModel\LocalizableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MarshalByValueComponent.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextProvider.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextResultHint.cs" />\r
-    <Compile Include="System.ComponentModel\MemberDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MultilineStringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\NestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\NullableConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabScope.cs" />\r
-    <Compile Include="System.ComponentModel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReferenceConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionEventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshProperties.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunInstallerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\SByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\SingleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\StringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SyntaxCheck.cs" />\r
-    <Compile Include="System.ComponentModel\TimeSpanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\TypeListConverter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\WarningException.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapper.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapperComparer.cs" />\r
-    <Compile Include="System.ComponentModel\Win32Exception.cs" />\r
-    <Compile Include="System.Configuration\ApplicationScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsBase.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsGroup.cs" />\r
-    <Compile Include="System.Configuration\AppSettingsReader.cs" />\r
-    <Compile Include="System.Configuration\ClientSettingsSection.cs" />\r
-    <Compile Include="System.Configuration\ConfigHelper.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationException.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationSettings.cs" />\r
-    <Compile Include="System.Configuration\ConfigXmlDocument.cs" />\r
-    <Compile Include="System.Configuration\CustomizableFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\DefaultSettingValueAttribute.cs" />\r
-    <Compile Include="System.Configuration\DictionarySectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IApplicationSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSystem.cs" />\r
-    <Compile Include="System.Configuration\IConfigXmlNode.cs" />\r
-    <Compile Include="System.Configuration\IdnElement.cs" />\r
-    <Compile Include="System.Configuration\IgnoreSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IPersistComponentSettings.cs" />\r
-    <Compile Include="System.Configuration\IriParsingElement.cs" />\r
-    <Compile Include="System.Configuration\ISettingsProviderService.cs" />\r
-    <Compile Include="System.Configuration\LocalFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\NameValueFileSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NameValueSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NoSettingsVersionUpgradeAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingElement.cs" />\r
-    <Compile Include="System.Configuration\SettingElementCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsAttributeDictionary.cs" />\r
-    <Compile Include="System.Configuration\SettingsBase.cs" />\r
-    <Compile Include="System.Configuration\SettingsContext.cs" />\r
-    <Compile Include="System.Configuration\SettingsDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupNameAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageability.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageabilityAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProperty.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyIsReadOnlyException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyNotFoundException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValue.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValueCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyWrongTypeException.cs" />\r
-    <Compile Include="System.Configuration\SettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsSavingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAs.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAsAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingValueElement.cs" />\r
-    <Compile Include="System.Configuration\SingleTagSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\SpecialSetting.cs" />\r
-    <Compile Include="System.Configuration\SpecialSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UriSection.cs" />\r
-    <Compile Include="System.Configuration\UserScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UserSettingsGroup.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\ExcludeFromCodeCoverageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\AlphabeticalEnumConverter.cs" />\r
-    <Compile Include="System.Diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSample.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSampleCalculator.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\Debug.cs" />\r
-    <Compile Include="System.Diagnostics\DefaultTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DiagnosticsConfigurationHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EventInstance.cs" />\r
-    <Compile Include="System.Diagnostics\EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryType.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogImpl.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermission.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\EventSourceCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\EventTypeFilter.cs" />\r
-    <Compile Include="System.Diagnostics\FileVersionInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ICollectData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollectionCollection.cs" />\r
-    <Compile Include="System.Diagnostics\LocalFileEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\MonitoringDescriptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\NullEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\OverflowAction.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounter.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategory.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategoryType.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstanceLifetime.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterManager.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermission.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterType.cs" />\r
-    <Compile Include="System.Diagnostics\Process.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModule.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModuleCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessPriorityClass.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessStartInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThread.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThreadCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessWindowStyle.cs" />\r
-    <Compile Include="System.Diagnostics\SourceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\SourceLevels.cs" />\r
-    <Compile Include="System.Diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Stopwatch.cs" />\r
-    <Compile Include="System.Diagnostics\Switch.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadPriorityLevel.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadState.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadWaitReason.cs" />\r
-    <Compile Include="System.Diagnostics\Trace.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventType.cs" />\r
-    <Compile Include="System.Diagnostics\TraceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\TraceImpl.cs" />\r
-    <Compile Include="System.Diagnostics\TraceLevel.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListenerCollection.cs" />\r
-    <Compile Include="System.Diagnostics\TraceOptions.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSource.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSourceInfo.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Win32EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionLevel.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionMode.cs" />\r
-    <Compile Include="System.IO.Compression\DeflateStream.cs" />\r
-    <Compile Include="System.IO.Compression\GZipStream.cs" />\r
-    <Compile Include="System.IO.Ports\Handshake.cs" />\r
-    <Compile Include="System.IO.Ports\ISerialStream.cs" />\r
-    <Compile Include="System.IO.Ports\Parity.cs" />\r
-    <Compile Include="System.IO.Ports\SerialData.cs" />\r
-    <Compile Include="System.IO.Ports\SerialError.cs" />\r
-    <Compile Include="System.IO.Ports\SerialErrorEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChange.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChangedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPort.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPortStream.cs" />\r
-    <Compile Include="System.IO.Ports\SerialReceivedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialSignal.cs" />\r
-    <Compile Include="System.IO.Ports\StopBits.cs" />\r
-    <Compile Include="System.IO.Ports\WinSerialStream.cs" />\r
-    <Compile Include="System.IO\DefaultWatcher.cs" />\r
-    <Compile Include="System.IO\ErrorEventArgs.cs" />\r
-    <Compile Include="System.IO\ErrorEventHandler.cs" />\r
-    <Compile Include="System.IO\FAMWatcher.cs" />\r
-    <Compile Include="System.IO\FileAction.cs" />\r
-    <Compile Include="System.IO\FileSystemEventArgs.cs" />\r
-    <Compile Include="System.IO\FileSystemEventHandler.cs" />\r
-    <Compile Include="System.IO\FileSystemWatcher.cs" />\r
-    <Compile Include="System.IO\IFileWatcher.cs" />\r
-    <Compile Include="System.IO\InotifyWatcher.cs" />\r
-    <Compile Include="System.IO\InternalBufferOverflowException.cs" />\r
-    <Compile Include="System.IO\InvalidDataException.cs" />\r
-    <Compile Include="System.IO\IODescriptionAttribute.cs" />\r
-    <Compile Include="System.IO\KeventWatcher.cs" />\r
-    <Compile Include="System.IO\MonoSyncFileStream.cs" />\r
-    <Compile Include="System.IO\NotifyFilters.cs" />\r
-    <Compile Include="System.IO\NullFileWatcher.cs" />\r
-    <Compile Include="System.IO\RenamedEventArgs.cs" />\r
-    <Compile Include="System.IO\RenamedEventHandler.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\WaitForChangedResult.cs" />\r
-    <Compile Include="System.IO\WatcherChangeTypes.cs" />\r
-    <Compile Include="System.IO\WindowsWatcher.cs" />\r
-    <Compile Include="System.Media\AudioData.cs" />\r
-    <Compile Include="System.Media\AudioDevice.cs" />\r
-    <Compile Include="System.Media\SoundPlayer.cs" />\r
-    <Compile Include="System.Media\SystemSound.cs" />\r
-    <Compile Include="System.Media\SystemSounds.cs" />\r
-    <Compile Include="System.Media\Win32SoundPlayer.cs" />\r
-    <Compile Include="System.Net.Cache\HttpCacheAgeControl.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModulesSection.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElement.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementSection.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxyHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxySection.cs" />\r
-    <Compile Include="System.Net.Configuration\FtpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpWebRequestElement.cs" />\r
-    <Compile Include="System.Net.Configuration\Ipv6Element.cs" />\r
-    <Compile Include="System.Net.Configuration\MailSettingsSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\ModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\NetAuthenticationModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetConfigurationHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\PerformanceCountersElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ProxyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\RequestCachingSection.cs" />\r
-    <Compile Include="System.Net.Configuration\ServicePointManagerElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SettingsSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpNetworkElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSpecifiedPickupDirectoryElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SocketElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebProxyScriptElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModulesSection.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateView.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateViewCollection.cs" />\r
-    <Compile Include="System.Net.Mail\Attachment.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentBase.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentCollection.cs" />\r
-    <Compile Include="System.Net.Mail\DeliveryNotificationOptions.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResource.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResourceCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddress.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddressCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailMessage.cs" />\r
-    <Compile Include="System.Net.Mail\MailPriority.cs" />\r
-    <Compile Include="System.Net.Mail\SendCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpAccess.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpClient.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpDeliveryMethod.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientsException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.Mime\ContentDisposition.cs" />\r
-    <Compile Include="System.Net.Mime\ContentType.cs" />\r
-    <Compile Include="System.Net.Mime\DispositionTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\MediaTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\TransferEncoding.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticatedStream.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticationLevel.cs" />\r
-    <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
-    <Compile Include="System.Net.Security\NegotiateStream.cs" />\r
-    <Compile Include="System.Net.Security\ProtectionLevel.cs" />\r
-    <Compile Include="System.Net.Security\RemoteCertificateValidationCallback.cs" />\r
-    <Compile Include="System.Net.Security\SslPolicyErrors.cs" />\r
-    <Compile Include="System.Net.Security\SslStream.cs" />\r
-    <Compile Include="System.Net.Sockets\AddressFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\IOControlCode.cs" />\r
-    <Compile Include="System.Net.Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\IPv6MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\LingerOption.cs" />\r
-    <Compile Include="System.Net.Sockets\MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\NetworkStream.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolType.cs" />\r
-    <Compile Include="System.Net.Sockets\SelectMode.cs" />\r
-    <Compile Include="System.Net.Sockets\SendPacketsElement.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket_2_1.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncEventArgs.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncOperation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketError.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketException.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketFlags.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionName.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketShutdown.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketType.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpListener.cs" />\r
-    <Compile Include="System.Net.Sockets\TransmitFileOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocketOptions.cs" />\r
-    <Compile Include="System.Net.WebSockets\HttpListenerWebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketCloseStatus.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketError.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketException.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketMessageType.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
-    <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
-    <Compile Include="System.Net\BasicClient.cs" />\r
-    <Compile Include="System.Net\BindIPEndPoint.cs" />\r
-    <Compile Include="System.Net\ChunkedInputStream.cs" />\r
-    <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\Cookie.cs" />\r
-    <Compile Include="System.Net\CookieCollection.cs" />\r
-    <Compile Include="System.Net\CookieContainer.cs" />\r
-    <Compile Include="System.Net\CookieException.cs" />\r
-    <Compile Include="System.Net\CookieParser.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
-    <Compile Include="System.Net\DecompressionMethods.cs" />\r
-    <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
-    <Compile Include="System.Net\DigestClient.cs" />\r
-    <Compile Include="System.Net\Dns.cs" />\r
-    <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
-    <Compile Include="System.Net\DnsPermission.cs" />\r
-    <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
-    <Compile Include="System.Net\EndPointListener.cs" />\r
-    <Compile Include="System.Net\EndPointManager.cs" />\r
-    <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
-    <Compile Include="System.Net\FtpAsyncResult.cs" />\r
-    <Compile Include="System.Net\FtpDataStream.cs" />\r
-    <Compile Include="System.Net\FtpRequestCreator.cs" />\r
-    <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
-    <Compile Include="System.Net\FtpWebRequest.cs" />\r
-    <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
-    <Compile Include="System.Net\HttpConnection.cs" />\r
-    <Compile Include="System.Net\HttpContinueDelegate.cs" />\r
-    <Compile Include="System.Net\HttpListener.cs" />\r
-    <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
-    <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
-    <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
-    <Compile Include="System.Net\HttpListenerRequest.cs" />\r
-    <Compile Include="System.Net\HttpListenerResponse.cs" />\r
-    <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
-    <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpUtility.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
-    <Compile Include="System.Net\HttpWebRequest.cs" />\r
-    <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
-    <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
-    <Compile Include="System.Net\IPv6Address.cs" />\r
-    <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
-    <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
-    <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
-    <Compile Include="System.Net\ListenerPrefix.cs" />\r
-    <Compile Include="System.Net\MacProxy.cs" />\r
-    <Compile Include="System.Net\MonoHttpDate.cs" />\r
-    <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
-    <Compile Include="System.Net\NetworkCredential.cs" />\r
-    <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
-    <Compile Include="System.Net\RequestStream.cs" />\r
-    <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
-    <Compile Include="System.Net\ServicePoint.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
-    <Compile Include="System.Net\SocketPermission.cs" />\r
-    <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\WebAsyncResult.cs" />\r
-    <Compile Include="System.Net\WebClient.cs" />\r
-    <Compile Include="System.Net\WebConnection.cs" />\r
-    <Compile Include="System.Net\WebConnectionData.cs" />\r
-    <Compile Include="System.Net\WebConnectionGroup.cs" />\r
-    <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebPermission.cs" />\r
-    <Compile Include="System.Net\WebPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
-    <Compile Include="System.Net\WebUtility.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IAdviseSink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDataObject.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumFORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumSTATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STGMEDIUM.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYMED.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleCollector.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StandardOleMarshalObject.cs" />\r
-    <Compile Include="System.Runtime.Versioning\FrameworkName.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreSecurity.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ConfigUtil.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ExtendedProtectionPolicyElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElementCollection.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBinding.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBindingKind.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicy.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicyTypeConverter.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\PolicyEnforcement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ProtectionScenario.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ServiceNameCollection.cs" />\r
-    <Compile Include="System.Security.Authentication\AuthenticationException.cs" />\r
-    <Compile Include="System.Security.Authentication\CipherAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\ExchangeAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\HashAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\InvalidCredentialException.cs" />\r
-    <Compile Include="System.Security.Authentication\SslProtocols.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OpenFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OSX509Certificates.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\PublicKey.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreLocation.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedNameFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509BasicConstraintsExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509EnhancedKeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Extension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509NameType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationFlag.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationMode.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Store.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509VerificationFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\arch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\BaseMachine.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\cache.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Capture.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CaptureCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\category.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CILCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\compiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\debug.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Group.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\GroupCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interval.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Match.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchEvaluator.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\parser.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\quicksearch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Regex.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexOptions.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunner.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\replace.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxInterpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxOp.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\syntax.cs" />\r
-    <Compile Include="System.Threading\Barrier.cs" />\r
-    <Compile Include="System.Threading\BarrierPostPhaseException.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
-    <Compile Include="System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="System.Timers\Timer.cs" />\r
-    <Compile Include="System.Timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermission.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
-    <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
-    <Compile Include="System\Platform.cs" />\r
-    <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriComponents.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriFormat.cs" />\r
-    <Compile Include="System\UriFormatException.cs" />\r
-    <Compile Include="System\UriHostNameType.cs" />\r
-    <Compile Include="System\UriIdnScope.cs" />\r
-    <Compile Include="System\UriKind.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
-    <Compile Include="System\UriPartial.cs" />\r
-    <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="..\corlib\corlib-build.csproj">\r
-      <Project>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="..\System.XML\System.Xml-basic.csproj">\r
-      <Project>{06F3B5C3-F72F-4F26-8479-AA29015E0CCA}</Project>\r
-      <Name>System.XML\System.Xml-basic</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/Asterisk.wav">\r
-      <LogicalName>Asterisk.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Beep.wav">\r
-      <LogicalName>Beep.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Exclamation.wav">\r
-      <LogicalName>Exclamation.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Hand.wav">\r
-      <LogicalName>Hand.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Question.wav">\r
-      <LogicalName>Question.wav</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
index fe93d680e97ff0c8769a0699cc2c9810b555f8a1..fbd51bbfd99f4a6fd2f5a0ffd49d191a29b2e70d 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;MONO_X509_ALIAS;CONFIGURATION_DEP</DefineConstants>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;MONO_X509_ALIAS;CONFIGURATION_DEP</DefineConstants>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;CONFIGURATION_DEP</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\License.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\invariantcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\SecurityUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\WeakHashtable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookie.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookieexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Internal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SocketException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\webclient.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIFormatException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriHostNameType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIPartial.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\Timer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\threading\Barrier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\microsoft\win32\safehandles\SafeProcessHandle.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\License.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\misc\hresults.cs" />\r
+    <Compile Include="..\referencesource\System\misc\invariantcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System\misc\SecurityUtils.cs" />\r
+    <Compile Include="..\referencesource\System\misc\WeakHashtable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_DomainName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv4Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv6Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UncName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UriSyntax.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\GenericUriParser.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\IriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Connection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_emptywebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfoTable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HTTPDateParse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_IStreams.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_NetRes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_PooledStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ProxyChain.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_TimerThread.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_WebProxyDataBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationScheme.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationSchemeSelector.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Authorization.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Configuration\DefaultProxySection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\connectionpool.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookie.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookieexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\CredentialCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\DnsEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\EndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebrequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebresponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\FtpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\GlobalProxySelection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpRequestHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpResponseHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpVersion.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IAuthenticationModule.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICertificatePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentials.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentialsByHost.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Internal.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPHostEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\iwebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebProxyFinder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebRequestCreate.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkAccess.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\DuplicateAddressDetectionState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV4Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV6Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\interfacetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv4InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv6InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkAddressChange.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterface.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterfaceComponent.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\nodetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\OperationalStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PhysicalAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\pingexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingReply.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PrefixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SuffixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemGatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemMulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemTcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemUnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UdpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ProtocolViolationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportContext.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webclient.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebExceptionStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebHeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequestMethods.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebResponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebUtility.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URI.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\uribuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriExt.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIFormatException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHostNameType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriParserTemplates.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIPartial.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriScheme.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\Authentication\ExtendedProtection\TokenBinding.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\oid.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\x509\x509utils.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\Process.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\ProcessStartInfo.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\processwaithandle.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\Timer.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\IO\ports\InternalResources.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\Barrier.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
     <Compile Include="ReferenceSources\_SslState.cs" />\r
     <Compile Include="ReferenceSources\_SslStream.cs" />\r
     <Compile Include="ReferenceSources\AssertWrapper.cs" />\r
+    <Compile Include="ReferenceSources\AutoWebProxyScriptEngine.cs" />\r
     <Compile Include="ReferenceSources\BinaryCompatibility.cs" />\r
+    <Compile Include="ReferenceSources\CAPI.cs" />\r
     <Compile Include="ReferenceSources\ConfigurationManagerInternalFactory.cs" />\r
+    <Compile Include="ReferenceSources\EnvironmentHelpers.cs" />\r
+    <Compile Include="ReferenceSources\HttpApi.cs" />\r
     <Compile Include="ReferenceSources\HttpSysSettings.cs" />\r
     <Compile Include="ReferenceSources\Internal.cs" />\r
     <Compile Include="ReferenceSources\Logging.cs" />\r
     <Compile Include="ReferenceSources\NativeMethods.cs" />\r
+    <Compile Include="ReferenceSources\RequestCacheProtocol.cs" />\r
     <Compile Include="ReferenceSources\SettingsSectionInternal.cs" />\r
     <Compile Include="ReferenceSources\Socket.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
     <Compile Include="ReferenceSources\SSPIConfiguration.cs" />\r
     <Compile Include="ReferenceSources\SSPISafeHandles.cs" />\r
     <Compile Include="ReferenceSources\SSPIWrapper.cs" />\r
-    <Compile Include="ReferenceSources\SystemNetworkCredential.cs" />\r
-    <Compile Include="ReferenceSources\WebHeaderCollectionType.cs" />\r
     <Compile Include="ReferenceSources\Win32Exception.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
     <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
     <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.Security\EncryptionPolicy.cs" />\r
     <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
     <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
     <Compile Include="System.Net\BasicClient.cs" />\r
     <Compile Include="System.Net\BindIPEndPoint.cs" />\r
     <Compile Include="System.Net\ChunkedInputStream.cs" />\r
     <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
     <Compile Include="System.Net\DecompressionMethods.cs" />\r
     <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
     <Compile Include="System.Net\DigestClient.cs" />\r
     <Compile Include="System.Net\Dns.cs" />\r
     <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
     <Compile Include="System.Net\DnsPermission.cs" />\r
     <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
     <Compile Include="System.Net\EndPointListener.cs" />\r
     <Compile Include="System.Net\EndPointManager.cs" />\r
     <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
     <Compile Include="System.Net\FtpAsyncResult.cs" />\r
     <Compile Include="System.Net\FtpDataStream.cs" />\r
     <Compile Include="System.Net\FtpRequestCreator.cs" />\r
     <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
     <Compile Include="System.Net\FtpWebRequest.cs" />\r
     <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
     <Compile Include="System.Net\HttpConnection.cs" />\r
     <Compile Include="System.Net\HttpListener.cs" />\r
     <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
     <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
     <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
     <Compile Include="System.Net\HttpListenerRequest.cs" />\r
     <Compile Include="System.Net\HttpListenerResponse.cs" />\r
     <Compile Include="System.Net\HttpListenerTimeoutManager.cs" />\r
     <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
     <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
     <Compile Include="System.Net\HttpWebRequest.cs" />\r
     <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
     <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
     <Compile Include="System.Net\IPv6Address.cs" />\r
     <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
     <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
     <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
     <Compile Include="System.Net\ListenerPrefix.cs" />\r
     <Compile Include="System.Net\MacProxy.cs" />\r
     <Compile Include="System.Net\MonoHttpDate.cs" />\r
     <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
     <Compile Include="System.Net\NetworkCredential.cs" />\r
     <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
     <Compile Include="System.Net\RequestStream.cs" />\r
     <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
     <Compile Include="System.Net\ServicePoint.cs" />\r
     <Compile Include="System.Net\ServicePointManager.cs" />\r
     <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
     <Compile Include="System.Net\SimpleAsyncResult.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
     <Compile Include="System.Net\SocketPermission.cs" />\r
     <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
     <Compile Include="System.Net\WebAsyncResult.cs" />\r
     <Compile Include="System.Net\WebConnection.cs" />\r
     <Compile Include="System.Net\WebConnectionData.cs" />\r
     <Compile Include="System.Net\WebConnectionGroup.cs" />\r
     <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Impl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2ImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImpl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Helper2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidGroup.cs" />\r
     <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
     <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
     <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
     <Compile Include="System\IOSelector.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
     <Compile Include="System\Platform.cs" />\r
     <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriHelper.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
     <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
       <Name>corlib-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
-      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
-      <Name>System.Configuration-net_4_x</Name>\r
-    </ProjectReference>\r
     <ProjectReference Include="../System.XML/System.Xml-net_4_x.csproj">\r
       <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
       <Name>System.Xml-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="System-secxml-net_4_x.csproj">\r
-      <Project>{19954F80-065E-4D46-8FEF-62BA4D6CFDAD}</Project>\r
-      <Name>System-secxml-net_4_x</Name>\r
-      <Aliases>PrebuiltSystem</Aliases>    </ProjectReference>\r
+    <ProjectReference Include="../System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
     <ProjectReference Include="../Mono.Security/Mono.Security-net_4_x.csproj">\r
       <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
       <Name>Mono.Security-net_4_x</Name>\r
diff --git a/mcs/class/System/System-secxml-build.csproj b/mcs/class/System/System-secxml-build.csproj
deleted file mode 100644 (file)
index 02381c4..0000000
+++ /dev/null
@@ -1,1195 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{7726E34F-345D-41A5-81CD-089E06572BDF}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <OutputPath>./../../class/lib/build/secxml</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>System</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0;SECURITY_DEP;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699,618</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0;CONFIGURATION_2_0;SECURITY_DEP;XML_DEP</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.CSharp\CSharpCodeProvider.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeCompiler.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeGenerator.cs" />\r
-    <Compile Include="Microsoft.VisualBasic\VBCodeProvider.cs" />\r
-    <Compile Include="Microsoft.Win32\IntranetZoneCredentialPolicy.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModeChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\PowerModes.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndingEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionEndReasons.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\SessionSwitchReason.cs" />\r
-    <Compile Include="Microsoft.Win32\SystemEvents.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\TimerElapsedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceCategory.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangedEventHandler.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventArgs.cs" />\r
-    <Compile Include="Microsoft.Win32\UserPreferenceChangingEventHandler.cs" />\r
-    <Compile Include="Mono.Http\NtlmClient.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsHeader.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsOpCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsPacket.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQClass.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuery.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsQuestion.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsRCode.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecord.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordAAAA.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordCName.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordIPAddress.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResourceRecordPTR.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsResponse.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsType.cs" />\r
-    <Compile Include="Mono.Net.Dns\DnsUtil.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverAsyncOperation.cs" />\r
-    <Compile Include="Mono.Net.Dns\ResolverError.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolver.cs" />\r
-    <Compile Include="Mono.Net.Dns\SimpleResolverEventArgs.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeDomProvider.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Compiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerError.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerInfo.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerParameters.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOption.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerProviderOptionsCollection.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\CompilerResults.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\Executor.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\GeneratorSupport.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeCompiler.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeGenerator.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\ICodeParser.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\IndentedTextWriter.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\LanguageOptions.cs" />\r
-    <Compile Include="System.CodeDom.Compiler\TempFileCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeAssignStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgument.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="System.CodeDom\CodeCastExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClause.cs" />\r
-    <Compile Include="System.CodeDom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeChecksumPragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeComment.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeConditionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectionExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeExpressionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeGotoStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeIndexerExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeIterationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLabeledStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeLinePragma.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberEvent.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberField.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberMethod.cs" />\r
-    <Compile Include="System.CodeDom\CodeMemberProperty.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespace.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImport.cs" />\r
-    <Compile Include="System.CodeDom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeObject.cs" />\r
-    <Compile Include="System.CodeDom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionDirective.cs" />\r
-    <Compile Include="System.CodeDom\CodeRegionMode.cs" />\r
-    <Compile Include="System.CodeDom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeStatementCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeConstructor.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeDelegate.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMember.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameter.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReference.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\CodeTypeReferenceOptions.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="System.CodeDom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="System.CodeDom\FieldDirection.cs" />\r
-    <Compile Include="System.CodeDom\ICodeDomVisitor.cs" />\r
-    <Compile Include="System.CodeDom\MemberAttributes.cs" />\r
-    <Compile Include="System.Collections.Concurrent\BlockingCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="System.Collections.Generic\ISet.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedList.cs" />\r
-    <Compile Include="System.Collections.Generic\LinkedListNode.cs" />\r
-    <Compile Include="System.Collections.Generic\Queue.cs" />\r
-    <Compile Include="System.Collections.Generic\RBTree.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedList.cs" />\r
-    <Compile Include="System.Collections.Generic\SortedSet.cs" />\r
-    <Compile Include="System.Collections.Generic\Stack.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ObservableCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyObservableCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\BitVector32.cs" />\r
-    <Compile Include="System.Collections.Specialized\CollectionsUtil.cs" />\r
-    <Compile Include="System.Collections.Specialized\HybridDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\INotifyCollectionChanged.cs" />\r
-    <Compile Include="System.Collections.Specialized\IOrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ListDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameObjectCollectionBase.cs" />\r
-    <Compile Include="System.Collections.Specialized\NameValueCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedAction.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventArgs.cs" />\r
-    <Compile Include="System.Collections.Specialized\NotifyCollectionChangedEventHandler.cs" />\r
-    <Compile Include="System.Collections.Specialized\OrderedDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\ProcessStringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringCollection.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringDictionary.cs" />\r
-    <Compile Include="System.Collections.Specialized\StringEnumerator.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ContextStack.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerLoader.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderHost2.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\INameCreationService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationship.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design.Serialization\SerializationStore.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ActiveDesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CheckoutException.cs" />\r
-    <Compile Include="System.ComponentModel.Design\CommandID.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransaction.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerb.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesignerVerbCollection.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpContextType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="System.ComponentModel.Design\HelpKeywordType.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentChangeService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IComponentInitializer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerEventService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerFilter.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHost.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDesignerOptionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IDictionaryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IEventBindingService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderListService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IExtenderProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IHelpService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IInheritanceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IMenuCommandService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IReferenceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IResourceService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IRootDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ISelectionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\IServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITreeDesigner.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ITypeResolutionService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\MenuCommand.cs" />\r
-    <Compile Include="System.ComponentModel.Design\RuntimeLicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel.Design\SelectionTypes.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceContainer.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardCommands.cs" />\r
-    <Compile Include="System.ComponentModel.Design\StandardToolWindows.cs" />\r
-    <Compile Include="System.ComponentModel.Design\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="System.ComponentModel.Design\ViewTechnology.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AddingNewEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AmbientValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ArrayConverter.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperation.cs" />\r
-    <Compile Include="System.ComponentModel\AsyncOperationManager.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeCollection.cs" />\r
-    <Compile Include="System.ComponentModel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BackgroundWorker.cs" />\r
-    <Compile Include="System.ComponentModel\BaseNumberConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\BindableSupport.cs" />\r
-    <Compile Include="System.ComponentModel\BindingDirection.cs" />\r
-    <Compile Include="System.ComponentModel\BindingList.cs" />\r
-    <Compile Include="System.ComponentModel\BooleanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\BrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CancelEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\CharConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeAction.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\CollectionConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\Component.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentEditor.cs" />\r
-    <Compile Include="System.ComponentModel\ComponentResourceManager.cs" />\r
-    <Compile Include="System.ComponentModel\Container.cs" />\r
-    <Compile Include="System.ComponentModel\ContainerFilterService.cs" />\r
-    <Compile Include="System.ComponentModel\CultureInfoConverter.cs" />\r
-    <Compile Include="System.ComponentModel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DataObjectMethodType.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DecimalConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DefaultValueAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DerivedPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\DescriptionAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="System.ComponentModel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DisplayNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\DoubleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\DoWorkEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\EditorAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\EditorBrowsableState.cs" />\r
-    <Compile Include="System.ComponentModel\EnumConverter.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\EventDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\EventHandlerList.cs" />\r
-    <Compile Include="System.ComponentModel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\GuidConverter.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\HandledEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingList.cs" />\r
-    <Compile Include="System.ComponentModel\IBindingListView.cs" />\r
-    <Compile Include="System.ComponentModel\ICancelAddNew.cs" />\r
-    <Compile Include="System.ComponentModel\IChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="System.ComponentModel\IComponent.cs" />\r
-    <Compile Include="System.ComponentModel\IContainer.cs" />\r
-    <Compile Include="System.ComponentModel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\IDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\IEditableObject.cs" />\r
-    <Compile Include="System.ComponentModel\IExtenderProvider.cs" />\r
-    <Compile Include="System.ComponentModel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="System.ComponentModel\IListSource.cs" />\r
-    <Compile Include="System.ComponentModel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\INestedSite.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InheritanceLevel.cs" />\r
-    <Compile Include="System.ComponentModel\InitializationEventAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="System.ComponentModel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="System.ComponentModel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\InstanceCreationEditor.cs" />\r
-    <Compile Include="System.ComponentModel\Int16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\Int64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="System.ComponentModel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="System.ComponentModel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="System.ComponentModel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="System.ComponentModel\ISite.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitialize.cs" />\r
-    <Compile Include="System.ComponentModel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="System.ComponentModel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="System.ComponentModel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="System.ComponentModel\ITypedList.cs" />\r
-    <Compile Include="System.ComponentModel\License.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseContext.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseException.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseManager.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LicenseUsageMode.cs" />\r
-    <Compile Include="System.ComponentModel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="System.ComponentModel\ListBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\ListChangedType.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescription.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="System.ComponentModel\ListSortDirection.cs" />\r
-    <Compile Include="System.ComponentModel\LocalizableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MarshalByValueComponent.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextProvider.cs" />\r
-    <Compile Include="System.ComponentModel\MaskedTextResultHint.cs" />\r
-    <Compile Include="System.ComponentModel\MemberDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\MultilineStringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\NestedContainer.cs" />\r
-    <Compile Include="System.ComponentModel\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\NullableConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\PropertyTabScope.cs" />\r
-    <Compile Include="System.ComponentModel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ReferenceConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionEventDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\ReflectionPropertyDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshProperties.cs" />\r
-    <Compile Include="System.ComponentModel\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunInstallerAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="System.ComponentModel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="System.ComponentModel\SByteConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\SingleConverter.cs" />\r
-    <Compile Include="System.ComponentModel\StringConverter.cs" />\r
-    <Compile Include="System.ComponentModel\SyntaxCheck.cs" />\r
-    <Compile Include="System.ComponentModel\TimeSpanConverter.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverter.cs" />\r
-    <Compile Include="System.ComponentModel\TypeConverterAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="System.ComponentModel\TypeDescriptor.cs" />\r
-    <Compile Include="System.ComponentModel\TypeListConverter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt16Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt32Converter.cs" />\r
-    <Compile Include="System.ComponentModel\UInt64Converter.cs" />\r
-    <Compile Include="System.ComponentModel\WarningException.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapper.cs" />\r
-    <Compile Include="System.ComponentModel\WeakObjectWrapperComparer.cs" />\r
-    <Compile Include="System.ComponentModel\Win32Exception.cs" />\r
-    <Compile Include="System.Configuration\ApplicationScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsBase.cs" />\r
-    <Compile Include="System.Configuration\ApplicationSettingsGroup.cs" />\r
-    <Compile Include="System.Configuration\AppSettingsReader.cs" />\r
-    <Compile Include="System.Configuration\ClientSettingsSection.cs" />\r
-    <Compile Include="System.Configuration\ConfigHelper.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationException.cs" />\r
-    <Compile Include="System.Configuration\ConfigurationSettings.cs" />\r
-    <Compile Include="System.Configuration\ConfigXmlDocument.cs" />\r
-    <Compile Include="System.Configuration\CustomizableFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\DefaultSettingValueAttribute.cs" />\r
-    <Compile Include="System.Configuration\DictionarySectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IApplicationSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IConfigurationSystem.cs" />\r
-    <Compile Include="System.Configuration\IConfigXmlNode.cs" />\r
-    <Compile Include="System.Configuration\IdnElement.cs" />\r
-    <Compile Include="System.Configuration\IgnoreSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\IPersistComponentSettings.cs" />\r
-    <Compile Include="System.Configuration\IriParsingElement.cs" />\r
-    <Compile Include="System.Configuration\ISettingsProviderService.cs" />\r
-    <Compile Include="System.Configuration\LocalFileSettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\NameValueFileSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NameValueSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\NoSettingsVersionUpgradeAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingChangingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingElement.cs" />\r
-    <Compile Include="System.Configuration\SettingElementCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsAttributeDictionary.cs" />\r
-    <Compile Include="System.Configuration\SettingsBase.cs" />\r
-    <Compile Include="System.Configuration\SettingsContext.cs" />\r
-    <Compile Include="System.Configuration\SettingsDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupDescriptionAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsGroupNameAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventArgs.cs" />\r
-    <Compile Include="System.Configuration\SettingsLoadedEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageability.cs" />\r
-    <Compile Include="System.Configuration\SettingsManageabilityAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProperty.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyIsReadOnlyException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyNotFoundException.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValue.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyValueCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsPropertyWrongTypeException.cs" />\r
-    <Compile Include="System.Configuration\SettingsProvider.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingsProviderCollection.cs" />\r
-    <Compile Include="System.Configuration\SettingsSavingEventHandler.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAs.cs" />\r
-    <Compile Include="System.Configuration\SettingsSerializeAsAttribute.cs" />\r
-    <Compile Include="System.Configuration\SettingValueElement.cs" />\r
-    <Compile Include="System.Configuration\SingleTagSectionHandler.cs" />\r
-    <Compile Include="System.Configuration\SpecialSetting.cs" />\r
-    <Compile Include="System.Configuration\SpecialSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UriSection.cs" />\r
-    <Compile Include="System.Configuration\UserScopedSettingAttribute.cs" />\r
-    <Compile Include="System.Configuration\UserSettingsGroup.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\ExcludeFromCodeCoverageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\AlphabeticalEnumConverter.cs" />\r
-    <Compile Include="System.Diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\CounterCreationDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSample.cs" />\r
-    <Compile Include="System.Diagnostics\CounterSampleCalculator.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\DataReceivedEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\Debug.cs" />\r
-    <Compile Include="System.Diagnostics\DefaultTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\DiagnosticsConfigurationHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics\EntryWrittenEventHandler.cs" />\r
-    <Compile Include="System.Diagnostics\EventInstance.cs" />\r
-    <Compile Include="System.Diagnostics\EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogEntryType.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogImpl.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermission.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\EventLogTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\EventSourceCreationData.cs" />\r
-    <Compile Include="System.Diagnostics\EventTypeFilter.cs" />\r
-    <Compile Include="System.Diagnostics\FileVersionInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ICollectData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceData.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollection.cs" />\r
-    <Compile Include="System.Diagnostics\InstanceDataCollectionCollection.cs" />\r
-    <Compile Include="System.Diagnostics\LocalFileEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\MonitoringDescriptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\NullEventLog.cs" />\r
-    <Compile Include="System.Diagnostics\OverflowAction.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounter.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategory.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterCategoryType.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstaller.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterInstanceLifetime.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterManager.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermission.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAccess.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntry.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterPermissionEntryCollection.cs" />\r
-    <Compile Include="System.Diagnostics\PerformanceCounterType.cs" />\r
-    <Compile Include="System.Diagnostics\Process.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModule.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessModuleCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessPriorityClass.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessStartInfo.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThread.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessThreadCollection.cs" />\r
-    <Compile Include="System.Diagnostics\ProcessWindowStyle.cs" />\r
-    <Compile Include="System.Diagnostics\SourceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\SourceLevels.cs" />\r
-    <Compile Include="System.Diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Stopwatch.cs" />\r
-    <Compile Include="System.Diagnostics\Switch.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadPriorityLevel.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadState.cs" />\r
-    <Compile Include="System.Diagnostics\ThreadWaitReason.cs" />\r
-    <Compile Include="System.Diagnostics\Trace.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="System.Diagnostics\TraceEventType.cs" />\r
-    <Compile Include="System.Diagnostics\TraceFilter.cs" />\r
-    <Compile Include="System.Diagnostics\TraceImpl.cs" />\r
-    <Compile Include="System.Diagnostics\TraceLevel.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListener.cs" />\r
-    <Compile Include="System.Diagnostics\TraceListenerCollection.cs" />\r
-    <Compile Include="System.Diagnostics\TraceOptions.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSource.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSourceInfo.cs" />\r
-    <Compile Include="System.Diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="System.Diagnostics\Win32EventLog.cs" />\r
-    <Compile Include="System.Diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionLevel.cs" />\r
-    <Compile Include="System.IO.Compression\CompressionMode.cs" />\r
-    <Compile Include="System.IO.Compression\DeflateStream.cs" />\r
-    <Compile Include="System.IO.Compression\GZipStream.cs" />\r
-    <Compile Include="System.IO.Ports\Handshake.cs" />\r
-    <Compile Include="System.IO.Ports\ISerialStream.cs" />\r
-    <Compile Include="System.IO.Ports\Parity.cs" />\r
-    <Compile Include="System.IO.Ports\SerialData.cs" />\r
-    <Compile Include="System.IO.Ports\SerialError.cs" />\r
-    <Compile Include="System.IO.Ports\SerialErrorEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChange.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPinChangedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPort.cs" />\r
-    <Compile Include="System.IO.Ports\SerialPortStream.cs" />\r
-    <Compile Include="System.IO.Ports\SerialReceivedEventArgs.cs" />\r
-    <Compile Include="System.IO.Ports\SerialSignal.cs" />\r
-    <Compile Include="System.IO.Ports\StopBits.cs" />\r
-    <Compile Include="System.IO.Ports\WinSerialStream.cs" />\r
-    <Compile Include="System.IO\DefaultWatcher.cs" />\r
-    <Compile Include="System.IO\ErrorEventArgs.cs" />\r
-    <Compile Include="System.IO\ErrorEventHandler.cs" />\r
-    <Compile Include="System.IO\FAMWatcher.cs" />\r
-    <Compile Include="System.IO\FileAction.cs" />\r
-    <Compile Include="System.IO\FileSystemEventArgs.cs" />\r
-    <Compile Include="System.IO\FileSystemEventHandler.cs" />\r
-    <Compile Include="System.IO\FileSystemWatcher.cs" />\r
-    <Compile Include="System.IO\IFileWatcher.cs" />\r
-    <Compile Include="System.IO\InotifyWatcher.cs" />\r
-    <Compile Include="System.IO\InternalBufferOverflowException.cs" />\r
-    <Compile Include="System.IO\InvalidDataException.cs" />\r
-    <Compile Include="System.IO\IODescriptionAttribute.cs" />\r
-    <Compile Include="System.IO\KeventWatcher.cs" />\r
-    <Compile Include="System.IO\MonoSyncFileStream.cs" />\r
-    <Compile Include="System.IO\NotifyFilters.cs" />\r
-    <Compile Include="System.IO\NullFileWatcher.cs" />\r
-    <Compile Include="System.IO\RenamedEventArgs.cs" />\r
-    <Compile Include="System.IO\RenamedEventHandler.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\WaitForChangedResult.cs" />\r
-    <Compile Include="System.IO\WatcherChangeTypes.cs" />\r
-    <Compile Include="System.IO\WindowsWatcher.cs" />\r
-    <Compile Include="System.Media\AudioData.cs" />\r
-    <Compile Include="System.Media\AudioDevice.cs" />\r
-    <Compile Include="System.Media\SoundPlayer.cs" />\r
-    <Compile Include="System.Media\SystemSound.cs" />\r
-    <Compile Include="System.Media\SystemSounds.cs" />\r
-    <Compile Include="System.Media\Win32SoundPlayer.cs" />\r
-    <Compile Include="System.Net.Cache\HttpCacheAgeControl.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\HttpRequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCacheLevel.cs" />\r
-    <Compile Include="System.Net.Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\AuthenticationModulesSection.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElement.cs" />\r
-    <Compile Include="System.Net.Configuration\BypassElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\ConnectionManagementSection.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxyHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\DefaultProxySection.cs" />\r
-    <Compile Include="System.Net.Configuration\FtpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpCachePolicyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\HttpWebRequestElement.cs" />\r
-    <Compile Include="System.Net.Configuration\Ipv6Element.cs" />\r
-    <Compile Include="System.Net.Configuration\MailSettingsSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\ModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\NetAuthenticationModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetConfigurationHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\NetSectionGroup.cs" />\r
-    <Compile Include="System.Net.Configuration\PerformanceCountersElement.cs" />\r
-    <Compile Include="System.Net.Configuration\ProxyElement.cs" />\r
-    <Compile Include="System.Net.Configuration\RequestCachingSection.cs" />\r
-    <Compile Include="System.Net.Configuration\ServicePointManagerElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SettingsSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpNetworkElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSection.cs" />\r
-    <Compile Include="System.Net.Configuration\SmtpSpecifiedPickupDirectoryElement.cs" />\r
-    <Compile Include="System.Net.Configuration\SocketElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebProxyScriptElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElement.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleElementCollection.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModuleHandler.cs" />\r
-    <Compile Include="System.Net.Configuration\WebRequestModulesSection.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateView.cs" />\r
-    <Compile Include="System.Net.Mail\AlternateViewCollection.cs" />\r
-    <Compile Include="System.Net.Mail\Attachment.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentBase.cs" />\r
-    <Compile Include="System.Net.Mail\AttachmentCollection.cs" />\r
-    <Compile Include="System.Net.Mail\DeliveryNotificationOptions.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResource.cs" />\r
-    <Compile Include="System.Net.Mail\LinkedResourceCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddress.cs" />\r
-    <Compile Include="System.Net.Mail\MailAddressCollection.cs" />\r
-    <Compile Include="System.Net.Mail\MailMessage.cs" />\r
-    <Compile Include="System.Net.Mail\MailPriority.cs" />\r
-    <Compile Include="System.Net.Mail\SendCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpAccess.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpClient.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpDeliveryMethod.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpFailedRecipientsException.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.Mime\ContentDisposition.cs" />\r
-    <Compile Include="System.Net.Mime\ContentType.cs" />\r
-    <Compile Include="System.Net.Mime\DispositionTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\MediaTypeNames.cs" />\r
-    <Compile Include="System.Net.Mime\TransferEncoding.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticatedStream.cs" />\r
-    <Compile Include="System.Net.Security\AuthenticationLevel.cs" />\r
-    <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
-    <Compile Include="System.Net.Security\NegotiateStream.cs" />\r
-    <Compile Include="System.Net.Security\ProtectionLevel.cs" />\r
-    <Compile Include="System.Net.Security\RemoteCertificateValidationCallback.cs" />\r
-    <Compile Include="System.Net.Security\SslPolicyErrors.cs" />\r
-    <Compile Include="System.Net.Security\SslStream.cs" />\r
-    <Compile Include="System.Net.Sockets\AddressFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\IOControlCode.cs" />\r
-    <Compile Include="System.Net.Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\IPv6MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\LingerOption.cs" />\r
-    <Compile Include="System.Net.Sockets\MulticastOption.cs" />\r
-    <Compile Include="System.Net.Sockets\NetworkStream.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="System.Net.Sockets\ProtocolType.cs" />\r
-    <Compile Include="System.Net.Sockets\SelectMode.cs" />\r
-    <Compile Include="System.Net.Sockets\SendPacketsElement.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket.cs" />\r
-    <Compile Include="System.Net.Sockets\Socket_2_1.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncEventArgs.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketAsyncOperation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketError.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketException.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketFlags.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformation.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketOptionName.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketShutdown.cs" />\r
-    <Compile Include="System.Net.Sockets\SocketType.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\TcpListener.cs" />\r
-    <Compile Include="System.Net.Sockets\TransmitFileOptions.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpClient.cs" />\r
-    <Compile Include="System.Net.Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\ClientWebSocketOptions.cs" />\r
-    <Compile Include="System.Net.WebSockets\HttpListenerWebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\StreamWebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocket.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketCloseStatus.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketContext.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketError.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketException.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketMessageType.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
-    <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
-    <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
-    <Compile Include="System.Net\BasicClient.cs" />\r
-    <Compile Include="System.Net\BindIPEndPoint.cs" />\r
-    <Compile Include="System.Net\ChunkedInputStream.cs" />\r
-    <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\Cookie.cs" />\r
-    <Compile Include="System.Net\CookieCollection.cs" />\r
-    <Compile Include="System.Net\CookieContainer.cs" />\r
-    <Compile Include="System.Net\CookieException.cs" />\r
-    <Compile Include="System.Net\CookieParser.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
-    <Compile Include="System.Net\DecompressionMethods.cs" />\r
-    <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
-    <Compile Include="System.Net\DigestClient.cs" />\r
-    <Compile Include="System.Net\Dns.cs" />\r
-    <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
-    <Compile Include="System.Net\DnsPermission.cs" />\r
-    <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\DownloadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
-    <Compile Include="System.Net\EndPointListener.cs" />\r
-    <Compile Include="System.Net\EndPointManager.cs" />\r
-    <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
-    <Compile Include="System.Net\FtpAsyncResult.cs" />\r
-    <Compile Include="System.Net\FtpDataStream.cs" />\r
-    <Compile Include="System.Net\FtpRequestCreator.cs" />\r
-    <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
-    <Compile Include="System.Net\FtpWebRequest.cs" />\r
-    <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
-    <Compile Include="System.Net\HttpConnection.cs" />\r
-    <Compile Include="System.Net\HttpContinueDelegate.cs" />\r
-    <Compile Include="System.Net\HttpListener.cs" />\r
-    <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
-    <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
-    <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
-    <Compile Include="System.Net\HttpListenerRequest.cs" />\r
-    <Compile Include="System.Net\HttpListenerResponse.cs" />\r
-    <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
-    <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpUtility.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
-    <Compile Include="System.Net\HttpWebRequest.cs" />\r
-    <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
-    <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
-    <Compile Include="System.Net\IPv6Address.cs" />\r
-    <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
-    <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
-    <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
-    <Compile Include="System.Net\ListenerPrefix.cs" />\r
-    <Compile Include="System.Net\MacProxy.cs" />\r
-    <Compile Include="System.Net\MonoHttpDate.cs" />\r
-    <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
-    <Compile Include="System.Net\NetworkCredential.cs" />\r
-    <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenReadCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\OpenWriteCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
-    <Compile Include="System.Net\RequestStream.cs" />\r
-    <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
-    <Compile Include="System.Net\ServicePoint.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.cs" />\r
-    <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
-    <Compile Include="System.Net\SimpleAsyncResult.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
-    <Compile Include="System.Net\SocketPermission.cs" />\r
-    <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadDataCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadFileCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadProgressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadStringCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventArgs.cs" />\r
-    <Compile Include="System.Net\UploadValuesCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net\WebAsyncResult.cs" />\r
-    <Compile Include="System.Net\WebClient.cs" />\r
-    <Compile Include="System.Net\WebConnection.cs" />\r
-    <Compile Include="System.Net\WebConnectionData.cs" />\r
-    <Compile Include="System.Net\WebConnectionGroup.cs" />\r
-    <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebPermission.cs" />\r
-    <Compile Include="System.Net\WebPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
-    <Compile Include="System.Net\WebUtility.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IAdviseSink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDataObject.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumFORMATETC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumSTATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STGMEDIUM.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYMED.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleCollector.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StandardOleMarshalObject.cs" />\r
-    <Compile Include="System.Runtime.Versioning\FrameworkName.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\SemaphoreSecurity.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ConfigUtil.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ExtendedProtectionPolicyElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection.Configuration\ServiceNameElementCollection.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBinding.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ChannelBindingKind.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicy.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ExtendedProtectionPolicyTypeConverter.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\PolicyEnforcement.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ProtectionScenario.cs" />\r
-    <Compile Include="System.Security.Authentication.ExtendedProtection\ServiceNameCollection.cs" />\r
-    <Compile Include="System.Security.Authentication\AuthenticationException.cs" />\r
-    <Compile Include="System.Security.Authentication\CipherAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\ExchangeAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\HashAlgorithmType.cs" />\r
-    <Compile Include="System.Security.Authentication\InvalidCredentialException.cs" />\r
-    <Compile Include="System.Security.Authentication\SslProtocols.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OpenFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\OSX509Certificates.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\PublicKey.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreLocation.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\StoreName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedName.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X500DistinguishedNameFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509BasicConstraintsExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509EnhancedKeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Extension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509NameType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationFlag.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509RevocationMode.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Store.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509SubjectKeyIdentifierHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509VerificationFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
-    <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\arch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\BaseMachine.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\cache.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Capture.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CaptureCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\category.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\CILCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\compiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\debug.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Group.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\GroupCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\interval.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Match.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchCollection.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\MatchEvaluator.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\parser.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\quicksearch.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\Regex.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexOptions.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunner.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\replace.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxCompiler.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxInterpreter.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\RxOp.cs" />\r
-    <Compile Include="System.Text.RegularExpressions\syntax.cs" />\r
-    <Compile Include="System.Threading\Barrier.cs" />\r
-    <Compile Include="System.Threading\BarrierPostPhaseException.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
-    <Compile Include="System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
-    <Compile Include="System.Timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="System.Timers\Timer.cs" />\r
-    <Compile Include="System.Timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermission.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
-    <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
-    <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
-    <Compile Include="System\Platform.cs" />\r
-    <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriComponents.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriFormat.cs" />\r
-    <Compile Include="System\UriFormatException.cs" />\r
-    <Compile Include="System\UriHostNameType.cs" />\r
-    <Compile Include="System\UriIdnScope.cs" />\r
-    <Compile Include="System\UriKind.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
-    <Compile Include="System\UriPartial.cs" />\r
-    <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PreBuildEvent>
-    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PreBuildEvent>
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="../corlib/corlib-build.csproj">\r
-      <Project>{594C95E0-0B98-4CF3-B13F-ADEAF8D88968}</Project>\r
-      <Name>corlib\corlib-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="../System.XML/System.Xml-bare-build.csproj">\r
-      <Project>{20A32333-D767-41D0-BB6B-9E2DE296EF10}</Project>\r
-      <Name>System.XML\System.Xml-bare-build</Name>\r
-    </ProjectReference>\r
-    <ProjectReference Include="System-build.csproj">\r
-      <Project>{1F4CF6D1-51F5-420D-9F19-285609B2F2CA}</Project>\r
-      <Name>System\System-build</Name>\r
-      <Aliases>PrebuiltSystem</Aliases>    </ProjectReference>\r
-    <ProjectReference Include="../Mono.Security/Mono.Security-basic.csproj">\r
-      <Project>{75FAE38B-6CBC-40B3-AAD7-FF0ACD2C94BD}</Project>\r
-      <Name>Mono.Security\Mono.Security-basic</Name>\r
-      <Aliases>MonoSecurity</Aliases>    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/Asterisk.wav">\r
-      <LogicalName>Asterisk.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Beep.wav">\r
-      <LogicalName>Beep.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Exclamation.wav">\r
-      <LogicalName>Exclamation.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Hand.wav">\r
-      <LogicalName>Hand.wav</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/Question.wav">\r
-      <LogicalName>Question.wav</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
index 39f6fc430a0342e558c874d5098bbde575cad2b5..16f5809c7082d25214ec7087fe319d915e2bc3f0 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699,618</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x/secxml</OutputPath>\r
+    <IntermediateOutputPath>obj-secxml</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;MONO_X509_ALIAS</DefineConstants>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699,618</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS;MONO_X509_ALIAS</DefineConstants>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;CONFIGURATION_2_0;FEATURE_PAL;SYSTEM_NAMESPACE;MONO;PLATFORM_UNIX;MONO_FEATURE_PROCESS_START;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;SECURITY_DEP;XML_DEP;MONO_SECURITY_ALIAS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\License.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\invariantcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\SecurityUtils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\misc\WeakHashtable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookie.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\cookieexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Internal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\SocketException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\webclient.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebPermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WebUtility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriEnumTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIFormatException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\UriHostNameType.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\net\System\URIPartial.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\Timer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\threading\Barrier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="..\..\build\common\SR.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\microsoft\win32\safehandles\SafeProcessHandle.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArgumentReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeArrayIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAssignStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttachEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgument.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeArgumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeAttributeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBaseReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeBinaryOperatorType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCastExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClause.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCatchClauseCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeChecksumPragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeComment.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCommentStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConditionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDefaultValueExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDelegateInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectionExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeDirectiveCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEntryPointMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeEventReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeExpressionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeFieldReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeGotoStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIndexerExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeIterationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLabeledStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeLinePragma.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberField.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberMethod.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMemberProperty.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodInvokeExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\codemethodreferenceexpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeMethodReturnStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeNamespaceImportCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeObjectCreateExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeParameterDeclarationExpressionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePrimitiveExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertyReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodePropertySetValueReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionDirective.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRegionMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeRemoveEventStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetCompileUnit.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeSnippetTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeStatementCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThisReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeThrowExceptionStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTryCatchFinallyStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeConstructor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclaration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDeclarationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeDelegate.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMember.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeMemberCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeOfExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeParameterCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReference.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeTypeReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableDeclarationStatement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\CodeVariableReferenceExpression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeGeneratorOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CodeValidator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerError.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerErrorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\CompilerParameters.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratedCodeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\GeneratorSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeGenerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\ICodeParser.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\IndentTextWriter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\compiler\LanguageOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\FieldDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\codedom\MemberAttributes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\bithelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\debugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\iset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\linkedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\queue.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sorteddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedlist.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedset.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\sortedsetdebugview.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\stack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\generic\throwhelper.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\observablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\objectmodel\readonlyobservablecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\bitvector32.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\casesensitivestringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\collectionsutil.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\fixedstringlookup.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\hybriddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\inotifycollectionchanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\iordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\listdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\nameobjectcollectionbase.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\namevaluecollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\notifycollectionchangedeventargs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\ordereddictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringcollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionary.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\collections\specialized\stringdictionarywithcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AddingNewEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AmbientValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArrayConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ArraySubsetEnumerator.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperation.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AsyncOperationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\AttributeProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BackgroundWorker.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BaseComponentEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\basenumberconverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindableSupport.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BooleanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\BrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CancelEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CharConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeAction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionChangeEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CollectionConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComplexBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CompModSwitches.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Component.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ComponentResourceManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Container.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ContainerFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CultureInfoConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\CustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataErrorsChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectFieldAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DataObjectMethodType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DateTimeOffsetConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DebugTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DecimalConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultBindingPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DefaultValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DelegatingTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ActiveDocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CheckoutException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\CommandID.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ComponentRenameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransaction.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEvent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerTransactionCloseEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerb.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesignerVerbCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DesigntimeLicenseContextSerializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\DocumentEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpContextType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\HelpKeywordType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentChangeService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IComponentInitializer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerEventService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerHostTransactionState.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDesignerOptionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IDictionaryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IEventPropertyService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderListService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IExtenderProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IHelpService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IInheritanceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IMenuCommandService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\InheritanceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IReferenceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IResourceService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IRootDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ISelectionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\IServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITreeDesigner.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDescriptorFilterService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeDiscoveryService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ITypeResolutionService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\MenuCommand.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\NotifyParentPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ParenthesizePropertyNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\PropertyTabScope.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshProperties.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\RefreshPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\SelectionTypes.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ComponentSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ContextStack.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DefaultSerializationProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerLoader.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\DesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderHost.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerLoaderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\IDesignerSerializationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\INameCreationService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\InstanceDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\MemberRelationshipService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\ResolveNameEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\RootDesignerSerializerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\serialization\SerializationStore.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceCreatorCallback.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ServiceObjectContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardCommands.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\StandardToolWindows.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ToolboxItemAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\design\ViewTechnology.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerCategoryAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibility.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignerSerializationVisibilityAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DesignTimeVisibleAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DisplayNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoubleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\DoWorkEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EditorBrowsableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EnumConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\EventHandlerList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExpandableObjectConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtendedPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ExtenderProvidedPropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\FxCopSuppression.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\GuidConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\HandledEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IBindingListView.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICancelAddNew.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComNativeDescriptorHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ICustomTypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IEditableObject.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IExtenderProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IIntellisenseBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IListSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ImmutableObjectAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INestedSite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InitializationEventAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyDataErrorInfo.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanged.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\INotifyPropertyChanging.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstallerTypeAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InstanceCreationEditor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Int64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IntSecurity.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidAsynchronousStateException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\InvalidEnumArgumentException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRaiseItemChangedEvents.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\IRevertibleChangeTracking.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISite.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitialize.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISupportInitializeNotification.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ISynchronizeInvoke.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypeDescriptorContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ITypedList.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\License.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseContext.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicenseUsageMode.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LicFileLicenseProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListChangedType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescription.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDescriptionCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ListSortDirection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LocalizableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\LookupBindingPropertiesAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MarshalByValueComponent.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MaskedTextResultHint.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MemberDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MergablePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\MultilineStringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NestedContainer.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\NullableConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PasswordPropertyTextAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProgressChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyChangingEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\PropertyDescriptorCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ProvidePropertyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReadOnlyAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RecommendedAsConfigurableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReferenceConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectEventDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectPropertyDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ReflectTypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RefreshEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunInstallerAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\RunWorkerCompletedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SByteConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SettingsBindableAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SingleConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\StringConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\SyntaxCheck.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TimeSpanConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\ToolboxItemFilterType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeConverterAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProvider.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptionProviderService.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeDescriptor.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\TypeListConverter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt16Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt32Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\UInt64Converter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\WarningException.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\componentmodel\Win32Exception.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\AssertSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\BooleanSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ConsoleTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\CorrelationManager.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Debug.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DelimitedListTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\DiagnosticsConfiguration.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\FilterElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\ListenerElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\PerfCounterSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SeverityFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceLevels.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SourceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Switch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchElementsCollection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SwitchLevelAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\SystemDiagnosticsSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TextWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\Trace.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventCache.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceEventType.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceFilter.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceInternal.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceLevel.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceListeners.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceOptions.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSection.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSource.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TraceSwitch.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\traceutils.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\TypedElement.cs" />\r
+    <Compile Include="..\referencesource\System\compmod\system\diagnostics\XmlWriterTraceListener.cs" />\r
+    <Compile Include="..\referencesource\System\misc\hresults.cs" />\r
+    <Compile Include="..\referencesource\System\misc\invariantcomparer.cs" />\r
+    <Compile Include="..\referencesource\System\misc\PrivilegedConfigurationManager.cs" />\r
+    <Compile Include="..\referencesource\System\misc\SecurityUtils.cs" />\r
+    <Compile Include="..\referencesource\System\misc\WeakHashtable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_DomainName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv4Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_IPv6Address.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UncName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\_UriSyntax.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\GenericUriParser.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\IriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_BufferOffsetSize.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Connection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_emptywebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HeaderInfoTable.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_HTTPDateParse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_IStreams.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LazyAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_LoggingObject.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_NetRes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_PooledStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ProxyChain.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_ScatterGatherBuffers.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_Semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_TimerThread.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\_WebProxyDataBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationScheme.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\AuthenticationSchemeSelector.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Authorization.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCacheManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Cache\RequestCachePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Configuration\DefaultProxySection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\connectionpool.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookie.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookiecontainer.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\cookieexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\CredentialCache.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\DnsEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\EndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebrequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\filewebresponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\FtpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\GlobalProxySelection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpListenerRequestUriBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpRequestHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpResponseHeader.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpStatusCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\HttpVersion.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IAuthenticationModule.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICertificatePolicy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentials.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ICredentialsByHost.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Internal.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPEndPoint.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IPHostEntry.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\iwebproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebProxyFinder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\IWebRequestCreate.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64Stream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\Base64WriteStateInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BaseWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\BufferBuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ClosableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentDisposition.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\ContentType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DelegatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\DispositionTypeNames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EightBitStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\EncodedStreamFactory.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\HeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\IEncodableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailBnfHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MailHeaderInfo.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\mediatypenames.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeBasePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeEmbeddedMessagePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeMultiPartType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimePart.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MimeWriter.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\MultiAsyncResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QEncodedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\QuotedPrintableStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\SmtpDateTime.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingStringDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TrackingValidationObjectDictionary.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\TransferEncoding.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\mail\WriteStateInfoBase.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkAccess.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\DuplicateAddressDetectionState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV4Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IcmpV6Statistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\interfacetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPGlobalStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPInterfaceStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv4InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\IPv6InterfaceProperties.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkAddressChange.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInformationPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterface.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\NetworkInterfaceComponent.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\nodetype.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\OperationalStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PhysicalAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\pingexception.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PingReply.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\PrefixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\ScopeLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SuffixOrigin.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemGatewayIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemMulticastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemTcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\SystemUnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpConnection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpState.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\TcpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UdpStatistics.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ProtocolViolationException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\AuthenticatedStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SecureProtocols\NegotiateEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\ServicePointManager.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketAddress.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\SocketException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\AddressFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IOControlCode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPPacketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\IPProtectionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\LingerOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\MulticastOption.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\NetworkStream.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolFamily.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\ProtocolType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SelectMode.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketErrors.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformation.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketInformationOptions.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionLevel.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketOptionName.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketShutdown.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\SocketType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\TransmitFileFlags.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\Sockets\UdpReceiveResult.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportContext.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\TransportType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeDecodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\UnicodeEncodingConformance.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webclient.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebExceptionStatus.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebHeaderCollection.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebPermission.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\webproxy.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequest.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebRequestMethods.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebResponse.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WebUtility.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\Net\WriteStreamClosedEventArgs.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URI.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\uribuilder.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriEnumTypes.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriExt.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIFormatException.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHelper.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriHostNameType.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriParserTemplates.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\URIPartial.cs" />\r
+    <Compile Include="..\referencesource\System\net\System\UriScheme.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\compiledregexrunnerfactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\Regex.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexBoyerMoore.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCapture.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCaptureCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCharClass.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompilationInfo.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexCompiler.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexFCD.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroup.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexGroupCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexInterpreter.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatch.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchCollection.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexMatchTimeoutException.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexNode.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexOptions.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexParser.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexReplacement.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunner.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexRunnerFactory.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexTree.cs" />\r
+    <Compile Include="..\referencesource\System\regex\system\text\regularexpressions\RegexWriter.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\Authentication\ExtendedProtection\TokenBinding.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\oid.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\cryptography\x509\x509utils.cs" />\r
+    <Compile Include="..\referencesource\System\security\system\security\permissions\typedescriptorpermission.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\AsyncStreamReader.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\Process.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\ProcessStartInfo.cs" />\r
+    <Compile Include="..\referencesource\System\services\monitoring\system\diagnosticts\processwaithandle.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\ElapsedEventHandler.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\Timer.cs" />\r
+    <Compile Include="..\referencesource\System\services\timers\system\timers\TimersDescriptionAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\BlockingCollection.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\collections\concurrent\ConcurrentBag.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\IO\ports\InternalResources.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\DefaultParameterValueAttribute.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\interopservices\handlecollector.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\runtime\versioning\FrameworkName.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\Barrier.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\threading\semaphore.cs" />\r
+    <Compile Include="..\referencesource\System\sys\system\windows\markup\ValueSerializerAttribute.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeCompiler.cs" />\r
     <Compile Include="Microsoft.CSharp\CSharpCodeGenerator.cs" />\r
     <Compile Include="ReferenceSources\_SslState.cs" />\r
     <Compile Include="ReferenceSources\_SslStream.cs" />\r
     <Compile Include="ReferenceSources\AssertWrapper.cs" />\r
+    <Compile Include="ReferenceSources\AutoWebProxyScriptEngine.cs" />\r
     <Compile Include="ReferenceSources\BinaryCompatibility.cs" />\r
+    <Compile Include="ReferenceSources\CAPI.cs" />\r
     <Compile Include="ReferenceSources\ConfigurationManagerInternalFactory.cs" />\r
+    <Compile Include="ReferenceSources\EnvironmentHelpers.cs" />\r
+    <Compile Include="ReferenceSources\HttpApi.cs" />\r
     <Compile Include="ReferenceSources\HttpSysSettings.cs" />\r
     <Compile Include="ReferenceSources\Internal.cs" />\r
     <Compile Include="ReferenceSources\Logging.cs" />\r
     <Compile Include="ReferenceSources\NativeMethods.cs" />\r
+    <Compile Include="ReferenceSources\RequestCacheProtocol.cs" />\r
     <Compile Include="ReferenceSources\SettingsSectionInternal.cs" />\r
     <Compile Include="ReferenceSources\Socket.cs" />\r
     <Compile Include="ReferenceSources\SR.cs" />\r
     <Compile Include="ReferenceSources\SSPIConfiguration.cs" />\r
     <Compile Include="ReferenceSources\SSPISafeHandles.cs" />\r
     <Compile Include="ReferenceSources\SSPIWrapper.cs" />\r
-    <Compile Include="ReferenceSources\SystemNetworkCredential.cs" />\r
-    <Compile Include="ReferenceSources\WebHeaderCollectionType.cs" />\r
     <Compile Include="ReferenceSources\Win32Exception.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeCompiler.cs" />\r
     <Compile Include="System.CodeDom.Compiler\CodeDomConfigurationHandler.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermission.cs" />\r
     <Compile Include="System.Net.Mail\SmtpPermissionAttribute.cs" />\r
     <Compile Include="System.Net.Mail\SmtpStatusCode.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\DuplicateAddressDetectionState.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\GatewayIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV4Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IcmpV6Statistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPAddressCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPGlobalStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPInterfaceProperties.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\IPStatus.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv4InterfaceStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\IPv6InterfaceProperties.cs" />\r
     <Compile Include="System.Net.NetworkInformation\LinuxNetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.NetworkInformation\MacOsNetworkInterfaceMarshal.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\MulticastIPAddressInformationCollection.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetBiosNodeType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAddressChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityChangedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkAvailabilityEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkChange.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationAccess.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermission.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInformationPermissionAttribute.cs" />\r
     <Compile Include="System.Net.NetworkInformation\NetworkInterface.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceComponent.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\NetworkInterfaceType.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\OperationalStatus.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PhysicalAddress.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Ping.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventArgs.cs" />\r
     <Compile Include="System.Net.NetworkInformation\PingCompletedEventHandler.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingException.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingOptions.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PingReply.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\PrefixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\SuffixOrigin.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpConnectionInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\TcpState.cs" />\r
     <Compile Include="System.Net.NetworkInformation\TcpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UdpStatistics.cs" />\r
     <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformation.cs" />\r
-    <Compile Include="System.Net.NetworkInformation\UnicastIPAddressInformationCollection.cs" />\r
     <Compile Include="System.Net.NetworkInformation\Win32NetworkInterfaceMarshal.cs" />\r
     <Compile Include="System.Net.Security\EncryptionPolicy.cs" />\r
     <Compile Include="System.Net.Security\LocalCertificateSelectionCallback.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketReceiveResult.cs" />\r
     <Compile Include="System.Net.WebSockets\WebSocketState.cs" />\r
     <Compile Include="System.Net\AuthenticationManager.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemes.cs" />\r
-    <Compile Include="System.Net\AuthenticationSchemeSelector.cs" />\r
-    <Compile Include="System.Net\Authorization.cs" />\r
     <Compile Include="System.Net\BasicClient.cs" />\r
     <Compile Include="System.Net\BindIPEndPoint.cs" />\r
     <Compile Include="System.Net\ChunkedInputStream.cs" />\r
     <Compile Include="System.Net\ChunkStream.cs" />\r
-    <Compile Include="System.Net\ConnectionModes.cs" />\r
-    <Compile Include="System.Net\CredentialCache.cs" />\r
     <Compile Include="System.Net\DecompressionMethods.cs" />\r
     <Compile Include="System.Net\DefaultCertificatePolicy.cs" />\r
     <Compile Include="System.Net\DigestClient.cs" />\r
     <Compile Include="System.Net\Dns.cs" />\r
     <Compile Include="System.Net\DnsAsyncResult.cs" />\r
-    <Compile Include="System.Net\DnsEndPoint.cs" />\r
     <Compile Include="System.Net\DnsPermission.cs" />\r
     <Compile Include="System.Net\DnsPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\EndPoint.cs" />\r
     <Compile Include="System.Net\EndPointListener.cs" />\r
     <Compile Include="System.Net\EndPointManager.cs" />\r
     <Compile Include="System.Net\EndpointPermission.cs" />\r
-    <Compile Include="System.Net\FileWebRequest.cs" />\r
-    <Compile Include="System.Net\FileWebRequestCreator.cs" />\r
-    <Compile Include="System.Net\FileWebResponse.cs" />\r
     <Compile Include="System.Net\FtpAsyncResult.cs" />\r
     <Compile Include="System.Net\FtpDataStream.cs" />\r
     <Compile Include="System.Net\FtpRequestCreator.cs" />\r
     <Compile Include="System.Net\FtpStatus.cs" />\r
-    <Compile Include="System.Net\FtpStatusCode.cs" />\r
     <Compile Include="System.Net\FtpWebRequest.cs" />\r
     <Compile Include="System.Net\FtpWebResponse.cs" />\r
-    <Compile Include="System.Net\GlobalProxySelection.cs" />\r
     <Compile Include="System.Net\HttpConnection.cs" />\r
     <Compile Include="System.Net\HttpListener.cs" />\r
     <Compile Include="System.Net\HttpListenerBasicIdentity.cs" />\r
     <Compile Include="System.Net\HttpListenerContext.cs" />\r
-    <Compile Include="System.Net\HttpListenerException.cs" />\r
     <Compile Include="System.Net\HttpListenerPrefixCollection.cs" />\r
     <Compile Include="System.Net\HttpListenerRequest.cs" />\r
     <Compile Include="System.Net\HttpListenerResponse.cs" />\r
     <Compile Include="System.Net\HttpListenerTimeoutManager.cs" />\r
     <Compile Include="System.Net\HttpRequestCreator.cs" />\r
-    <Compile Include="System.Net\HttpRequestHeader.cs" />\r
-    <Compile Include="System.Net\HttpResponseHeader.cs" />\r
-    <Compile Include="System.Net\HttpStatusCode.cs" />\r
     <Compile Include="System.Net\HttpStreamAsyncResult.cs" />\r
-    <Compile Include="System.Net\HttpVersion.cs" />\r
     <Compile Include="System.Net\HttpWebRequest.cs" />\r
     <Compile Include="System.Net\HttpWebResponse.cs" />\r
-    <Compile Include="System.Net\IAuthenticationModule.cs" />\r
-    <Compile Include="System.Net\ICertificatePolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialLookup.cs" />\r
     <Compile Include="System.Net\ICredentialPolicy.cs" />\r
-    <Compile Include="System.Net\ICredentialsByHost.cs" />\r
-    <Compile Include="System.Net\IPAddress.cs" />\r
-    <Compile Include="System.Net\IPEndPoint.cs" />\r
-    <Compile Include="System.Net\IPHostEntry.cs" />\r
     <Compile Include="System.Net\IPv6Address.cs" />\r
     <Compile Include="System.Net\IWebConnectionState.cs" />\r
-    <Compile Include="System.Net\IWebProxy.cs" />\r
     <Compile Include="System.Net\IWebProxyScript.cs" />\r
-    <Compile Include="System.Net\IWebRequestCreate.cs" />\r
     <Compile Include="System.Net\ListenerAsyncResult.cs" />\r
     <Compile Include="System.Net\ListenerPrefix.cs" />\r
     <Compile Include="System.Net\MacProxy.cs" />\r
     <Compile Include="System.Net\MonoHttpDate.cs" />\r
     <Compile Include="System.Net\NetConfig.cs" />\r
-    <Compile Include="System.Net\NetworkAccess.cs" />\r
     <Compile Include="System.Net\NetworkCredential.cs" />\r
     <Compile Include="System.Net\NtlmClient.cs" />\r
-    <Compile Include="System.Net\ProtocolViolationException.cs" />\r
     <Compile Include="System.Net\RequestStream.cs" />\r
     <Compile Include="System.Net\ResponseStream.cs" />\r
-    <Compile Include="System.Net\SecurityProtocolType.cs" />\r
     <Compile Include="System.Net\ServicePoint.cs" />\r
     <Compile Include="System.Net\ServicePointManager.cs" />\r
     <Compile Include="System.Net\ServicePointManager.extra.cs" />\r
     <Compile Include="System.Net\SimpleAsyncResult.cs" />\r
-    <Compile Include="System.Net\SocketAddress.cs" />\r
     <Compile Include="System.Net\SocketPermission.cs" />\r
     <Compile Include="System.Net\SocketPermissionAttribute.cs" />\r
-    <Compile Include="System.Net\TransportContext.cs" />\r
-    <Compile Include="System.Net\TransportType.cs" />\r
     <Compile Include="System.Net\WebAsyncResult.cs" />\r
     <Compile Include="System.Net\WebConnection.cs" />\r
     <Compile Include="System.Net\WebConnectionData.cs" />\r
     <Compile Include="System.Net\WebConnectionGroup.cs" />\r
     <Compile Include="System.Net\WebConnectionStream.cs" />\r
-    <Compile Include="System.Net\WebException.cs" />\r
-    <Compile Include="System.Net\WebExceptionStatus.cs" />\r
-    <Compile Include="System.Net\WebHeaderCollection.cs" />\r
-    <Compile Include="System.Net\WebProxy.cs" />\r
-    <Compile Include="System.Net\WebRequest.cs" />\r
-    <Compile Include="System.Net\WebRequestMethods.cs" />\r
-    <Compile Include="System.Net\WebResponse.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\ADVF.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DATADIR.cs" />\r
     <Compile Include="System.Runtime.InteropServices.ComTypes\DVASPECT.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Collection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Enumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2Impl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate2ImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Chain.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElement.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainElementEnumerator.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImpl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainImplMono.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainPolicy.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatus.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ChainStatusFlags.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionCollection.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509ExtensionEnumerator.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509FindType.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\X509Helper2.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509IncludeOption.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageExtension.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyUsageFlags.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedData.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataCollection.cs" />\r
     <Compile Include="System.Security.Cryptography\AsnEncodedDataEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\Oid.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidCollection.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidEnumerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\OidGroup.cs" />\r
     <Compile Include="System.Security.Permissions\PermissionHelper.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBase.cs" />\r
     <Compile Include="System.Security.Permissions\ResourcePermissionBaseEntry.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermission.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionAttribute.cs" />\r
     <Compile Include="System.Security.Permissions\StorePermissionFlags.cs" />\r
-    <Compile Include="System.Threading\Semaphore.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventArgs.cs" />\r
     <Compile Include="System.Threading\ThreadExceptionEventHandler.cs" />\r
     <Compile Include="System.Timers\ElapsedEventArgs.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionAttribute.cs" />\r
     <Compile Include="System.Web\AspNetHostingPermissionLevel.cs" />\r
     <Compile Include="System.Windows.Input\ICommand.cs" />\r
-    <Compile Include="System\DefaultUriParser.cs" />\r
-    <Compile Include="System\FileStyleUriParser.cs" />\r
-    <Compile Include="System\FtpStyleUriParser.cs" />\r
-    <Compile Include="System\GenericUriParser.cs" />\r
-    <Compile Include="System\GenericUriParserOptions.cs" />\r
-    <Compile Include="System\GopherStyleUriParser.cs" />\r
-    <Compile Include="System\HttpStyleUriParser.cs" />\r
     <Compile Include="System\IOSelector.cs" />\r
-    <Compile Include="System\IUriData.cs" />\r
-    <Compile Include="System\LdapStyleUriParser.cs" />\r
-    <Compile Include="System\NetPipeStyleUriParser.cs" />\r
-    <Compile Include="System\NetTcpStyleUriParser.cs" />\r
-    <Compile Include="System\NewsStyleUriParser.cs" />\r
     <Compile Include="System\Platform.cs" />\r
     <Compile Include="System\SRDescriptionAttribute.cs" />\r
-    <Compile Include="System\Uri.cs" />\r
-    <Compile Include="System\UriBuilder.cs" />\r
-    <Compile Include="System\UriData.cs" />\r
-    <Compile Include="System\UriElements.cs" />\r
-    <Compile Include="System\UriHelper.cs" />\r
-    <Compile Include="System\UriParseComponents.cs" />\r
-    <Compile Include="System\UriParser.cs" />\r
     <Compile Include="System\UriTypeConverter.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
       <Project>{A5216031-11A3-44DD-B2FF-A14AE63BD0C3}</Project>\r
       <Name>System.Xml-bare-net_4_x</Name>\r
     </ProjectReference>\r
-    <ProjectReference Include="System-bare-net_4_x.csproj">\r
-      <Project>{483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}</Project>\r
-      <Name>System-bare-net_4_x</Name>\r
-      <Aliases>PrebuiltSystem</Aliases>    </ProjectReference>\r
     <ProjectReference Include="../Mono.Security/Mono.Security-net_4_x.csproj">\r
       <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
       <Name>Mono.Security-net_4_x</Name>\r
index 84287ebf822e46d591f09d43b6f5ffa40d4c2b4f..56724d4756dce26b3f0290e1260d6d0bee8f9b26 100644 (file)
@@ -43,6 +43,8 @@ namespace System.Configuration
                        properties.Add (enabled_prop);
                }
 
+               internal const UriIdnScope EnabledDefaultValue = UriIdnScope.None;
+
                public IdnElement ()
                {
                }
index ed53a837361e1dbefcb282e1b598d049bc5d1779..594803e2c2dc0314087b3dbec5c55e6ccd4f14c0 100644 (file)
@@ -42,7 +42,7 @@ namespace System.Net.Configuration
        {
                public virtual object Create (object parent, object configContext, XmlNode section)
                {
-#if (XML_DEP)                  
+#if XML_DEP
                        if (section.Attributes != null && section.Attributes.Count != 0)
                                HandlersUtil.ThrowException ("Unrecognized attribute", section);
 
@@ -60,7 +60,7 @@ namespace System.Net.Configuration
                                        if (child.Attributes != null && child.Attributes.Count != 0)
                                                HandlersUtil.ThrowException ("Unrecognized attribute", child);
 
-                                       WebRequest.ClearPrefixes ();
+                                       WebRequest.PrefixList = new ArrayList ();
                                        continue;
                                }
 
@@ -70,16 +70,18 @@ namespace System.Net.Configuration
                                        if (child.Attributes != null && child.Attributes.Count != 0)
                                                HandlersUtil.ThrowException ("Unrecognized attribute", child);
 
-                                       WebRequest.AddPrefix (prefix, type);
-                                       continue;
+                                       throw new NotImplementedException ();
+                                       //WebRequest.PrefixList.Add (new WebRequestPrefixElement(prefix, type));
+                                       //continue;
                                }
 
                                if (name == "remove") {
                                        if (child.Attributes != null && child.Attributes.Count != 0)
                                                HandlersUtil.ThrowException ("Unrecognized attribute", child);
 
-                                       WebRequest.RemovePrefix (prefix);
-                                       continue;
+                                       throw new NotImplementedException ();
+                                       // WebRequest.RemovePrefix (prefix);
+                                       // continue;
                                }
 
                                HandlersUtil.ThrowException ("Unexpected element", child);
diff --git a/mcs/class/System/System.Net.NetworkInformation/DuplicateAddressDetectionState.cs b/mcs/class/System/System.Net.NetworkInformation/DuplicateAddressDetectionState.cs
deleted file mode 100644 (file)
index 5625522..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-// System.Net.NetworkInformation.DuplicateAddressDetectionState
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum DuplicateAddressDetectionState {
-               Invalid,
-               Tentative,
-               Duplicate,
-               Deprecated,
-               Preferred
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformation.cs b/mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformation.cs
deleted file mode 100644 (file)
index ea761a3..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-// System.Net.NetworkInformation.GatewayIPAddressInformation
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public abstract class GatewayIPAddressInformation {
-               protected GatewayIPAddressInformation ()
-               {
-               }
-               
-               public abstract IPAddress Address { get; }
-       }
-
-       class GatewayIPAddressInformationImpl : GatewayIPAddressInformation
-       {
-               IPAddress address;
-
-               public GatewayIPAddressInformationImpl (IPAddress address)
-               {
-                       this.address = address;
-               }
-               
-               public override IPAddress Address {
-                       get { return address; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformationCollection.cs b/mcs/class/System/System.Net.NetworkInformation/GatewayIPAddressInformationCollection.cs
deleted file mode 100644 (file)
index 14767dd..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-//
-// System.Net.NetworkInformation.GatewayIPAddressInformationCollection
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace System.Net.NetworkInformation {
-       public class GatewayIPAddressInformationCollection : ICollection<GatewayIPAddressInformation>, IEnumerable<GatewayIPAddressInformation>, IEnumerable {
-               List<GatewayIPAddressInformation> list = new List<GatewayIPAddressInformation> ();
-               
-               protected GatewayIPAddressInformationCollection ()
-               {
-               }
-
-               public virtual void Add (GatewayIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Add (address);
-               }
-
-               public virtual void Clear ()
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Clear ();
-               }
-
-               public virtual bool Contains (GatewayIPAddressInformation address)
-               {
-                       return list.Contains (address);
-               }
-
-               public virtual void CopyTo (GatewayIPAddressInformation [] array, int offset)
-               {
-                       list.CopyTo (array, offset);
-               }
-
-               public virtual IEnumerator<GatewayIPAddressInformation> GetEnumerator ()
-               {
-                       return ((IEnumerable<GatewayIPAddressInformation>)list).GetEnumerator ();
-               }
-
-               public virtual bool Remove (GatewayIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       return list.Remove (address);
-               }
-
-               IEnumerator IEnumerable.GetEnumerator ()
-               {
-                       return list.GetEnumerator ();
-               }
-
-               public virtual int Count {
-                       get { return list.Count; }
-               }
-
-               public virtual bool IsReadOnly {
-                       get { return true; }
-               }
-
-               public virtual GatewayIPAddressInformation this [int index] {
-                       get { return list [index]; }
-               }
-       }
-
-#if !MOBILE
-       class Win32GatewayIPAddressInformationCollection : GatewayIPAddressInformationCollection
-       {
-               public static readonly Win32GatewayIPAddressInformationCollection Empty = new Win32GatewayIPAddressInformationCollection (true);
-
-               bool is_readonly;
-
-               private Win32GatewayIPAddressInformationCollection (bool isReadOnly)
-               {
-                       this.is_readonly = isReadOnly;
-               }
-
-               public Win32GatewayIPAddressInformationCollection (params Win32_IP_ADDR_STRING [] al)
-               {
-                       foreach (Win32_IP_ADDR_STRING a in al) {
-                               if (String.IsNullOrEmpty (a.IpAddress))
-                                       continue;
-                               Add (new GatewayIPAddressInformationImpl (IPAddress.Parse (a.IpAddress)));
-                               AddSubsequently (a.Next);
-                       }
-                       is_readonly = true;
-               }
-
-               void AddSubsequently (IntPtr head)
-               {
-                       Win32_IP_ADDR_STRING a;
-                       for (IntPtr p = head; p != IntPtr.Zero; p = a.Next) {
-                               a = (Win32_IP_ADDR_STRING) Marshal.PtrToStructure (p, typeof (Win32_IP_ADDR_STRING));
-                               Add (new GatewayIPAddressInformationImpl (IPAddress.Parse (a.IpAddress)));
-                       }
-               }
-
-               public override bool IsReadOnly {
-                       get { return is_readonly; }
-               }
-       }
-#endif
-
-       class UnixGatewayIPAddressInformationCollection : GatewayIPAddressInformationCollection
-       {
-               public static readonly UnixGatewayIPAddressInformationCollection Empty = new UnixGatewayIPAddressInformationCollection (true);
-
-               bool is_readonly;
-
-               private UnixGatewayIPAddressInformationCollection (bool isReadOnly)
-               {
-                       this.is_readonly = isReadOnly;
-               }
-
-               public UnixGatewayIPAddressInformationCollection (IPAddressCollection col)
-               {
-                       foreach (IPAddress a in col)
-                               Add (new GatewayIPAddressInformationImpl (a));
-                       this.is_readonly = true;
-               }
-               
-               public override bool IsReadOnly {
-                       get { return is_readonly; }
-               }
-       }
-}
-
index 3900ac1f192f00d9d8d6f91690e8f010644ce870..2b39ff8311c427735dc99ddcab36b62839b8590b 100644 (file)
@@ -33,72 +33,6 @@ using System.Net;
 using System.Runtime.InteropServices;
 
 namespace System.Net.NetworkInformation {
-       public class IPAddressCollection : ICollection<IPAddress>, IEnumerable<IPAddress>, IEnumerable {
-               IList <IPAddress> list = new List<IPAddress> ();
-
-               protected internal IPAddressCollection ()
-               {
-               }
-
-               internal void SetReadOnly ()
-               {
-                       if (!IsReadOnly)
-                               list = ((List<IPAddress>) list).AsReadOnly ();
-               }
-
-               public virtual void Add (IPAddress address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Add (address);
-               }
-
-               public virtual void Clear ()
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Clear ();
-               }
-
-               public virtual bool Contains (IPAddress address)
-               {
-                       return list.Contains (address);
-               }
-
-               public virtual void CopyTo (IPAddress [] array, int offset)
-               {
-                       list.CopyTo (array, offset);
-               }
-
-               public virtual IEnumerator<IPAddress> GetEnumerator ()
-               {
-                       return ((IEnumerable<IPAddress>)list).GetEnumerator ();
-               }
-
-               public virtual bool Remove (IPAddress address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       return list.Remove (address);
-               }
-
-               IEnumerator IEnumerable.GetEnumerator ()
-               {
-                       return list.GetEnumerator ();
-               }
-
-               public virtual int Count {
-                       get { return list.Count; }
-               }
-
-               public virtual bool IsReadOnly {
-                       get { return list.IsReadOnly; }
-               }
-
-               public virtual IPAddress this [int index] {
-                       get { return list [index]; }
-               }
-       }
 
 #if !MOBILE
        class Win32IPAddressCollection : IPAddressCollection
diff --git a/mcs/class/System/System.Net.NetworkInformation/IPAddressInformation.cs b/mcs/class/System/System.Net.NetworkInformation/IPAddressInformation.cs
deleted file mode 100644 (file)
index 092ba2e..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-//
-// System.Net.NetworkInformation.IPAddressInformation
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Net.NetworkInformation {
-       public abstract class IPAddressInformation {
-               protected IPAddressInformation ()
-               {
-               }
-               
-               public abstract IPAddress Address { get; }
-               public abstract bool IsDnsEligible { get; }
-               public abstract bool IsTransient { get; }
-       }
-
-       class IPAddressInformationImpl : IPAddressInformation 
-       {
-               IPAddress address;
-               bool is_dns_eligible, is_transient;
-
-               public IPAddressInformationImpl (IPAddress address, bool isDnsEligible, bool isTransient)
-               {
-                       this.address = address;
-                       this.is_dns_eligible = isDnsEligible;
-                       this.is_transient = isTransient;
-               }
-
-               public override IPAddress Address {
-                       get { return address; }
-               }
-
-               public override bool IsDnsEligible {
-                       get { return is_dns_eligible; }
-               }
-
-               [MonoTODO ("Always false on Linux")]
-               public override bool IsTransient {
-                       get { return is_transient; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/IPAddressInformationCollection.cs b/mcs/class/System/System.Net.NetworkInformation/IPAddressInformationCollection.cs
deleted file mode 100644 (file)
index 1492fe0..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-//
-// System.Net.NetworkInformation.IPAddressInformationCollection
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace System.Net.NetworkInformation {
-       public class IPAddressInformationCollection : ICollection<IPAddressInformation>, IEnumerable<IPAddressInformation>, IEnumerable {
-               List <IPAddressInformation> list = new List <IPAddressInformation> ();
-
-               internal IPAddressInformationCollection ()
-               {
-               }
-
-               public virtual void Add (IPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Add (address);
-               }
-
-               public virtual void Clear ()
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Clear ();
-               }
-
-               public virtual bool Contains (IPAddressInformation address)
-               {
-                       return list.Contains (address);
-               }
-
-               public virtual void CopyTo (IPAddressInformation [] array, int offset)
-               {
-                       list.CopyTo (array, offset);
-               }
-
-               public virtual IEnumerator<IPAddressInformation> GetEnumerator ()
-               {
-                       return ((IEnumerable<IPAddressInformation>)list).GetEnumerator ();
-               }
-
-               public virtual bool Remove (IPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       return list.Remove (address);
-               }
-
-               IEnumerator IEnumerable.GetEnumerator ()
-               {
-                       return list.GetEnumerator ();
-               }
-
-               public virtual int Count {
-                       get { return list.Count; }
-               }
-
-               public virtual bool IsReadOnly {
-                       get { return true; }
-               }
-
-               public virtual IPAddressInformation this [int index] {
-                       get { return list [index]; }
-               }
-       }
-
-       class IPAddressInformationImplCollection : IPAddressInformationCollection
-       {
-               public static readonly IPAddressInformationImplCollection Empty = new IPAddressInformationImplCollection (true);
-
-               bool is_readonly;
-
-               // for static methods
-               IPAddressInformationImplCollection (bool isReadOnly)
-               {
-                       is_readonly = isReadOnly;
-               }
-
-               public override bool IsReadOnly {
-                       get { return is_readonly; }
-               }
-
-#if !MOBILE
-               public static IPAddressInformationCollection Win32FromAnycast (IntPtr ptr)
-               {
-                       IPAddressInformationImplCollection c = new IPAddressInformationImplCollection (false);
-                       Win32_IP_ADAPTER_ANYCAST_ADDRESS a;
-                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
-                               a = (Win32_IP_ADAPTER_ANYCAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_ANYCAST_ADDRESS));
-                               c.Add (new IPAddressInformationImpl (
-                                      a.Address.GetIPAddress (),
-                                      a.LengthFlags.IsDnsEligible,
-                                      a.LengthFlags.IsTransient));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-#endif
-
-               public static IPAddressInformationImplCollection LinuxFromAnycast (IList<IPAddress> addresses)
-               {
-                       IPAddressInformationImplCollection c = new IPAddressInformationImplCollection (false);
-                       foreach (IPAddress address in addresses) {
-                               c.Add (new IPAddressInformationImpl (address, false, false));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-       }
-}
-
index b22a33c9ad541f5e1e196b79841c9ce1f2f2e6bb..be2d13b71c02383937747b08837e1de486198005 100644 (file)
@@ -37,62 +37,6 @@ using System.Runtime.InteropServices;
 using System.Text;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IPGlobalProperties {
-               protected IPGlobalProperties ()
-               {
-               }
-
-               public static IPGlobalProperties GetIPGlobalProperties ()
-               {
-#if MONODROID
-                       return new AndroidIPGlobalProperties ();
-#elif MONOTOUCH || XAMMAC || MOBILE_STATIC
-                       return new UnixIPGlobalProperties ();
-#else
-                       switch (Environment.OSVersion.Platform) {
-                       case PlatformID.Unix:
-                               MibIPGlobalProperties impl = null;
-                               if (Directory.Exists (MibIPGlobalProperties.ProcDir)) {
-                                       impl = new MibIPGlobalProperties (MibIPGlobalProperties.ProcDir);
-                                       if (File.Exists (impl.StatisticsFile))
-                                               return impl;
-                               }
-                               if (Directory.Exists (MibIPGlobalProperties.CompatProcDir)) {
-                                       impl = new MibIPGlobalProperties (MibIPGlobalProperties.CompatProcDir);
-                                       if (File.Exists (impl.StatisticsFile))
-                                               return impl;
-                               }
-                               return new UnixIPGlobalProperties ();
-                       default:
-                               return new Win32IPGlobalProperties ();
-                       }
-#endif
-               }
-
-               internal static IPGlobalProperties InternalGetIPGlobalProperties()
-               {
-                       return GetIPGlobalProperties ();
-               }
-
-               public abstract TcpConnectionInformation [] GetActiveTcpConnections ();
-               public abstract IPEndPoint [] GetActiveTcpListeners ();
-               public abstract IPEndPoint [] GetActiveUdpListeners ();
-               public abstract IcmpV4Statistics GetIcmpV4Statistics ();
-               public abstract IcmpV6Statistics GetIcmpV6Statistics ();
-               public abstract IPGlobalStatistics GetIPv4GlobalStatistics ();
-               public abstract IPGlobalStatistics GetIPv6GlobalStatistics ();
-               public abstract TcpStatistics GetTcpIPv4Statistics ();
-               public abstract TcpStatistics GetTcpIPv6Statistics ();
-               public abstract UdpStatistics GetUdpIPv4Statistics ();
-               public abstract UdpStatistics GetUdpIPv6Statistics ();
-
-               public abstract string DhcpScopeName { get; }
-               public abstract string DomainName { get; }
-               public abstract string HostName { get; }
-               public abstract bool IsWinsProxy { get; }
-               public abstract NetBiosNodeType NodeType { get; }
-       }
-
        abstract class CommonUnixIPGlobalProperties : IPGlobalProperties
        {
                [DllImport ("libc")]
@@ -343,7 +287,7 @@ namespace System.Net.NetworkInformation {
                                IPEndPoint local = ToEndpoint (list [i] [1]);
                                IPEndPoint remote = ToEndpoint (list [i] [2]);
                                TcpState state = (TcpState) int.Parse (list [i] [3], NumberStyles.HexNumber);
-                               ret [i] = new TcpConnectionInformationImpl (local, remote, state);
+                               ret [i] = new SystemTcpConnectionInformation (local, remote, state);
                        }
                        return ret;
                }
@@ -690,7 +634,7 @@ namespace System.Net.NetworkInformation {
                        }
 
                        public TcpConnectionInformation TcpInfo {
-                               get { return new TcpConnectionInformationImpl (LocalEndPoint, RemoteEndPoint, State); }
+                               get { return new SystemTcpConnectionInformation (LocalEndPoint, RemoteEndPoint, State); }
                        }
                }
 
@@ -714,7 +658,7 @@ namespace System.Net.NetworkInformation {
                        }
 
                        public TcpConnectionInformation TcpInfo {
-                               get { return new TcpConnectionInformationImpl (LocalEndPoint, RemoteEndPoint, State); }
+                               get { return new SystemTcpConnectionInformation (LocalEndPoint, RemoteEndPoint, State); }
                        }
                }
 
index 749be358302b0390c4d6454279649f045cd58d69..7822dfc6f360b7c6f045047d4b6135219b03100f 100644 (file)
@@ -31,35 +31,6 @@ using System.Globalization;
 using System.Runtime.InteropServices;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IPGlobalStatistics {
-               protected IPGlobalStatistics ()
-               {
-               }
-
-               public abstract int DefaultTtl { get; }
-               public abstract bool ForwardingEnabled { get; }
-               public abstract int NumberOfInterfaces { get; }
-               public abstract int NumberOfIPAddresses { get; }
-               public abstract int NumberOfRoutes { get; }
-               public abstract long OutputPacketRequests { get; }
-               public abstract long OutputPacketRoutingDiscards { get; }
-               public abstract long OutputPacketsDiscarded { get; }
-               public abstract long OutputPacketsWithNoRoute { get; }
-               public abstract long PacketFragmentFailures { get; }
-               public abstract long PacketReassembliesRequired { get; }
-               public abstract long PacketReassemblyFailures { get; }
-               public abstract long PacketReassemblyTimeout { get; }
-               public abstract long PacketsFragmented { get; }
-               public abstract long PacketsReassembled { get; }
-               public abstract long ReceivedPackets { get; }
-               public abstract long ReceivedPacketsDelivered { get; }
-               public abstract long ReceivedPacketsDiscarded { get; }
-               public abstract long ReceivedPacketsForwarded { get; }
-               public abstract long ReceivedPacketsWithAddressErrors { get; }
-               public abstract long ReceivedPacketsWithHeadersErrors { get; }
-               public abstract long ReceivedPacketsWithUnknownProtocol { get; }
-       }
-
        class MibIPGlobalStatistics : IPGlobalStatistics
        {
                StringDictionary dic;
index 3a37594d7553aeb1528d170399781c88f97dce47..9a8560a92b58275149f51640218549c4c1a15652 100644 (file)
@@ -32,28 +32,9 @@ using System.IO;
 using System.Net.Sockets;
 using System.Runtime.CompilerServices;
 using System.Text.RegularExpressions;
+using System.Runtime.InteropServices;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IPInterfaceProperties {
-               protected IPInterfaceProperties ()
-               {
-               }
-
-               public abstract IPv4InterfaceProperties GetIPv4Properties ();
-               public abstract IPv6InterfaceProperties GetIPv6Properties ();
-
-               public abstract IPAddressInformationCollection AnycastAddresses { get; }
-               public abstract IPAddressCollection DhcpServerAddresses { get; }
-               public abstract IPAddressCollection DnsAddresses { get; }
-               public abstract string DnsSuffix { get; }
-               public abstract GatewayIPAddressInformationCollection GatewayAddresses { get; }
-               public abstract bool IsDnsEnabled { get; }
-               public abstract bool IsDynamicDnsEnabled { get; }
-               public abstract MulticastIPAddressInformationCollection MulticastAddresses { get; }
-               public abstract UnicastIPAddressInformationCollection UnicastAddresses { get; }
-               public abstract IPAddressCollection WinsServersAddresses { get; }
-       }
-
        abstract class UnixIPInterfaceProperties : IPInterfaceProperties
        {
                protected IPv4InterfaceProperties ipv4iface_properties;
@@ -98,7 +79,7 @@ namespace System.Net.NetworkInformation {
                                                        try {
                                                                str = match.Groups ["address"].Value;
                                                                str = str.Trim ();
-                                                               dns_servers.Add (IPAddress.Parse (str));
+                                                               dns_servers.InternalAdd (IPAddress.Parse (str));
                                                        } catch {
                                                        }
                                                } else {
@@ -112,22 +93,16 @@ namespace System.Net.NetworkInformation {
                                        }
                                }
                        } catch {
-                       } finally {
-                               dns_servers.SetReadOnly ();
                        }
                }
 
                public override IPAddressInformationCollection AnycastAddresses {
                        get {
-                               List<IPAddress> anycastAddresses = new List<IPAddress> ();
-                               /* XXX:
+                               var c = new IPAddressInformationCollection ();
                                foreach (IPAddress address in addresses) {
-                                       if (is_anycast_address (address)) {
-                                               anycastAddresses.Add (address);
-                                       }
+                                       c.InternalAdd (new SystemIPAddressInformation (address, false, false));
                                }
-                               */
-                               return IPAddressInformationImplCollection.LinuxFromAnycast (anycastAddresses);
+                               return c;
                        }
                }
 
@@ -138,7 +113,6 @@ namespace System.Net.NetworkInformation {
                                // that all store their configuration differently.
                                // I'm not sure what to do here.
                                IPAddressCollection coll = new IPAddressCollection ();
-                               coll.SetReadOnly ();
                                return coll;
                        }
                }
@@ -173,37 +147,37 @@ namespace System.Net.NetworkInformation {
 
                public override MulticastIPAddressInformationCollection MulticastAddresses {
                        get {
-                               List<IPAddress> multicastAddresses = new List<IPAddress> ();
+                               var multicastAddresses = new MulticastIPAddressInformationCollection ();
                                foreach (IPAddress address in addresses) {
                                        byte[] addressBytes = address.GetAddressBytes ();
                                        if (addressBytes[0] >= 224 && addressBytes[0] <= 239) {
-                                               multicastAddresses.Add (address);
+                                               multicastAddresses.InternalAdd (new SystemMulticastIPAddressInformation (new SystemIPAddressInformation (address, true, false)));
                                        }
                                }
-                               return MulticastIPAddressInformationImplCollection.LinuxFromList (multicastAddresses);
+                               return multicastAddresses;
                        }
                }
 
                public override UnicastIPAddressInformationCollection UnicastAddresses {
                        get {
-                               List<IPAddress> unicastAddresses = new List<IPAddress> ();
+                               var unicastAddresses = new UnicastIPAddressInformationCollection ();
                                foreach (IPAddress address in addresses) {
                                        switch (address.AddressFamily) {
                                                case AddressFamily.InterNetwork:
                                                        byte top = address.GetAddressBytes () [0];
                                                        if (top >= 224 && top <= 239)
                                                                continue;
-                                                       unicastAddresses.Add (address);
+                                                       unicastAddresses.InternalAdd (new LinuxUnicastIPAddressInformation (address));
                                                        break;
 
                                                case AddressFamily.InterNetworkV6:
                                                        if (address.IsIPv6Multicast)
                                                                continue;
-                                                       unicastAddresses.Add (address);
+                                                       unicastAddresses.InternalAdd (new LinuxUnicastIPAddressInformation (address));
                                                        break;
                                        }
                                }
-                               return UnicastIPAddressInformationImplCollection.LinuxFromList (unicastAddresses);
+                               return unicastAddresses;
                        }
                }
 
@@ -218,8 +192,6 @@ namespace System.Net.NetworkInformation {
 
        class LinuxIPInterfaceProperties : UnixIPInterfaceProperties
        {
-               IPAddressCollection gateways;
-
                public LinuxIPInterfaceProperties (LinuxNetworkInterface iface, List <IPAddress> addresses)
                        : base (iface, addresses)
                {
@@ -233,8 +205,9 @@ namespace System.Net.NetworkInformation {
                        return ipv4iface_properties;
                }
 
-               void ParseRouteInfo (string iface)
+               IPAddressCollection ParseRouteInfo (string iface)
                {
+                       var col = new IPAddressCollection ();
                        try {
                                using (StreamReader reader = new StreamReader ("/proc/net/route")) {
                                        string line;
@@ -255,31 +228,26 @@ namespace System.Net.NetworkInformation {
                                                                        continue;
                                                        }
                                                        IPAddress ip = new IPAddress (ipbytes);
-                                                       if (!ip.Equals (IPAddress.Any) && !gateways.Contains (ip))
-                                                               gateways.Add (ip);
+                                                       if (!ip.Equals (IPAddress.Any) && !col.Contains (ip))
+                                                               col.InternalAdd (ip);
                                                }
                                        }
                                }
                        } catch {
                        }
+
+                       return col;
                }
 
                public override GatewayIPAddressInformationCollection GatewayAddresses {
                        get {
-                               gateways = new IPAddressCollection ();
-                               ParseRouteInfo (this.iface.Name.ToString());
-                               if (gateways.Count > 0)
-                                       return new UnixGatewayIPAddressInformationCollection (gateways);
-                               else
-                                       return UnixGatewayIPAddressInformationCollection.Empty;
+                               return SystemGatewayIPAddressInformation.ToGatewayIpAddressInformationCollection (ParseRouteInfo (this.iface.Name.ToString()));
                        }
                }
        }
 
        class MacOsIPInterfaceProperties : UnixIPInterfaceProperties
        {
-               IPAddressCollection gateways;
-
                public MacOsIPInterfaceProperties (MacOsNetworkInterface iface, List <IPAddress> addresses)
                        : base (iface, addresses)
                {
@@ -298,16 +266,16 @@ namespace System.Net.NetworkInformation {
 
                public override GatewayIPAddressInformationCollection GatewayAddresses {
                        get {
-                               gateways = new IPAddressCollection ();
+                               var gateways = new IPAddressCollection ();
                                string[] gw_addrlist;
                                if (!ParseRouteInfo_internal (this.iface.Name.ToString(), out gw_addrlist))
-                                       return UnixGatewayIPAddressInformationCollection.Empty;
+                                       return new GatewayIPAddressInformationCollection ();
 
                                for(int i=0; i<gw_addrlist.Length; i++) {
                                        try {
                                                IPAddress ip = IPAddress.Parse(gw_addrlist[i]);
                                                if (!ip.Equals (IPAddress.Any) && !gateways.Contains (ip))
-                                                       gateways.Add (ip);
+                                                       gateways.InternalAdd (ip);
                                        } catch (ArgumentNullException) {
                                                /* Ignore this, as the
                                                 * internal call might have
@@ -317,10 +285,7 @@ namespace System.Net.NetworkInformation {
                                        }
                                }
 
-                               if (gateways.Count > 0)
-                                       return new UnixGatewayIPAddressInformationCollection (gateways);
-                               else
-                                       return UnixGatewayIPAddressInformationCollection.Empty;
+                               return SystemGatewayIPAddressInformation.ToGatewayIpAddressInformationCollection (gateways);
                        }
                }
        }
@@ -351,7 +316,21 @@ namespace System.Net.NetworkInformation {
                }
 
                public override IPAddressInformationCollection AnycastAddresses {
-                       get { return IPAddressInformationImplCollection.Win32FromAnycast (addr.FirstAnycastAddress); }
+                       get { return Win32FromAnycast (addr.FirstAnycastAddress); }
+               }
+
+               static IPAddressInformationCollection Win32FromAnycast (IntPtr ptr)
+               {
+                       var c = new IPAddressInformationCollection ();
+                       Win32_IP_ADAPTER_ANYCAST_ADDRESS a;
+                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
+                               a = (Win32_IP_ADAPTER_ANYCAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_ANYCAST_ADDRESS));
+                               c.InternalAdd (new SystemIPAddressInformation (
+                                      a.Address.GetIPAddress (),
+                                      a.LengthFlags.IsDnsEligible,
+                                      a.LengthFlags.IsTransient));
+                       }
+                       return c;
                }
 
                public override IPAddressCollection DhcpServerAddresses {
@@ -374,7 +353,26 @@ namespace System.Net.NetworkInformation {
                        get {
                                Win32_IP_ADAPTER_INFO v4info = Win32NetworkInterface2.GetAdapterInfoByIndex (mib4.Index);
                                // FIXME: should ipv6 DhcpServer be considered?
-                               return v4info != null ? new Win32GatewayIPAddressInformationCollection (v4info.GatewayList) : Win32GatewayIPAddressInformationCollection.Empty;
+
+                               var col = new GatewayIPAddressInformationCollection ();
+                               if (v4info != null) {
+                                       var a = v4info.GatewayList;
+                                       if (!String.IsNullOrEmpty (a.IpAddress)) {
+                                               col.InternalAdd(new SystemGatewayIPAddressInformation(IPAddress.Parse (a.IpAddress)));
+                                               AddSubsequently (a.Next, col);
+                                       }
+                               }
+
+                               return col;
+                       }
+               }
+
+               static void AddSubsequently (IntPtr head, GatewayIPAddressInformationCollection col)
+               {
+                       Win32_IP_ADDR_STRING a;
+                       for (IntPtr p = head; p != IntPtr.Zero; p = a.Next) {
+                               a = (Win32_IP_ADDR_STRING) Marshal.PtrToStructure (p, typeof (Win32_IP_ADDR_STRING));
+                               col.InternalAdd (new SystemGatewayIPAddressInformation (IPAddress.Parse (a.IpAddress)));
                        }
                }
 
@@ -387,17 +385,42 @@ namespace System.Net.NetworkInformation {
                }
 
                public override MulticastIPAddressInformationCollection MulticastAddresses {
-                       get { return MulticastIPAddressInformationImplCollection.Win32FromMulticast (addr.FirstMulticastAddress); }
+                       get { return Win32FromMulticast (addr.FirstMulticastAddress); }
+               }
+
+               static MulticastIPAddressInformationCollection Win32FromMulticast (IntPtr ptr)
+               {
+                       var c = new MulticastIPAddressInformationCollection ();
+                       Win32_IP_ADAPTER_MULTICAST_ADDRESS a;
+                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
+                               a = (Win32_IP_ADAPTER_MULTICAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_MULTICAST_ADDRESS));
+                               c.InternalAdd (new SystemMulticastIPAddressInformation (new SystemIPAddressInformation (
+                                      a.Address.GetIPAddress (),
+                                      a.LengthFlags.IsDnsEligible,
+                                      a.LengthFlags.IsTransient)));
+                       }
+                       return c;
                }
 
                public override UnicastIPAddressInformationCollection UnicastAddresses {
                        get {
                                Win32_IP_ADAPTER_INFO ai = Win32NetworkInterface2.GetAdapterInfoByIndex (mib4.Index);
                                // FIXME: should ipv6 DhcpServer be considered?
-                               return ai != null ? UnicastIPAddressInformationImplCollection.Win32FromUnicast ((int) ai.Index, addr.FirstUnicastAddress) : UnicastIPAddressInformationImplCollection.Empty;
+                               return ai != null ? Win32FromUnicast ((int) ai.Index, addr.FirstUnicastAddress) : new UnicastIPAddressInformationCollection ();
                        }
                }
 
+               static UnicastIPAddressInformationCollection Win32FromUnicast (int ifIndex, IntPtr ptr)
+               {
+                       UnicastIPAddressInformationCollection c = new UnicastIPAddressInformationCollection ();
+                       Win32_IP_ADAPTER_UNICAST_ADDRESS a;
+                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
+                               a = (Win32_IP_ADAPTER_UNICAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_UNICAST_ADDRESS));
+                               c.InternalAdd (new Win32UnicastIPAddressInformation (ifIndex, a));
+                       }
+                       return c;
+               }
+
                public override IPAddressCollection WinsServersAddresses {
                        get {
                                Win32_IP_ADAPTER_INFO v4info = Win32NetworkInterface2.GetAdapterInfoByIndex (mib4.Index);
@@ -408,6 +431,7 @@ namespace System.Net.NetworkInformation {
 
        }
 #endif
+
 }
 
 
diff --git a/mcs/class/System/System.Net.NetworkInformation/IPStatus.cs b/mcs/class/System/System.Net.NetworkInformation/IPStatus.cs
deleted file mode 100644 (file)
index 0d21b3b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-// System.Net.NetworkInformation.IPStatus
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum IPStatus {
-               Unknown = -1,
-               Success = 0,
-               DestinationNetworkUnreachable = 11002,
-               DestinationHostUnreachable = 11003,
-               DestinationProhibited = 11004,
-               DestinationProtocolUnreachable = 11004,
-               DestinationPortUnreachable = 11005,
-               NoResources = 11006,
-               BadOption = 11007,
-               HardwareError = 11008,
-               PacketTooBig = 11009,
-               TimedOut = 11010,
-               BadRoute = 11012,
-               TtlExpired = 11013,
-               TtlReassemblyTimeExceeded = 11014,
-               ParameterProblem = 11015,
-               SourceQuench = 11016,
-               BadDestination = 11018,
-               DestinationUnreachable = 11040,
-               TimeExceeded = 11041,
-               BadHeader = 11042,
-               UnrecognizedNextHeader = 11043,
-               IcmpError = 11044,
-               DestinationScopeMismatch = 11045
-       }
-}
-
-
index 33264fb4d6a7d07376d26f8f318849d69af19e54..c3c34f847a0f549668c6a69a543dbf12ac056e86 100644 (file)
@@ -31,20 +31,6 @@ using System.IO;
 using System.Runtime.InteropServices;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IPv4InterfaceProperties {
-               protected IPv4InterfaceProperties ()
-               {
-               }
-
-               public abstract int Index { get; }
-               public abstract bool IsAutomaticPrivateAddressingActive { get; }
-               public abstract bool IsAutomaticPrivateAddressingEnabled { get; }
-               public abstract bool IsDhcpEnabled { get; }
-               public abstract bool IsForwardingEnabled { get; }
-               public abstract int Mtu { get; }
-               public abstract bool UsesWins { get; }
-       }
-
        abstract class UnixIPv4InterfaceProperties : IPv4InterfaceProperties
        {
                protected UnixNetworkInterface iface;
index bf31050377aed351375a6e76145611ef864fa5b7..d7a3dcfe20ac6e17c22a39ce98255886d52774e8 100644 (file)
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 namespace System.Net.NetworkInformation {
-       public abstract class IPv6InterfaceProperties {
-               protected IPv6InterfaceProperties ()
-               {
-               }
-
-               public abstract int Index { get; }
-               public abstract int Mtu { get; }
-       }
 #if !MOBILE
        class Win32IPv6InterfaceProperties : IPv6InterfaceProperties
        {
index 3ad40ed2e1cd13361e8af8d0bb0ab2ac14b265b6..c3888abeafd736812dd3f58968fbc3d65de2b0a1 100644 (file)
@@ -30,39 +30,6 @@ using System.Collections.Specialized;
 using System.Globalization;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IcmpV4Statistics {
-               protected IcmpV4Statistics ()
-               {
-               }
-
-               public abstract long AddressMaskRepliesReceived { get; }
-               public abstract long AddressMaskRepliesSent { get; }
-               public abstract long AddressMaskRequestsReceived { get; }
-               public abstract long AddressMaskRequestsSent { get; }
-               public abstract long DestinationUnreachableMessagesReceived { get; }
-               public abstract long DestinationUnreachableMessagesSent { get; }
-               public abstract long EchoRepliesReceived { get; }
-               public abstract long EchoRepliesSent { get; }
-               public abstract long EchoRequestsReceived { get; }
-               public abstract long EchoRequestsSent { get; }
-               public abstract long ErrorsReceived { get; }
-               public abstract long ErrorsSent { get; }
-               public abstract long MessagesReceived { get; }
-               public abstract long MessagesSent { get; }
-               public abstract long ParameterProblemsReceived { get; }
-               public abstract long ParameterProblemsSent { get; }
-               public abstract long RedirectsReceived { get; }
-               public abstract long RedirectsSent { get; }
-               public abstract long SourceQuenchesReceived { get; }
-               public abstract long SourceQuenchesSent { get; }
-               public abstract long TimeExceededMessagesReceived { get; }
-               public abstract long TimeExceededMessagesSent { get; }
-               public abstract long TimestampRepliesReceived { get; }
-               public abstract long TimestampRepliesSent { get; }
-               public abstract long TimestampRequestsReceived { get; }
-               public abstract long TimestampRequestsSent { get; }
-       }
-
        class MibIcmpV4Statistics : IcmpV4Statistics
        {
                StringDictionary dic;
index 94b05b143429e883141eb4e4e54029371f3ebc0c..ffe247afc6271447e604dc80ba9b06883e446c9f 100644 (file)
@@ -31,45 +31,6 @@ using System.Globalization;
 using System.Runtime.InteropServices;
 
 namespace System.Net.NetworkInformation {
-       public abstract class IcmpV6Statistics {
-               protected IcmpV6Statistics ()
-               {
-               }
-
-               public abstract long DestinationUnreachableMessagesReceived { get; }
-               public abstract long DestinationUnreachableMessagesSent { get; }
-               public abstract long EchoRepliesReceived { get; }
-               public abstract long EchoRepliesSent { get; }
-               public abstract long EchoRequestsReceived { get; }
-               public abstract long EchoRequestsSent { get; }
-               public abstract long ErrorsReceived { get; }
-               public abstract long ErrorsSent { get; }
-               public abstract long MembershipQueriesReceived { get; }
-               public abstract long MembershipQueriesSent { get; }
-               public abstract long MembershipReductionsReceived { get; }
-               public abstract long MembershipReductionsSent { get; }
-               public abstract long MembershipReportsReceived { get; }
-               public abstract long MembershipReportsSent { get; }
-               public abstract long MessagesReceived { get; }
-               public abstract long MessagesSent { get; }
-               public abstract long NeighborAdvertisementsReceived { get; }
-               public abstract long NeighborAdvertisementsSent { get; }
-               public abstract long NeighborSolicitsReceived { get; }
-               public abstract long NeighborSolicitsSent { get; }
-               public abstract long PacketTooBigMessagesReceived { get; }
-               public abstract long PacketTooBigMessagesSent { get; }
-               public abstract long ParameterProblemsReceived { get; }
-               public abstract long ParameterProblemsSent { get; }
-               public abstract long RedirectsReceived { get; }
-               public abstract long RedirectsSent { get; }
-               public abstract long RouterAdvertisementsReceived { get; }
-               public abstract long RouterAdvertisementsSent { get; }
-               public abstract long RouterSolicitsReceived { get; }
-               public abstract long RouterSolicitsSent { get; }
-               public abstract long TimeExceededMessagesReceived { get; }
-               public abstract long TimeExceededMessagesSent { get; }
-       }
-
        class MibIcmpV6Statistics : IcmpV6Statistics
        {
                StringDictionary dic;
diff --git a/mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformation.cs b/mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformation.cs
deleted file mode 100644 (file)
index 3aa4127..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-//
-// System.Net.NetworkInformation.MulticastIPAddressInformation
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.Runtime.InteropServices;
-
-namespace System.Net.NetworkInformation {
-       public abstract class MulticastIPAddressInformation : IPAddressInformation {
-               protected MulticastIPAddressInformation ()
-               {
-               }
-
-               public abstract long AddressPreferredLifetime { get; }
-               public abstract long AddressValidLifetime { get; }
-               public abstract long DhcpLeaseLifetime { get; }
-               public abstract DuplicateAddressDetectionState DuplicateAddressDetectionState { get; }
-               public abstract PrefixOrigin PrefixOrigin { get; }
-               public abstract SuffixOrigin SuffixOrigin { get; }
-       }
-
-       // So, why are there many pointless members in the base class?
-       class MulticastIPAddressInformationImpl : MulticastIPAddressInformation
-       {
-               IPAddress address;
-               bool is_dns_eligible, is_transient;
-
-               public MulticastIPAddressInformationImpl (IPAddress address, bool isDnsEligible, bool isTransient)
-               {
-                       this.address = address;
-                       this.is_dns_eligible = isDnsEligible;
-                       this.is_transient = isTransient;
-               }
-
-               public override IPAddress Address {
-                       get { return address; }
-               }
-
-               public override bool IsDnsEligible {
-                       get { return is_dns_eligible; }
-               }
-
-               public override bool IsTransient {
-                       get { return is_transient; }
-               }
-
-               public override long AddressPreferredLifetime {
-                       get { return 0; }
-               }
-
-               public override long AddressValidLifetime {
-                       get { return 0; }
-               }
-
-               public override long DhcpLeaseLifetime {
-                       get { return 0; }
-               }
-
-               public override DuplicateAddressDetectionState DuplicateAddressDetectionState {
-                       get { return DuplicateAddressDetectionState.Invalid; }
-               }
-
-               public override PrefixOrigin PrefixOrigin {
-                       get { return PrefixOrigin.Other; }
-               }
-
-               public override SuffixOrigin SuffixOrigin {
-                       get { return SuffixOrigin.Other; }
-               }
-
-       }
-}
diff --git a/mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformationCollection.cs b/mcs/class/System/System.Net.NetworkInformation/MulticastIPAddressInformationCollection.cs
deleted file mode 100644 (file)
index 36bd9c4..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-//
-// System.Net.NetworkInformation.MulticastIPAddressInformationCollection
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//     Eric Butler (eric@extremeboredom.net)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace System.Net.NetworkInformation {
-       public class MulticastIPAddressInformationCollection : ICollection<MulticastIPAddressInformation>, IEnumerable<MulticastIPAddressInformation>, IEnumerable {
-               List<MulticastIPAddressInformation> list = new List<MulticastIPAddressInformation> ();
-               
-               protected internal MulticastIPAddressInformationCollection ()
-               {
-               }
-
-               public virtual void Add (MulticastIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Add (address);
-               }
-
-               public virtual void Clear ()
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Clear ();
-               }
-
-               public virtual bool Contains (MulticastIPAddressInformation address)
-               {
-                       return list.Contains (address);
-               }
-
-               public virtual void CopyTo (MulticastIPAddressInformation [] array, int offset)
-               {
-                       list.CopyTo (array, offset);
-               }
-
-               public virtual IEnumerator<MulticastIPAddressInformation> GetEnumerator ()
-               {
-                       return ((IEnumerable<MulticastIPAddressInformation>)list).GetEnumerator ();
-               }
-
-               public virtual bool Remove (MulticastIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       return list.Remove (address);
-               }
-
-               IEnumerator IEnumerable.GetEnumerator ()
-               {
-                       return list.GetEnumerator ();
-               }
-
-               public virtual int Count {
-                       get { return list.Count; }
-               }
-
-               public virtual bool IsReadOnly {
-                       get { return true; }
-               }
-
-               public virtual MulticastIPAddressInformation this [int index] {
-                       get { return list [index]; }
-               }
-       }
-
-       class MulticastIPAddressInformationImplCollection : MulticastIPAddressInformationCollection
-       {
-               public static readonly MulticastIPAddressInformationImplCollection Empty = new MulticastIPAddressInformationImplCollection (true);
-
-               bool is_readonly;
-
-               // for static methods
-               MulticastIPAddressInformationImplCollection (bool isReadOnly)
-               {
-                       is_readonly = isReadOnly;
-               }
-
-               public override bool IsReadOnly {
-                       get { return is_readonly; }
-               }
-
-#if !MOBILE
-               public static MulticastIPAddressInformationCollection Win32FromMulticast (IntPtr ptr)
-               {
-                       MulticastIPAddressInformationImplCollection c = new MulticastIPAddressInformationImplCollection (false);
-                       Win32_IP_ADAPTER_MULTICAST_ADDRESS a;
-                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
-                               a = (Win32_IP_ADAPTER_MULTICAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_MULTICAST_ADDRESS));
-                               c.Add (new MulticastIPAddressInformationImpl (
-                                      a.Address.GetIPAddress (),
-                                      a.LengthFlags.IsDnsEligible,
-                                      a.LengthFlags.IsTransient));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-#endif
-
-               public static MulticastIPAddressInformationImplCollection LinuxFromList (List<IPAddress> addresses)
-               {
-                       MulticastIPAddressInformationImplCollection c = new MulticastIPAddressInformationImplCollection (false);
-                       foreach (IPAddress address in addresses) {
-                               c.Add (new MulticastIPAddressInformationImpl (
-                                       address,
-                                       true,
-                                       false));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetBiosNodeType.cs b/mcs/class/System/System.Net.NetworkInformation/NetBiosNodeType.cs
deleted file mode 100644 (file)
index 42fb66d..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-// System.Net.NetworkInformation.NetBiosNodeType
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum NetBiosNodeType {
-               Unknown = 0,
-               Broadcast = 1,
-               Peer2Peer = 1 << 1,
-               Mixed = 1 << 2,
-               Hybrid = 1 << 3,
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkAddressChangedEventHandler.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkAddressChangedEventHandler.cs
deleted file mode 100644 (file)
index 4242c9b..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkAddressChangeEventHandler
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public delegate void NetworkAddressChangedEventHandler (object sender, EventArgs e);
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityChangedEventHandler.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityChangedEventHandler.cs
deleted file mode 100644 (file)
index df580bb..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkAvailabilityChangedEventHandler
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net.NetworkInformation {
-       public delegate void NetworkAvailabilityChangedEventHandler (object sender, NetworkAvailabilityEventArgs e);
-}
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityEventArgs.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkAvailabilityEventArgs.cs
deleted file mode 100644 (file)
index af78934..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkAvailabilityEventArgs
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Net.NetworkInformation {
-       public class NetworkAvailabilityEventArgs : EventArgs {
-               bool available;
-
-               internal NetworkAvailabilityEventArgs (bool available)
-               {
-                       this.available = available;
-               }
-
-               public bool IsAvailable {
-                       get { return available; }
-               }
-       }
-}
-
index 357217659964fea2aabcd59beb116fe8b5866d08..50e9009741a2f5d028818a16e4aa7ddc0354d6a8 100644 (file)
@@ -101,6 +101,9 @@ namespace System.Net.NetworkInformation {
 
                static void MaybeCreate ()
                {
+#if MONOTOUCH_WATCH
+                       throw new PlatformNotSupportedException ("NetworkInformation.NetworkChange is not supported on the current platform.");
+#else
                        if (networkChange != null)
                                return;
 
@@ -111,6 +114,7 @@ namespace System.Net.NetworkInformation {
                                networkChange = new LinuxNetworkChange ();
 #endif
                        }
+#endif // MONOTOUCH_WATCH
                }
 
                static void MaybeDispose ()
@@ -122,6 +126,7 @@ namespace System.Net.NetworkInformation {
                }
        }
 
+#if !MONOTOUCH_WATCH
        internal sealed class MacNetworkChange : INetworkChange
        {
                const string DL_LIB = "/usr/lib/libSystem.dylib";
@@ -317,6 +322,7 @@ namespace System.Net.NetworkInformation {
                                availabilityChanged (null, new NetworkAvailabilityEventArgs (instance.IsAvailable));
                }
        }
+#endif // !MONOTOUCH_WATCH
 
 #if !NETWORK_CHANGE_STANDALONE && !MONOTOUCH
 
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInformationAccess.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInformationAccess.cs
deleted file mode 100644 (file)
index b51aa38..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInformationAccess
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-namespace System.Net.NetworkInformation {
-       [Flags]
-       public enum NetworkInformationAccess {
-               None,
-               Read,
-               Ping = 4
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInformationException.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInformationException.cs
deleted file mode 100644 (file)
index 0770801..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInformationException
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.ComponentModel;
-using System.Runtime.Serialization;
-
-namespace System.Net.NetworkInformation {
-       [Serializable]
-       public class NetworkInformationException
-#if !NET_2_1
-               : Win32Exception
-#else
-               : Exception
-#endif
-       {
-               int error_code;
-               
-               public NetworkInformationException ()
-               {
-               }
-
-#if !NET_2_1
-               public NetworkInformationException (int errorCode) : base (errorCode)
-               {
-               }
-#else
-               public NetworkInformationException (int errorCode)
-               {
-                       error_code = errorCode;
-               }
-#endif
-
-#if !NET_2_1
-               protected NetworkInformationException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-                       error_code = info.GetInt32 ("ErrorCode");
-               }
-#endif
-
-               public
-#if !NET_2_1
-               override
-#endif
-               int ErrorCode {
-                       get { return error_code; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermission.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermission.cs
deleted file mode 100644 (file)
index 2ffeb88..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInformationPermission
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Security;
-using System.Security.Permissions;
-
-namespace System.Net.NetworkInformation {
-       [Serializable]
-       public sealed class NetworkInformationPermission : CodeAccessPermission, IUnrestrictedPermission {
-               private const int version = 1;
-
-               [MonoTODO]
-               public NetworkInformationPermission (PermissionState state)
-               {
-               }
-
-               [MonoTODO]
-               public NetworkInformationPermission (NetworkInformationAccess access)
-               {
-               }
-
-               [MonoTODO]
-               public void AddPermission (NetworkInformationAccess access)
-               {
-               }
-
-               [MonoTODO]
-               public override IPermission Copy ()
-               {
-                       return null;
-               }
-
-               [MonoTODO]
-               public override void FromXml (SecurityElement securityElement)
-               {
-               }
-
-               [MonoTODO]
-               public override IPermission Intersect (System.Security.IPermission target)
-               {
-                       return null;
-               }
-
-               [MonoTODO]
-               public override bool IsSubsetOf (IPermission target)
-               {
-                       return false;
-               }
-
-               [MonoTODO]
-               public bool IsUnrestricted ()
-               {
-                       return false;
-               }
-
-               [MonoTODO]
-               public override SecurityElement ToXml ()
-               {
-                       SecurityElement se = PermissionHelper.Element (typeof (NetworkInformationPermission), version);
-
-                       // FIXME: add fields
-
-                       return se;
-               }
-
-               [MonoTODO]
-               public override IPermission Union (IPermission target)
-               {
-                       return null;
-               }
-               
-               [MonoTODO]
-               public NetworkInformationAccess Access {
-                       get { return 0; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermissionAttribute.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInformationPermissionAttribute.cs
deleted file mode 100644 (file)
index 6b37c4f..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInformationPermissionAttribute
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Security;
-using System.Security.Permissions;
-
-namespace System.Net.NetworkInformation {
-       [Serializable]
-       [AttributeUsage (AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Struct | AttributeTargets.Constructor | AttributeTargets.Method, AllowMultiple = true, Inherited = false)]
-       public sealed class NetworkInformationPermissionAttribute : System.Security.Permissions.CodeAccessSecurityAttribute {
-               string access;
-
-               public NetworkInformationPermissionAttribute (SecurityAction action)
-                       : base (action)
-               {
-               }
-
-               [MonoTODO ("verify implementation")]
-               public override IPermission CreatePermission ()
-               {
-                       NetworkInformationAccess a = NetworkInformationAccess.None;
-                       switch (Access) {
-                       case "Read":
-                               a = NetworkInformationAccess.Read;
-                               break;
-                       case "Full":
-                               a = NetworkInformationAccess.Read | NetworkInformationAccess.Ping;
-                               break;
-                       }
-                       return new NetworkInformationPermission (a);
-               }
-
-               public string Access {
-                       get { return access; }
-                       set {
-                               switch (access) {
-                               case "Read":
-                               case "Full":
-                               case "None":
-                                       break;
-                               default:
-                                       throw new ArgumentException ("Only 'Read', 'Full' and 'None' are allowed");
-                               }
-                               access = value; 
-                       }
-               }
-       }
-}
-
index 27927a81f61092cf2d17a009c4e756bc54b62d6a..ece698af2b45ee2714a2c52e822ce4a09c90083d 100644 (file)
@@ -41,15 +41,11 @@ using System.IO;
 using System.Globalization;
 
 namespace System.Net.NetworkInformation {
-       public abstract class NetworkInterface {
+       static class SystemNetworkInterface {
 
                static readonly NetworkInterfaceFactory nif = NetworkInterfaceFactory.Create ();
 
-               protected NetworkInterface ()
-               {
-               }
-
-               public static NetworkInterface [] GetAllNetworkInterfaces ()
+               public static NetworkInterface [] GetNetworkInterfaces ()
                {
                        try {
                                return nif.GetAllNetworkInterfaces ();
@@ -58,36 +54,28 @@ namespace System.Net.NetworkInformation {
                        }
                }
 
-               [MonoTODO("Always returns true")]
-               public static bool GetIsNetworkAvailable ()
+               public static bool InternalGetIsNetworkAvailable ()
                {
+                       // TODO:
                        return true;
                }
-               
-               public static int LoopbackInterfaceIndex {
+
+               public static int InternalLoopbackInterfaceIndex {
                        get {
                                return nif.GetLoopbackInterfaceIndex ();
                        }
                }
 
+               public static int InternalIPv6LoopbackInterfaceIndex {
+                       get {
+                               throw new NotImplementedException ();
+                       }
+               }
+
                public static IPAddress GetNetMask (IPAddress address)
                {
                        return nif.GetNetMask (address);
                }
-
-               public abstract IPInterfaceProperties GetIPProperties ();
-               public abstract IPv4InterfaceStatistics GetIPv4Statistics ();
-               public abstract PhysicalAddress GetPhysicalAddress ();
-               public abstract bool Supports (NetworkInterfaceComponent networkInterfaceComponent);
-
-               public abstract string Description { get; }
-               public abstract string Id { get; }
-               public abstract bool IsReceiveOnly { get; }
-               public abstract string Name { get; }
-               public abstract NetworkInterfaceType NetworkInterfaceType { get; }
-               public abstract OperationalStatus OperationalStatus { get; }
-               public abstract long Speed { get; }
-               public abstract bool SupportsMulticast { get; }
        }
 
        abstract class NetworkInterfaceFactory
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceComponent.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceComponent.cs
deleted file mode 100644 (file)
index daf09e4..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInterfaceComponent
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-namespace System.Net.NetworkInformation {
-       public enum NetworkInterfaceComponent {
-               IPv4,
-               IPv6
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceType.cs b/mcs/class/System/System.Net.NetworkInformation/NetworkInterfaceType.cs
deleted file mode 100644 (file)
index 7658091..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-//
-// System.Net.NetworkInformation.NetworkInterfaceType
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-namespace System.Net.NetworkInformation {
-       public enum NetworkInterfaceType {
-               Unknown = 1,
-               Ethernet = 6,
-               TokenRing = 9,
-               Fddi = 15,
-               BasicIsdn = 20,
-               PrimaryIsdn = 21,
-               Ppp = 23,
-               Loopback = 24,
-               Ethernet3Megabit = 26,
-               Slip = 28,
-               Atm = 37,
-               GenericModem = 48,
-               FastEthernetT = 62,
-               Isdn = 63,
-               FastEthernetFx = 69,
-               Wireless80211 = 71,
-               AsymmetricDsl = 94,
-               RateAdaptDsl = 95,
-               SymmetricDsl = 96,
-               VeryHighSpeedDsl = 97,
-               IPOverAtm = 114,
-               GigabitEthernet = 117,
-               Tunnel = 131,
-               MultiRateSymmetricDsl = 143,
-               HighPerformanceSerialBus = 144
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/OperationalStatus.cs b/mcs/class/System/System.Net.NetworkInformation/OperationalStatus.cs
deleted file mode 100644 (file)
index 1050f98..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.Net.NetworkInformation.OperationalStatus
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum OperationalStatus {
-               Up = 1,
-               Down = 2,
-               Testing = 3,
-               Unknown = 4,
-               Dormant = 5,
-               NotPresent = 6,
-               LowerLayerDown = 7
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/PhysicalAddress.cs b/mcs/class/System/System.Net.NetworkInformation/PhysicalAddress.cs
deleted file mode 100644 (file)
index 2c0c933..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-//
-// System.Net.NetworkInformation.PhysicalAddress
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Text;
-using System.Globalization;
-
-namespace System.Net.NetworkInformation {
-       public class PhysicalAddress {
-               public static readonly PhysicalAddress None = new PhysicalAddress (new byte [0]);
-               private const int numberOfBytes = 6;
-               byte [] bytes;
-               
-               public PhysicalAddress (byte [] address)
-               {
-                       this.bytes = address;
-               }
-
-               internal static PhysicalAddress ParseEthernet (string address)
-               {
-                       if (address == null)
-                               return None;
-
-                       string [] blocks = address.Split (':');
-                       byte [] bytes = new byte [blocks.Length];
-                       int i = 0;
-                       foreach (string b in blocks){
-                               bytes [i++] = Byte.Parse (b, NumberStyles.HexNumber);
-                       }
-                       return new PhysicalAddress (bytes);
-               }
-               
-               public static PhysicalAddress Parse (string address)
-               {
-                       if (address == null)
-                               return None;
-
-                       if (address == string.Empty)
-                               throw new FormatException("An invalid physical address was specified.");
-
-                       string[] addrSplit = address.Split('-');
-
-                       if (addrSplit.Length == 1) {
-                               if (address.Length != numberOfBytes * 2)
-                                       throw new FormatException("An invalid physical address was specified.");
-
-                               addrSplit = new string[numberOfBytes];
-                               for (int index = 0; index < addrSplit.Length; index++) {
-                                       addrSplit[index] = address.Substring(index * 2, 2);
-                               }
-                       }
-
-                       if (addrSplit.Length == numberOfBytes) {
-                               foreach (string str in addrSplit)
-                                       if (str.Length > 2)
-                                               throw new FormatException("An invalid physical address was specified.");
-                                       else if (str.Length < 2)
-                                               throw new IndexOutOfRangeException("An invalid physical address was specified.");
-                       }
-                       else
-                               throw new FormatException("An invalid physical address was specified.");
-
-                       byte[] data = new byte[numberOfBytes];
-                       for (int i = 0; i < numberOfBytes; i++) {
-                               byte b = (byte)(GetValue(addrSplit[i][0]) << 4);
-                               b += GetValue(addrSplit[i][1]);
-                               data[i] = b;
-                       }
-
-                       return new PhysicalAddress (data);
-               }
-
-               static byte GetValue (char c)
-               {
-                       if (c >= '0' && c <= '9')
-                               return (byte) (c - '0');
-
-                       if (c >= 'a' && c <= 'f')
-                               return (byte) (c - 'a' + 10);
-
-                       if (c >= 'A' && c <= 'F')
-                               return (byte) (c - 'A' + 10);
-
-                       throw new FormatException ("Invalid physical address.");
-               }
-
-               public override bool Equals (object comparand)
-               {
-                       PhysicalAddress other = comparand as PhysicalAddress;
-                       if (other == null)
-                               return false;
-
-                       if (bytes.Length != other.bytes.Length)
-                               return false;
-
-                       for (int index = 0; index < bytes.Length; index++)
-                               if (bytes[index] != other.bytes[index])
-                                       return false;
-
-                       return true;
-               }
-
-               public override int GetHashCode ()
-               {
-                       return (bytes[5] << 8) ^ (bytes[4]) ^ (bytes[3] << 24) ^ (bytes[2] << 16) ^ (bytes[1] << 8) ^ (bytes[0]);
-               }
-
-               public byte [] GetAddressBytes ()
-               {
-                       return bytes;
-               }
-
-               public override string ToString ()
-               {
-                       if (bytes == null)
-                               return "";
-
-                       StringBuilder sb = new StringBuilder ();
-                       foreach (byte b in bytes)
-                               sb.AppendFormat("{0:X2}", b);
-                       return sb.ToString ();
-               }
-       }
-}
index f18b70c0f9ad0babef214d3c27daf9627aebc156..72645bcd3a712796e6c935af1280e12d887907b9 100644 (file)
@@ -159,7 +159,11 @@ namespace System.Net.NetworkInformation {
                {
                        user_async_state = null;
                        worker = null;
-                       cts = null;
+
+                       if (cts != null) {
+                               cts.Dispose();
+                               cts = null;
+                       }
 
                        if (PingCompleted != null)
                                PingCompleted (this, e);
@@ -596,6 +600,8 @@ namespace System.Net.NetworkInformation {
                        if ((worker != null) || (cts != null))
                                throw new InvalidOperationException ("Another SendAsync operation is in progress");
 
+                       cts = new CancellationTokenSource();
+
                        var task = Task<PingReply>.Factory.StartNew (
                                () => Send (address, timeout, buffer, options), cts.Token);
 
diff --git a/mcs/class/System/System.Net.NetworkInformation/PingException.cs b/mcs/class/System/System.Net.NetworkInformation/PingException.cs
deleted file mode 100644 (file)
index 6a10817..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-// System.Net.NetworkInformation.PingException
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Collections;
-using System.Runtime.Serialization;
-
-namespace System.Net.NetworkInformation {
-       [Serializable]
-       public class PingException : InvalidOperationException {
-               public PingException (string message)
-                       : base (message)
-               {
-               }
-
-               public PingException (string message, Exception innerException)
-                       : base (message, innerException)
-               {
-               }
-
-               protected PingException (SerializationInfo serializationInfo, StreamingContext streamingContext)
-                       : base (serializationInfo, streamingContext)
-               {
-               }
-
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/PingOptions.cs b/mcs/class/System/System.Net.NetworkInformation/PingOptions.cs
deleted file mode 100644 (file)
index f1dbecd..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-//
-// System.Net.NetworkInformation.PingOptions
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public class PingOptions {
-               int ttl = 128;
-               bool dont_fragment;
-
-               public PingOptions ()
-               {
-               }
-
-               public PingOptions (int ttl, bool dontFragment)
-               {
-                       if (ttl <= 0)
-                               throw new ArgumentOutOfRangeException ("Must be greater than zero.", "ttl");
-                       this.ttl = ttl;
-                       this.dont_fragment = dontFragment;
-               }
-
-               public bool DontFragment {
-                       get { return dont_fragment; }
-                       set { dont_fragment = value; }
-               }
-
-               public int Ttl {
-                       get { return ttl; }
-                       set { ttl = value; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/PingReply.cs b/mcs/class/System/System.Net.NetworkInformation/PingReply.cs
deleted file mode 100644 (file)
index ecdd001..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// System.Net.NetworkInformation.PingReply
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public class PingReply {
-               IPAddress address;
-               byte [] buffer;
-               PingOptions options;
-               long rtt;
-               IPStatus status;
-
-               internal PingReply (IPAddress address, byte [] buffer, PingOptions options, long roundtripTime, IPStatus status)
-               {
-                       this.address = address;
-                       this.buffer = buffer;
-                       this.options = options;
-                       this.rtt = roundtripTime;
-                       this.status = status;
-               }
-
-               public IPAddress Address {
-                       get { return address; }
-               }
-
-               public byte [] Buffer {
-                       get { return buffer; }
-               }
-
-               public PingOptions Options {
-                       get { return options; }
-               }
-
-               public long RoundtripTime {
-                       get { return rtt; }
-               }
-
-               public IPStatus Status {
-                       get { return status; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/PrefixOrigin.cs b/mcs/class/System/System.Net.NetworkInformation/PrefixOrigin.cs
deleted file mode 100644 (file)
index f61cf42..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-//
-// System.Net.NetworkInformation.PrefixOrigin
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum PrefixOrigin {
-               Other = 0,
-               Manual = 1,
-               WellKnown = 2,
-               Dhcp = 3,
-               RouterAdvertisement = 4
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/SuffixOrigin.cs b/mcs/class/System/System.Net.NetworkInformation/SuffixOrigin.cs
deleted file mode 100644 (file)
index 44d44f2..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.Net.NetworkInformation.SuffixOrigin
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum SuffixOrigin {
-               Other = 0,
-               Manual = 1,
-               WellKnown = 2,
-               OriginDhcp = 3,
-               LinkLayerAddress = 4,
-               Random = 5
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/TcpConnectionInformation.cs b/mcs/class/System/System.Net.NetworkInformation/TcpConnectionInformation.cs
deleted file mode 100644 (file)
index f2aa862..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-//
-// System.Net.NetworkInformation.TcpConnectionInformation
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.Net;
-
-namespace System.Net.NetworkInformation {
-       public abstract class TcpConnectionInformation {
-               protected TcpConnectionInformation ()
-               {
-               }
-               
-               public abstract IPEndPoint LocalEndPoint { get; }
-               public abstract IPEndPoint RemoteEndPoint { get; }
-               public abstract TcpState State { get; }
-       }
-
-       class TcpConnectionInformationImpl : TcpConnectionInformation
-       {
-               IPEndPoint local;
-               IPEndPoint remote;
-               TcpState state;
-
-               public TcpConnectionInformationImpl (IPEndPoint local, IPEndPoint remote, TcpState state)
-               {
-                       this.local = local;
-                       this.remote = remote;
-                       this.state = state;
-               }
-
-               public override IPEndPoint LocalEndPoint {
-                       get { return local; }
-               }
-               public override IPEndPoint RemoteEndPoint {
-                       get { return remote; }
-               }
-               public override TcpState State {
-                       get { return state; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net.NetworkInformation/TcpState.cs b/mcs/class/System/System.Net.NetworkInformation/TcpState.cs
deleted file mode 100644 (file)
index 75c097b..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// System.Net.NetworkInformation.TcpState
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2006 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net.NetworkInformation {
-       public enum TcpState {
-               Unknown = 0,
-               Closed = 1,
-               Listen = 2,
-               SynSent = 3,
-               SynReceived = 4,
-               Established = 5,
-               FinWait1 = 6,
-               FinWait2 = 7,
-               CloseWait = 8,
-               Closing = 9,
-               LastAck = 10,
-               TimeWait = 11,
-               DeleteTcb = 12
-       }
-}
-
index 9f8c88a2eb3f8fd0fd2024a0e0c8fb3745e86046..6e5fff4fdfe015b3403ad51f8cda8585e76e1fb6 100644 (file)
@@ -30,27 +30,6 @@ using System.Collections.Specialized;
 using System.Globalization;
 
 namespace System.Net.NetworkInformation {
-       public abstract class TcpStatistics {
-               protected TcpStatistics ()
-               {
-               }
-               
-               public abstract long ConnectionsAccepted { get; }
-               public abstract long ConnectionsInitiated { get; }
-               public abstract long CumulativeConnections { get; }
-               public abstract long CurrentConnections { get; }
-               public abstract long ErrorsReceived { get; }
-               public abstract long FailedConnectionAttempts { get; }
-               public abstract long MaximumConnections { get; }
-               public abstract long MaximumTransmissionTimeout { get; }
-               public abstract long MinimumTransmissionTimeout { get; }
-               public abstract long ResetConnections { get; }
-               public abstract long ResetsSent { get; }
-               public abstract long SegmentsReceived { get; }
-               public abstract long SegmentsResent { get; }
-               public abstract long SegmentsSent { get; }
-       }
-
        class MibTcpStatistics : TcpStatistics
        {
                StringDictionary dic;
index 2c9d6962912f899d777f1fc66e6e886630a5c604..2adcdec433ccc8721d41a843763909306d4a5962 100644 (file)
@@ -30,18 +30,6 @@ using System.Collections.Specialized;
 using System.Globalization;
 
 namespace System.Net.NetworkInformation {
-       public abstract class UdpStatistics {
-               protected UdpStatistics ()
-               {
-               }
-
-               public abstract long DatagramsReceived { get; }
-               public abstract long DatagramsSent { get; }
-               public abstract long IncomingDatagramsDiscarded { get; }
-               public abstract long IncomingDatagramsWithErrors { get; }
-               public abstract int UdpListeners { get; }
-       }
-
        class MibUdpStatistics : UdpStatistics
        {
                StringDictionary dic;
index a7510f033e9bca3608bcf551146d2381f44f10a2..439cab07cf091c553d92b9ba5565fdd1d81bb0dc 100644 (file)
@@ -159,7 +159,7 @@ namespace System.Net.NetworkInformation {
                                        return IPAddress.Any;
 
                                if (ipv4Mask == null)
-                                       ipv4Mask = NetworkInterface.GetNetMask (address);
+                                       ipv4Mask = SystemNetworkInterface.GetNetMask (address);
 
                                return ipv4Mask;
                        }
diff --git a/mcs/class/System/System.Net.NetworkInformation/UnicastIPAddressInformationCollection.cs b/mcs/class/System/System.Net.NetworkInformation/UnicastIPAddressInformationCollection.cs
deleted file mode 100644 (file)
index b83959a..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-//
-// System.Net.NetworkInformation.UnicastIPAddressInformationCollection
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//     Atsushi Enomoto (atsushi@ximian.com)
-//
-// Copyright (c) 2006-2007 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace System.Net.NetworkInformation {
-       public class UnicastIPAddressInformationCollection : ICollection<UnicastIPAddressInformation>,
-                                               IEnumerable<UnicastIPAddressInformation> {
-
-               List<UnicastIPAddressInformation> list = new List<UnicastIPAddressInformation> ();
-
-               protected internal UnicastIPAddressInformationCollection ()
-               {
-               }
-
-               public virtual void Add (UnicastIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Add (address);
-               }
-
-               public virtual void Clear ()
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       list.Clear ();
-               }
-
-               public virtual bool Contains (UnicastIPAddressInformation address)
-               {
-                       return list.Contains (address);
-               }
-
-               public virtual void CopyTo (UnicastIPAddressInformation [] array, int offset)
-               {
-                       list.CopyTo (array, offset);
-               }
-
-               public virtual IEnumerator<UnicastIPAddressInformation> GetEnumerator ()
-               {
-                       return ((IEnumerable<UnicastIPAddressInformation>)list).GetEnumerator ();
-               }
-
-               public virtual bool Remove (UnicastIPAddressInformation address)
-               {
-                       if (IsReadOnly)
-                               throw new NotSupportedException ("The collection is read-only.");
-                       return list.Remove (address);
-               }
-
-               IEnumerator IEnumerable.GetEnumerator ()
-               {
-                       return list.GetEnumerator ();
-               }
-
-               public virtual int Count {
-                       get { return list.Count; }
-               }
-
-               public virtual bool IsReadOnly {
-                       get { return true; }
-               }
-
-               public virtual UnicastIPAddressInformation this [int index] {
-                       get { return list [index]; }
-               }
-       }
-
-       class UnicastIPAddressInformationImplCollection : UnicastIPAddressInformationCollection
-       {
-               public static readonly UnicastIPAddressInformationImplCollection Empty = new UnicastIPAddressInformationImplCollection (true);
-
-               bool is_readonly;
-
-               // for static methods
-               UnicastIPAddressInformationImplCollection (bool isReadOnly)
-               {
-                       is_readonly = isReadOnly;
-               }
-
-               public override bool IsReadOnly {
-                       get { return is_readonly; }
-               }
-
-#if !MOBILE
-               public static UnicastIPAddressInformationCollection Win32FromUnicast (int ifIndex, IntPtr ptr)
-               {
-                       UnicastIPAddressInformationImplCollection c = new UnicastIPAddressInformationImplCollection (false);
-                       Win32_IP_ADAPTER_UNICAST_ADDRESS a;
-                       for (IntPtr p = ptr; p != IntPtr.Zero; p = a.Next) {
-                               a = (Win32_IP_ADAPTER_UNICAST_ADDRESS) Marshal.PtrToStructure (p, typeof (Win32_IP_ADAPTER_UNICAST_ADDRESS));
-                               c.Add (new Win32UnicastIPAddressInformation (ifIndex, a));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-#endif
-
-               public static UnicastIPAddressInformationCollection LinuxFromList (List<IPAddress> addresses)
-               {
-                       UnicastIPAddressInformationImplCollection c = new UnicastIPAddressInformationImplCollection (false);
-                       foreach (IPAddress address in addresses) {
-                               c.Add (new LinuxUnicastIPAddressInformation (address));
-                       }
-                       c.is_readonly = true;
-                       return c;
-               }
-       }
-}
-
index afcd4c36e024aef0e35f9810e24d12c7c136b0f8..3c3256c709629f5e10029a9e6a004a337bc13c89 100644 (file)
@@ -39,8 +39,11 @@ namespace System.Net.NetworkInformation
        [StructLayout (LayoutKind.Sequential)]
        class Win32_FIXED_INFO
        {
+               // Can't have unresolvable pinvokes on ios
+#if !MOBILE
                [DllImport ("iphlpapi.dll", SetLastError = true)]
                static extern int GetNetworkParams (byte [] bytes, ref int size);
+#endif
 
                static Win32_FIXED_INFO fixed_info;
 
@@ -54,6 +57,7 @@ namespace System.Net.NetworkInformation
 
                static Win32_FIXED_INFO GetInstance ()
                {
+#if !MOBILE
                        int len = 0;
                        byte [] bytes = null;
                        GetNetworkParams (null, ref len);
@@ -66,6 +70,9 @@ namespace System.Net.NetworkInformation
                                }
                        }
                        return info;
+#else
+               throw new NotImplementedException ();
+#endif
                }
 
                const int MAX_HOSTNAME_LEN = 128;
index 4db75cc9655e08b634c79f8270ccd4b2d04d527a..f9cb48fc731b07da8b83cabcb4cbc23210ccf733 100644 (file)
@@ -25,7 +25,7 @@
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
-#if SECURITY_DEP && !MONO_FEATURE_NEW_TLS
+#if !MONO_FEATURE_NEW_TLS
 namespace System.Net.Security
 {
        public enum EncryptionPolicy
index 33f83eccec481a4768b360eb7a4552b41b38f936..968038e5c3657b7995306ffa4a6750391770cf0e 100644 (file)
@@ -7,7 +7,9 @@
 
 using System;
 using System.IO;
+using System.Text;
 using System.Threading;
+using System.Diagnostics;
 using System.Collections.Generic;
 using Microsoft.Win32.SafeHandles;
 
@@ -16,6 +18,8 @@ namespace System.Net.Sockets {
        sealed class SafeSocketHandle : SafeHandleZeroOrMinusOneIsInvalid {
 
                List<Thread> blocking_threads;
+               Dictionary<Thread, StackTrace> threads_stacktraces;
+
                bool in_cleanup;
 
                const int SOCKET_CLOSED = 10004;
@@ -26,6 +30,9 @@ namespace System.Net.Sockets {
                public SafeSocketHandle (IntPtr preexistingHandle, bool ownsHandle) : base (ownsHandle)
                {
                        SetHandle (preexistingHandle);
+
+                       if (THROW_ON_ABORT_RETRIES)
+                               threads_stacktraces = new Dictionary<Thread, StackTrace> ();
                }
 
                // This is just for marshalling
@@ -48,8 +55,17 @@ namespace System.Net.Sockets {
                                        int abort_attempts = 0;
                                        while (blocking_threads.Count > 0) {
                                                if (abort_attempts++ >= ABORT_RETRIES) {
-                                                       if (THROW_ON_ABORT_RETRIES)
-                                                               throw new Exception ("Could not abort registered blocking threads before closing socket.");
+                                                       if (THROW_ON_ABORT_RETRIES) {
+                                                               StringBuilder sb = new StringBuilder ();
+                                                               sb.AppendLine ("Could not abort registered blocking threads before closing socket.");
+                                                               foreach (var thread in blocking_threads) {
+                                                                       sb.AppendLine ("Thread StackTrace:");
+                                                                       sb.AppendLine (threads_stacktraces[thread].ToString ());
+                                                               }
+                                                               sb.AppendLine ();
+
+                                                               throw new Exception (sb.ToString ());
+                                                       }
 
                                                        // Attempts to close the socket safely failed.
                                                        // We give up, and close the socket with pending blocking system calls.
@@ -94,6 +110,8 @@ namespace System.Net.Sockets {
                                /* We must use a finally block here to make this atomic. */
                                lock (blocking_threads) {
                                        blocking_threads.Add (Thread.CurrentThread);
+                                       if (THROW_ON_ABORT_RETRIES)
+                                               threads_stacktraces.Add (Thread.CurrentThread, new StackTrace (true));
                                }
                                if (release)
                                        DangerousRelease ();
@@ -110,6 +128,9 @@ namespace System.Net.Sockets {
                        //If this NRE, we're in deep problems because Register Must have
                        lock (blocking_threads) {
                                blocking_threads.Remove (Thread.CurrentThread);
+                               if (THROW_ON_ABORT_RETRIES)
+                                       threads_stacktraces.Remove (Thread.CurrentThread);
+
                                if (in_cleanup && blocking_threads.Count == 0)
                                        Monitor.Pulse (blocking_threads);
                        }
index b41d204ace8747f8b745660642c23d3998baf913..c7576897189c0e6c30b155b2380569a1867cc119 100644 (file)
@@ -702,8 +702,8 @@ namespace System.Net.Sockets
                        set {
                                ThrowIfDisposedAndClosed ();
 
-                               if (value < 0)
-                                       throw new ArgumentOutOfRangeException ("value", "The value specified for a set operation is less than zero");
+                               if (value < 0 || value > 255)
+                                       throw new ArgumentOutOfRangeException ("value", "The value specified for a set operation is less than zero or greater than 255.");
 
                                switch (address_family) {
                                case AddressFamily.InterNetwork:
@@ -3167,27 +3167,24 @@ namespace System.Net.Sockets
 
                public void SetSocketOption (SocketOptionLevel optionLevel, SocketOptionName optionName, bool optionValue)
                {
-                       ThrowIfDisposedAndClosed ();
-
-                       int error;
                        int int_val = optionValue ? 1 : 0;
-                       SetSocketOption_internal (safe_handle, optionLevel, optionName, null, null, int_val, out error);
 
-                       if (error != 0) {
-                               if (error == (int) SocketError.InvalidArgument)
-                                       throw new ArgumentException ();
-                               throw new SocketException (error);
-                       }
+                       SetSocketOption (optionLevel, optionName, int_val);
                }
 
                public void SetSocketOption (SocketOptionLevel optionLevel, SocketOptionName optionName, int optionValue)
                {
                        ThrowIfDisposedAndClosed ();
 
+                       if (optionLevel == SocketOptionLevel.Socket && optionName == SocketOptionName.ReuseAddress && optionValue != 0 && !SupportsPortReuse (protocol_type))
+                               throw new SocketException ((int) SocketError.OperationNotSupported, "Operating system sockets do not support ReuseAddress.\nIf your socket is not intended to bind to the same address and port multiple times remove this option, otherwise you should ignore this exception inside a try catch and check that ReuseAddress is true before binding to the same address and port multiple times.");
+
                        int error;
                        SetSocketOption_internal (safe_handle, optionLevel, optionName, null, null, optionValue, out error);
 
                        if (error != 0) {
+                               if (error == (int) SocketError.InvalidArgument)
+                                       throw new ArgumentException ();
                                throw new SocketException (error);
                        }
                }
@@ -3482,7 +3479,7 @@ namespace System.Net.Sockets
                internal static extern void cancel_blocking_socket_operation (Thread thread);
 
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               internal static extern bool SupportsPortReuse ();
+               internal static extern bool SupportsPortReuse (ProtocolType proto);
        }
 }
 
index 679bd5ae1ea518800b299f70dfb567da7ff6a391..e987c5bd55f0c67461c3e0c6570d0b21efff6599 100644 (file)
@@ -136,7 +136,7 @@ namespace System.Net
                                        if (auth == null)
                                                continue;
 
-                                       auth.Module = mod;
+                                       auth.ModuleAuthenticationType = mod.AuthenticationType;
                                        return auth;
                                }
                        }
@@ -159,7 +159,7 @@ namespace System.Net
                                        if (auth == null)
                                                continue;
 
-                                       auth.Module = mod;
+                                       auth.ModuleAuthenticationType = mod.AuthenticationType;
                                        return auth;
                                }
                        }
diff --git a/mcs/class/System/System.Net/AuthenticationSchemeSelector.cs b/mcs/class/System/System.Net/AuthenticationSchemeSelector.cs
deleted file mode 100644 (file)
index e20ccb4..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-//
-// System.Net.AuthenticationSchemeSelector.cs
-//
-// Author:
-//     Gonzalo Paniagua Javier  <gonzalo@novell.com>
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if SECURITY_DEP
-
-namespace System.Net {
-       public delegate AuthenticationSchemes AuthenticationSchemeSelector (HttpListenerRequest httpRequest);
-}
-#endif
-
diff --git a/mcs/class/System/System.Net/AuthenticationSchemes.cs b/mcs/class/System/System.Net/AuthenticationSchemes.cs
deleted file mode 100644 (file)
index 0a59985..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-//
-// System.Net.AuthenticationSchemes.cs
-//
-// Author:
-//     Atsushi Enomoto  <atsushi@ximian.com>
-//
-// (C) 2005 Novell, Inc. (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.Collections;
-using System.Configuration;
-
-namespace System.Net
-{
-       [Flags]
-       public enum AuthenticationSchemes {
-               None,
-               Digest = 1,
-               Negotiate = 2,
-               Ntlm = 4,
-               IntegratedWindowsAuthentication = 6,
-               Basic = 8,
-               Anonymous = 0x8000,
-       }
-}
-
diff --git a/mcs/class/System/System.Net/Authorization.cs b/mcs/class/System/System.Net/Authorization.cs
deleted file mode 100644 (file)
index a808454..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-//
-// System.Net.Authorization.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net {
-
-       public class Authorization {
-               string token;
-               bool complete;
-               string connectionGroupId;
-               string [] protectionRealm;
-               IAuthenticationModule module;
-               
-               public Authorization (string token) : this (token, true)
-               {
-               }
-
-               public Authorization (string token, bool finished) 
-                       : this (token, finished, null)
-               {
-               }
-               
-               public Authorization (string token, bool finished, string connectionGroupId)
-               {
-                       this.token = token;
-                       this.complete = finished;
-                       this.connectionGroupId = connectionGroupId;
-               }
-
-               public string Message {
-                       get { return token; }
-               }
-
-               public bool Complete {
-                       get { return complete; }
-               }
-
-               public string ConnectionGroupId {
-                       get { return connectionGroupId; }
-               }       
-               
-               public string[] ProtectionRealm {
-                       get { return protectionRealm; }
-                       set { protectionRealm = value; }
-               }
-
-               internal IAuthenticationModule Module {
-                       get { return module; }
-                       set { module = value; }
-               }
-
-               static Exception GetMustImplement ()
-               {
-                       return new NotImplementedException ();
-               }
-               
-               [MonoTODO]
-               public bool MutuallyAuthenticated
-               {
-                       get {
-                               throw GetMustImplement ();
-                       }
-                       set {
-                               throw GetMustImplement ();
-                       }
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net/ConnectionModes.cs b/mcs/class/System/System.Net/ConnectionModes.cs
deleted file mode 100644 (file)
index 0be4e4d..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-// ConnectionModes.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Wed, 5 Sep 2001 06:35:39 UTC
-// Source file: all.xml
-// URL: http://devresource.hp.com/devresource/Docs/TechPapers/CSharp/all.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Net {
-
-
-       /// <summary>
-       /// </summary>
-       enum ConnectionModes {
-
-               /// <summary>
-               /// </summary>
-               Single = 0,
-
-               /// <summary>
-               /// </summary>
-               Persistent = 1,
-
-               /// <summary>
-               /// </summary>
-               Pipeline = 2,
-
-               /// <summary>
-               /// </summary>
-               Mux = 3,
-       } // ConnectionModes
-
-} // System.Net
diff --git a/mcs/class/System/System.Net/CredentialCache.cs b/mcs/class/System/System.Net/CredentialCache.cs
deleted file mode 100644 (file)
index 9978daa..0000000
+++ /dev/null
@@ -1,282 +0,0 @@
-//
-// System.Net.CredentialCache.cs
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Runtime.Serialization;
-
-namespace System.Net {
-       public class CredentialCache : ICredentials, IEnumerable, ICredentialsByHost
-       {
-               static NetworkCredential empty = new NetworkCredential (String.Empty, String.Empty, String.Empty);
-               Hashtable cache;
-               Hashtable cacheForHost;
-
-               public CredentialCache () 
-               {
-                       cache = new Hashtable ();
-                       cacheForHost = new Hashtable ();
-               }
-               
-               [MonoTODO ("Need EnvironmentPermission implementation first")]
-               public static ICredentials DefaultCredentials {
-                       get {
-                               // This is used for NTLM, Kerberos and Negotiate under MS
-                               return empty;
-                       }
-               }
-
-               // MS does might return a special ICredentials which does not allow getting the
-               // username/password information out of it for non-internal classes.
-               public static NetworkCredential DefaultNetworkCredentials {
-                       get { return empty; }
-               }
-
-               public NetworkCredential GetCredential (Uri uriPrefix, string authType)
-               {
-                       int longestPrefix = -1;
-                       NetworkCredential result = null;
-                       
-                       if (uriPrefix == null || authType == null)
-                               return null;
-                               
-                       string absPath = uriPrefix.AbsolutePath;
-                       absPath = absPath.Substring (0, absPath.LastIndexOf ('/'));
-                       
-                       IDictionaryEnumerator e = cache.GetEnumerator ();
-                       while (e.MoveNext ()) {
-                               CredentialCacheKey key = e.Key as CredentialCacheKey;
-                               
-                               if (key.Length <= longestPrefix) 
-                                       continue;
-                               
-                               if (String.Compare (key.AuthType, authType, true) != 0)
-                                       continue;
-                               
-                               Uri cachedUri = key.UriPrefix;
-                               
-                               if (cachedUri.Scheme != uriPrefix.Scheme)
-                                       continue;
-                                       
-                               if (cachedUri.Port != uriPrefix.Port)
-                                       continue;
-                                       
-                               if (cachedUri.Host != uriPrefix.Host)
-                                       continue;
-                                                               
-                               if (!absPath.StartsWith (key.AbsPath))
-                                       continue;
-                                       
-                               longestPrefix = key.Length;
-                               result = (NetworkCredential) e.Value;
-                       }
-                       
-                       return result;
-               }
-
-               public IEnumerator GetEnumerator ()
-               {
-                       return cache.Values.GetEnumerator ();
-               }               
-               
-               public void Add (Uri uriPrefix, string authType, NetworkCredential cred)
-               {
-                       if (uriPrefix == null) 
-                               throw new ArgumentNullException ("uriPrefix");
-
-                       if (authType == null) 
-                               throw new ArgumentNullException ("authType");
-                       
-                       // throws ArgumentException when same key already exists.
-                       cache.Add (new CredentialCacheKey (uriPrefix, authType), cred);
-               }
-               
-               public void Remove (Uri uriPrefix, string authType)
-               {
-                       if (uriPrefix == null) 
-                               throw new ArgumentNullException ("uriPrefix");
-
-                       if (authType == null) 
-                               throw new ArgumentNullException ("authType");
-
-                       cache.Remove (new CredentialCacheKey (uriPrefix, authType));
-               }
-               
-               public NetworkCredential GetCredential (string host, int port, string authenticationType)
-               {
-                       NetworkCredential result = null;
-                       
-                       if (host == null || port < 0 || authenticationType == null)
-                               return null;
-
-                       IDictionaryEnumerator e = cacheForHost.GetEnumerator ();
-                       while (e.MoveNext ()) {
-                               CredentialCacheForHostKey key = e.Key as CredentialCacheForHostKey;
-                               
-                               if (String.Compare (key.AuthType, authenticationType, true) != 0)
-                                       continue;
-                               
-                               if (key.Host != host)
-                                       continue;
-                               
-                               if (key.Port != port)
-                                       continue;
-                               
-                               result = (NetworkCredential) e.Value;
-                       }
-                       
-                       return result;
-               }
-
-               public void Add (string host, int port, string authenticationType, NetworkCredential credential)
-               {
-                       if (host == null)
-                               throw new ArgumentNullException("host");
-
-                       if (port < 0)
-                               throw new ArgumentOutOfRangeException("port");
-
-                       if (authenticationType == null)
-                               throw new ArgumentOutOfRangeException("authenticationType");
-
-                       cacheForHost.Add (new CredentialCacheForHostKey (host, port, authenticationType), credential);
-               }
-
-               public void Remove (string host, int port, string authenticationType)
-               {
-                       if (host == null)
-                               return;
-
-                       if (authenticationType == null)
-                               return;
-
-                       cacheForHost.Remove (new CredentialCacheForHostKey (host, port, authenticationType));
-               }
-
-               class CredentialCacheKey {
-                       Uri uriPrefix;
-                       string authType;
-                       string absPath;
-                       int len;
-                       int hash;
-                       
-                       internal CredentialCacheKey (Uri uriPrefix, string authType)
-                       {
-                               this.uriPrefix = uriPrefix;
-                               this.authType = authType;
-                               
-                               this.absPath = uriPrefix.AbsolutePath;
-                               this.absPath = absPath.Substring (0, absPath.LastIndexOf ('/'));                                
-
-                               this.len = uriPrefix.AbsoluteUri.Length;
-                               this.hash = uriPrefix.GetHashCode () 
-                                         + authType.GetHashCode ();
-                       }
-                       
-                       public int Length {
-                               get { return len; }
-                       }                       
-                       
-                       public string AbsPath {
-                               get { return absPath; }
-                       }
-                       
-                       public Uri UriPrefix {
-                               get { return uriPrefix; }
-                       }
-                       
-                       public string AuthType {
-                               get { return authType; }
-                       }
-                       
-                       public override int GetHashCode ()
-                       {
-                               return hash;
-                       }
-                       
-                       public override bool Equals (object obj)
-                       {
-                               CredentialCacheKey key = obj as CredentialCacheKey;
-                               return ((key != null) && (this.hash == key.hash));
-                       }
-                       
-                       public override string ToString ()
-                       {
-                               return absPath + " : " + authType + " : len=" + len;
-                       }
-               }
-
-               class CredentialCacheForHostKey {
-                       string host;
-                       int port;
-                       string authType;
-                       int hash;
-
-                       internal CredentialCacheForHostKey (string host, int port, string authType)
-                       {
-                               this.host = host;
-                               this.port = port;
-                               this.authType = authType;
-
-                               this.hash = host.GetHashCode ()
-                                       + port.GetHashCode ()
-                                       + authType.GetHashCode ();
-                       }
-
-                       public string Host {
-                               get { return host; }
-                       }
-
-                       public int Port {
-                               get { return port; }
-                       }
-
-                       public string AuthType {
-                               get { return authType; }
-                       }
-
-               public override int GetHashCode ()
-               {
-                       return hash;
-               }
-
-               public override bool Equals (object obj)
-               {
-                       CredentialCacheForHostKey key = obj as CredentialCacheForHostKey;
-                       return ((key != null) && (this.hash == key.hash));
-               }
-
-               public override string ToString ()
-               {
-                       return host + " : " + authType;
-               }
-       }
-}
-}
-
-
diff --git a/mcs/class/System/System.Net/DnsEndPoint.cs b/mcs/class/System/System.Net/DnsEndPoint.cs
deleted file mode 100644 (file)
index a7f119e..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-//
-// System.Net.DnsEndPoint
-//
-// Authors:
-//     Stephane Delcroix  <stephane@delcroix.org>
-//
-// (c) 2007, 2009 Novell, Inc. (http://www.novell.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-using System.Net.Sockets;
-
-namespace System.Net { 
-
-#if NET_2_1
-       sealed
-#endif
-       public class DnsEndPoint : EndPoint {
-               string host;
-               int port;
-               AddressFamily addressFamily = AddressFamily.Unspecified;
-
-               public DnsEndPoint (string host, int port)
-               {
-                       if (host == null)
-                               throw new ArgumentNullException ("host");
-                       if (host == String.Empty)
-                               throw new ArgumentException ("host parameter contains an empty string");
-                       if (port < 0 || port > 0xffff)
-                               throw new ArgumentOutOfRangeException ("port is less than 0 or greater than 0xffff");
-
-                       this.host = host;
-                       this.port = port;
-               }
-
-               public DnsEndPoint (string host, int port, AddressFamily addressFamily) : this (host, port)
-               {
-                       switch (addressFamily) {
-                       case AddressFamily.InterNetwork:
-                       case AddressFamily.InterNetworkV6:
-                       case AddressFamily.Unspecified:
-                               this.addressFamily = addressFamily;
-                               break;
-                       default:
-                               // throw for Unknown or any invalid value
-                               throw new ArgumentException ("addressFamily");
-                       }
-               }
-
-               public override bool Equals (object comparand)
-               {
-                       DnsEndPoint dep = (comparand as DnsEndPoint);
-                       return (comparand != null) && Equals (dep);
-               }
-
-               private bool Equals (DnsEndPoint other)
-               {
-                       if (port != other.port || addressFamily != other.addressFamily|| host != other.host)
-                               return false;
-                       return true;
-               }
-
-               public override int GetHashCode ()
-               {
-                       return port ^ (int)addressFamily ^ host.GetHashCode ();
-               }
-
-               public override string ToString ()
-               {
-                       return String.Format ("{0}/{1}:{2}", addressFamily, host, port);
-               }
-
-               public override AddressFamily AddressFamily {
-                       get { return addressFamily; }
-               }
-
-               public string Host {
-                       get { return host; }
-               }
-
-               public int Port {
-                       get { return port; }
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net/DownloadProgressChangedEventHandler.cs b/mcs/class/System/System.Net/DownloadProgressChangedEventHandler.cs
deleted file mode 100644 (file)
index 1f28234..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-// DownloadProgressChangedEventHandler.cs
-//
-// Author:
-//     Atsushi Enomoto  <atsushi@ximian.com>
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net
-{
-       public delegate void DownloadProgressChangedEventHandler (object sender, DownloadProgressChangedEventArgs e);
-}
-
diff --git a/mcs/class/System/System.Net/EndPoint.cs b/mcs/class/System/System.Net/EndPoint.cs
deleted file mode 100644 (file)
index 6e1f448..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Net.EndPoint.cs
-//
-// Author:
-//   Dick Porter (dick@ximian.com)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Net.Sockets;
-
-namespace System.Net {
-       [Serializable]
-       public abstract class EndPoint {
-
-               // NB: These methods really do nothing but throw
-               // NotImplementedException
-               
-               public virtual AddressFamily AddressFamily {
-                       get { throw NotImplemented (); }
-               }
-               
-               public virtual EndPoint Create (SocketAddress socketAddress)
-               {
-                       throw NotImplemented ();
-               }
-
-               public virtual SocketAddress Serialize ()
-               {
-                       throw NotImplemented ();
-               }
-
-               protected EndPoint ()
-               {
-               }
-
-               static Exception NotImplemented ()
-               {
-                       // hide the "normal" NotImplementedException from corcompare-like tools
-                       return new NotImplementedException ();
-               }
-       }
-}
-
index 5400d73b87e7e6fee4d7d365260f00d7797f81d9..b7aae27d7f9039e03d8d8810704e7e0c04bfdea4 100644 (file)
@@ -73,7 +73,8 @@ namespace System.Net {
                        SocketAsyncEventArgs args = new SocketAsyncEventArgs ();
                        args.UserToken = this;
                        args.Completed += OnAccept;
-                       Accept (sock, args);
+                       Socket dummy = null;
+                       Accept (sock, args, ref dummy);
                        prefixes = new Hashtable ();
                        unregistered = new Dictionary<HttpConnection, HttpConnection> ();
                }
@@ -82,9 +83,21 @@ namespace System.Net {
                        get { return listener; }
                }
 
-               static void Accept (Socket socket, SocketAsyncEventArgs e) {
+               static void Accept (Socket socket, SocketAsyncEventArgs e, ref Socket accepted) {
                        e.AcceptSocket = null;
-                       var asyn = socket.AcceptAsync(e);
+                       bool asyn;
+                       try {
+                               asyn = socket.AcceptAsync(e);
+                       } catch {
+                               if (accepted != null) {
+                                       try {
+                                               accepted.Close ();
+                                       } catch {
+                                       }
+                                       accepted = null;
+                               }
+                               return;
+                       }
                        if (!asyn) {
                                ProcessAccept(e);
                        }
@@ -100,7 +113,7 @@ namespace System.Net {
                        EndPointListener epl = (EndPointListener) args.UserToken;
 
 
-                       Accept (epl.sock, args);
+                       Accept (epl.sock, args, ref accepted);
                        if (accepted == null)
                                return;
 
diff --git a/mcs/class/System/System.Net/FileWebRequest.cs b/mcs/class/System/System.Net/FileWebRequest.cs
deleted file mode 100644 (file)
index 618c09e..0000000
+++ /dev/null
@@ -1,342 +0,0 @@
-//\r
-// System.Net.FileWebRequest\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System;\r
-using System.Collections;\r
-using System.IO;\r
-using System.Runtime.Serialization;\r
-using System.Runtime.Remoting.Messaging;\r
-using System.Threading;\r
-\r
-namespace System.Net \r
-{\r
-       [Serializable]\r
-       public class FileWebRequest : WebRequest, ISerializable\r
-       {\r
-               private Uri uri;\r
-               private WebHeaderCollection webHeaders;\r
-               \r
-               private ICredentials credentials;\r
-               private string connectionGroup;\r
-               private long contentLength;\r
-               private FileAccess fileAccess = FileAccess.Read;\r
-               private string method = "GET";\r
-               private IWebProxy proxy;\r
-               private bool preAuthenticate;\r
-               private int timeout = 100000;\r
-               \r
-               private Stream requestStream;\r
-               private FileWebResponse webResponse;\r
-               private AutoResetEvent requestEndEvent;\r
-               private bool requesting;\r
-               private bool asyncResponding;\r
-               \r
-               // Constructors\r
-               \r
-               internal FileWebRequest (Uri uri) \r
-               { \r
-                       this.uri = uri;\r
-                       this.webHeaders = new WebHeaderCollection ();\r
-               }\r
-               \r
-               [Obsolete ("Serialization is obsoleted for this type", false)]\r
-               protected FileWebRequest (SerializationInfo serializationInfo, StreamingContext streamingContext) \r
-               {\r
-                       SerializationInfo info = serializationInfo;\r
-                       webHeaders = (WebHeaderCollection) info.GetValue ("headers", typeof (WebHeaderCollection));\r
-                       proxy = (IWebProxy) info.GetValue ("proxy", typeof (IWebProxy));\r
-                       uri = (Uri) info.GetValue ("uri", typeof (Uri));\r
-                       connectionGroup = info.GetString ("connectionGroupName");\r
-                       method = info.GetString ("method");\r
-                       contentLength = info.GetInt64 ("contentLength");\r
-                       timeout = info.GetInt32 ("timeout");\r
-                       fileAccess = (FileAccess) info.GetValue ("fileAccess", typeof (FileAccess));\r
-                       preAuthenticate = info.GetBoolean ("preauthenticate");\r
-               }\r
-               \r
-               // Properties\r
-               \r
-               // currently not used according to spec\r
-               public override string ConnectionGroupName {\r
-                       get { return connectionGroup; }\r
-                       set { connectionGroup = value; }\r
-               }\r
-               \r
-               public override long ContentLength {\r
-                       get { return contentLength; }\r
-                       set {\r
-                               if (value < 0)\r
-                                       throw new ArgumentException ("The Content-Length value must be greater than or equal to zero.", "value");\r
-                               contentLength =  value;\r
-                       }\r
-               }\r
-               \r
-               public override string ContentType { \r
-                       get { return webHeaders ["Content-Type"]; }\r
-                       set { webHeaders ["Content-Type"] = value; }\r
-               }\r
-               \r
-               public override ICredentials Credentials { \r
-                       get { return credentials; }\r
-                       set { credentials = value; }\r
-               }\r
-               \r
-               public override WebHeaderCollection Headers { \r
-                       get { return webHeaders; }\r
-               }\r
-               \r
-               // currently not used according to spec\r
-               public override string Method { \r
-                       get { return this.method; }\r
-                       set {\r
-                               if (value == null || value.Length == 0)\r
-                                       throw new ArgumentException ("Cannot set null or blank "\r
-                                               + "methods on request.", "value");\r
-                               this.method = value;\r
-                       }\r
-               }\r
-               \r
-               // currently not used according to spec\r
-               public override bool PreAuthenticate { \r
-                       get { return preAuthenticate; }\r
-                       set { preAuthenticate = value; }\r
-               }\r
-               \r
-               // currently not used according to spec\r
-               public override IWebProxy Proxy {\r
-                       get { return proxy; }\r
-                       set { proxy = value; }\r
-               }\r
-               \r
-               public override Uri RequestUri { \r
-                       get { return this.uri; }\r
-               }\r
-               \r
-               public override int Timeout { \r
-                       get { return timeout; }\r
-                       set { \r
-                               if (value < -1)\r
-                                       throw new ArgumentOutOfRangeException ("Timeout can be "\r
-                                               + "only set to 'System.Threading.Timeout.Infinite' "\r
-                                               + "or a value >= 0.");\r
-                               timeout = value;\r
-                       }\r
-               }\r
-\r
-               public override bool UseDefaultCredentials\r
-               {\r
-                       get {\r
-                               throw new NotSupportedException ();\r
-                       }\r
-                       set {\r
-                               throw new NotSupportedException ();\r
-                       }\r
-               }\r
-               // Methods\r
-               \r
-               private delegate Stream GetRequestStreamCallback ();\r
-               private delegate WebResponse GetResponseCallback ();\r
-\r
-               static Exception GetMustImplement ()\r
-               {\r
-                       return new NotImplementedException ();\r
-               }\r
-               \r
-               /* LAMESPEC: Docs suggest this was present in 1.1 and\r
-                * 1.0 profiles, but the masterinfos say otherwise\r
-                */\r
-               [MonoTODO]\r
-               public override void Abort ()\r
-               {\r
-                       throw GetMustImplement ();\r
-               }\r
-\r
-               public override IAsyncResult BeginGetRequestStream (AsyncCallback callback, object state) \r
-               {\r
-                       if (string.Compare ("GET", method, true) == 0 ||\r
-                               string.Compare ("HEAD", method, true) == 0 ||\r
-                               string.Compare ("CONNECT", method, true) == 0)\r
-                               throw new ProtocolViolationException ("Cannot send a content-body with this verb-type.");\r
-                       lock (this) {\r
-                               if (asyncResponding || webResponse != null)\r
-                                       throw new InvalidOperationException ("This operation cannot be performed after the request has been submitted.");\r
-                               if (requesting)\r
-                                       throw new InvalidOperationException ("Cannot re-call start of asynchronous method while a previous call is still in progress.");\r
-                               requesting = true;\r
-                       }\r
-                       GetRequestStreamCallback c = new GetRequestStreamCallback (this.GetRequestStreamInternal);\r
-                       return c.BeginInvoke (callback, state);\r
-               }\r
-               \r
-               public override Stream EndGetRequestStream (IAsyncResult asyncResult)\r
-               {\r
-                       if (asyncResult == null)\r
-                               throw new ArgumentNullException ("asyncResult");\r
-                       if (!asyncResult.IsCompleted)\r
-                               asyncResult.AsyncWaitHandle.WaitOne ();\r
-                       AsyncResult async = (AsyncResult) asyncResult;\r
-                       GetRequestStreamCallback cb = (GetRequestStreamCallback) async.AsyncDelegate;\r
-                       return cb.EndInvoke (asyncResult);\r
-               }\r
-\r
-               public override Stream GetRequestStream()\r
-               {\r
-                       IAsyncResult asyncResult = BeginGetRequestStream (null, null);\r
-                       if (!(asyncResult.AsyncWaitHandle.WaitOne (timeout, false))) {\r
-                               throw new WebException("The request timed out", WebExceptionStatus.Timeout);\r
-                       }\r
-                       return EndGetRequestStream (asyncResult);\r
-               }\r
-               \r
-               internal Stream GetRequestStreamInternal ()\r
-               {\r
-                       this.requestStream = new FileWebStream (\r
-                                               this,\r
-                                               FileMode.Create,\r
-                                               FileAccess.Write, \r
-                                               FileShare.Read);\r
-                       return this.requestStream;\r
-               }\r
-               \r
-               public override IAsyncResult BeginGetResponse (AsyncCallback callback, object state)\r
-               {\r
-                       lock (this) {\r
-                               if (asyncResponding)\r
-                                       throw new InvalidOperationException ("Cannot re-call start of asynchronous method while a previous call is still in progress.");\r
-                               asyncResponding = true;\r
-                       }\r
-                       GetResponseCallback c = new GetResponseCallback (this.GetResponseInternal);\r
-                       return c.BeginInvoke (callback, state);\r
-               }\r
-               \r
-               public override WebResponse EndGetResponse (IAsyncResult asyncResult)\r
-               {\r
-                       if (asyncResult == null)\r
-                               throw new ArgumentNullException ("asyncResult");\r
-                       if (!asyncResult.IsCompleted)\r
-                               asyncResult.AsyncWaitHandle.WaitOne ();\r
-                       AsyncResult async = (AsyncResult) asyncResult;\r
-                       GetResponseCallback cb = (GetResponseCallback) async.AsyncDelegate;\r
-                       FileWebResponse webResponse = (FileWebResponse) cb.EndInvoke(asyncResult);\r
-                       asyncResponding = false;\r
-                       if (webResponse.HasError)\r
-                               throw webResponse.Error;\r
-                       return webResponse;\r
-               }\r
-               \r
-               public override WebResponse GetResponse ()\r
-               {\r
-                       IAsyncResult asyncResult = BeginGetResponse (null, null);\r
-                       if (!(asyncResult.AsyncWaitHandle.WaitOne (timeout, false))) {\r
-                               throw new WebException("The request timed out", WebExceptionStatus.Timeout);\r
-                       }\r
-                       return EndGetResponse (asyncResult);\r
-               }\r
-               \r
-               WebResponse GetResponseInternal ()\r
-               {\r
-                       if (webResponse != null)\r
-                               return webResponse;\r
-                       lock (this) {\r
-                               if (requesting) {\r
-                                       requestEndEvent = new AutoResetEvent (false);\r
-                               }\r
-                       }\r
-                       if (requestEndEvent != null) {\r
-                               requestEndEvent.WaitOne ();\r
-                       }\r
-                       FileStream fileStream = null;\r
-                       try {\r
-                               fileStream = new FileWebStream (this, FileMode.Open, FileAccess.Read, FileShare.Read);\r
-                               this.webResponse = new FileWebResponse (this.uri, fileStream);\r
-                       } catch (Exception ex) {\r
-                               this.webResponse = new FileWebResponse (this.uri, new WebException (ex.Message, ex));\r
-                       }\r
-                       return this.webResponse;\r
-               }\r
-               \r
-               void ISerializable.GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       GetObjectData (serializationInfo, streamingContext);\r
-               }\r
-\r
-               protected override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       SerializationInfo info = serializationInfo;\r
-                       info.AddValue ("headers", webHeaders, typeof (WebHeaderCollection));\r
-                       info.AddValue ("proxy", proxy, typeof (IWebProxy));\r
-                       info.AddValue ("uri", uri, typeof (Uri));\r
-                       info.AddValue ("connectionGroupName", connectionGroup);\r
-                       info.AddValue ("method", method);\r
-                       info.AddValue ("contentLength", contentLength);\r
-                       info.AddValue ("timeout", timeout);\r
-                       info.AddValue ("fileAccess", fileAccess);\r
-                       info.AddValue ("preauthenticate", false);\r
-               }\r
-               \r
-               internal void Close ()\r
-               {\r
-                       // already done in class below\r
-                       // if (requestStream != null) {\r
-                       //      requestStream.Close ();\r
-                       // }\r
-\r
-                       lock (this) {\r
-                               requesting = false;\r
-                               if (requestEndEvent != null) \r
-                                       requestEndEvent.Set ();\r
-                               // requestEndEvent = null;\r
-                       }\r
-               }\r
-               \r
-               // to catch the Close called on the FileStream\r
-               internal class FileWebStream : FileStream\r
-               {\r
-                       FileWebRequest webRequest;\r
-                       \r
-                       internal FileWebStream (FileWebRequest webRequest,    \r
-                                               FileMode mode,\r
-                                               FileAccess access,\r
-                                               FileShare share)\r
-                               : base (webRequest.RequestUri.LocalPath, \r
-                                       mode, access, share)\r
-                       {\r
-                               this.webRequest = webRequest;\r
-                       }\r
-                       \r
-                       public override void Close() \r
-                       {\r
-                               base.Close ();\r
-                               FileWebRequest req = webRequest;\r
-                               webRequest = null;\r
-                               if (req != null)\r
-                                       req.Close ();\r
-                       }\r
-               }\r
-       }\r
-}\r
diff --git a/mcs/class/System/System.Net/FileWebRequestCreator.cs b/mcs/class/System/System.Net/FileWebRequestCreator.cs
deleted file mode 100644 (file)
index 06601bb..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// System.Net.FileWebRequestCreator
-//
-// Authors:
-//     Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//
-// (C) 2003 Ximian, Inc (http://www.ximian.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net
-{
-       class FileWebRequestCreator : IWebRequestCreate
-       {
-               internal FileWebRequestCreator ()
-               {
-               }
-
-               public WebRequest Create (Uri uri)
-               {
-                       return new FileWebRequest (uri);
-               }
-       }
-}
-
diff --git a/mcs/class/System/System.Net/FileWebResponse.cs b/mcs/class/System/System.Net/FileWebResponse.cs
deleted file mode 100644 (file)
index 3d8ca21..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-//\r
-// System.Net.FileWebResponse\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System;\r
-using System.IO;\r
-using System.Runtime.Serialization;\r
-\r
-namespace System.Net \r
-{\r
-       [Serializable]\r
-       public class FileWebResponse : WebResponse, ISerializable, IDisposable\r
-       {\r
-               private Uri responseUri;\r
-               private FileStream fileStream;\r
-               private long contentLength;\r
-               private WebHeaderCollection webHeaders;\r
-               private bool disposed;\r
-               Exception exception;\r
-               \r
-               // Constructors\r
-               \r
-               internal FileWebResponse (Uri responseUri, FileStream fileStream)\r
-               {\r
-                       try {\r
-                               this.responseUri = responseUri;\r
-                               this.fileStream = fileStream;\r
-                               this.contentLength = fileStream.Length;\r
-                               this.webHeaders = new WebHeaderCollection ();\r
-                               this.webHeaders.Add ("Content-Length", Convert.ToString (contentLength));\r
-                               this.webHeaders.Add ("Content-Type", "application/octet-stream");\r
-                       } catch (Exception e) {\r
-                               throw new WebException (e.Message, e);\r
-                       }\r
-               }\r
-\r
-               internal FileWebResponse (Uri responseUri, WebException exception)\r
-               {\r
-                       this.responseUri = responseUri;\r
-                       this.exception = exception;\r
-               }\r
-               \r
-               [Obsolete ("Serialization is obsoleted for this type", false)]\r
-               protected FileWebResponse (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       SerializationInfo info = serializationInfo;\r
-\r
-                       responseUri = (Uri) info.GetValue ("responseUri", typeof (Uri));\r
-                       contentLength = info.GetInt64 ("contentLength");\r
-                       webHeaders = (WebHeaderCollection) info.GetValue ("webHeaders", typeof (WebHeaderCollection));\r
-               }\r
-               \r
-               // Properties\r
-               internal bool HasError {\r
-                       get { return exception != null; }\r
-               }\r
-\r
-               internal Exception Error {\r
-                       get { return exception; }\r
-               }\r
-               \r
-               public override long ContentLength {\r
-                       get {\r
-                               CheckDisposed ();\r
-                               return this.contentLength;\r
-                       }\r
-               }\r
-               \r
-               public override string ContentType {\r
-                       get {\r
-                               CheckDisposed ();\r
-                               return "application/octet-stream";\r
-                       }\r
-               }\r
-               \r
-               public override WebHeaderCollection Headers {\r
-                       get {\r
-                               CheckDisposed ();\r
-                               return this.webHeaders;\r
-                       }\r
-               }\r
-               \r
-               public override Uri ResponseUri {\r
-                       get {\r
-                               CheckDisposed ();\r
-                               return this.responseUri;\r
-                       }\r
-               }\r
-\r
-               // Methods\r
-\r
-               void ISerializable.GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       GetObjectData (serializationInfo, streamingContext);\r
-               }\r
-\r
-               protected override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       SerializationInfo info = serializationInfo;\r
-\r
-                       info.AddValue ("responseUri", responseUri, typeof (Uri));\r
-                       info.AddValue ("contentLength", contentLength);\r
-                       info.AddValue ("webHeaders", webHeaders, typeof (WebHeaderCollection));\r
-               }\r
-\r
-               public override Stream GetResponseStream()\r
-               {\r
-                       CheckDisposed ();\r
-                       return this.fileStream;\r
-               }\r
-                               \r
-               // Cleaning up stuff\r
-               \r
-               ~FileWebResponse ()\r
-               {\r
-                       Dispose (false);\r
-               }               \r
-               \r
-               public override void Close()\r
-               {\r
-                       ((IDisposable) this).Dispose ();\r
-               }\r
-\r
-               void IDisposable.Dispose()\r
-               {\r
-                       Dispose (true);\r
-                       \r
-                       // see spec, suppress finalization of this object.\r
-                       GC.SuppressFinalize (this);  \r
-               }\r
-               \r
-               protected override\r
-               void Dispose (bool disposing)\r
-               {\r
-                       if (this.disposed)\r
-                               return;\r
-                       this.disposed = true;\r
-                       \r
-                       if (disposing) {\r
-                               // release managed resources\r
-                               this.responseUri = null;\r
-                               this.webHeaders = null;\r
-                       }\r
-                       \r
-                       // release unmanaged resources\r
-                       FileStream stream = fileStream;\r
-                       fileStream = null;\r
-                       if (stream != null)\r
-                               stream.Close (); // also closes webRequest\r
-                       base.Dispose (disposing);\r
-               }\r
-               \r
-               private void CheckDisposed ()\r
-               {\r
-                       if (disposed)\r
-                               throw new ObjectDisposedException (GetType ().FullName);\r
-               }               \r
-       }\r
-}\r
diff --git a/mcs/class/System/System.Net/FtpStatusCode.cs b/mcs/class/System/System.Net/FtpStatusCode.cs
deleted file mode 100644 (file)
index 516124f..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-//
-// System.Net.FtpStatusCode.cs
-//
-// Author:
-//     Carlos Alberto Cortez (calberto.oortez@gmail.com)
-//
-// (c) Copyright 2005 Novell, Inc. (http://www.ximian.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net
-{
-       public enum FtpStatusCode
-       {
-               Undefined = 0,
-               RestartMarker = 110,
-               ServiceTemporarilyNotAvailable = 120,
-               DataAlreadyOpen = 125,
-               OpeningData = 150,
-               CommandOK = 200,
-               CommandExtraneous = 202,
-               DirectoryStatus = 212,
-               FileStatus = 213,
-               SystemType = 215,
-               SendUserCommand = 220,
-               ClosingControl = 221,
-               ClosingData = 226,
-               EnteringPassive = 227,
-               LoggedInProceed = 230,
-               ServerWantsSecureSession = 234,
-               FileActionOK = 250,
-               PathnameCreated = 257,
-               SendPasswordCommand = 331,
-               NeedLoginAccount = 332,
-               FileCommandPending = 350,
-               ServiceNotAvailable = 421,
-               CantOpenData = 425,
-               ConnectionClosed = 426,
-               ActionNotTakenFileUnavailableOrBusy = 450,
-               ActionAbortedLocalProcessingError = 451,
-               ActionNotTakenInsufficientSpace = 452,
-               CommandSyntaxError = 500,
-               ArgumentSyntaxError = 501,
-               CommandNotImplemented = 502,
-               BadCommandSequence = 503,
-               NotLoggedIn = 530,
-               AccountNeeded = 532,
-               ActionNotTakenFileUnavailable = 550,
-               ActionAbortedUnknownPageType = 551,
-               FileActionAborted = 552,
-               ActionNotTakenFilenameNotAllowed = 553
-       }
-}
-
-
index 68f067744355ccedd7da79d0a65ee5c73b97b814..ba47bdfb36b15116508abe9be39af963d3901054 100644 (file)
@@ -115,6 +115,12 @@ namespace System.Net
                        }
                }
 
+               public override bool SupportsHeaders {
+                       get {
+                               return true;
+                       }
+               }
+
                public string StatusDescription {
                        get {
                                return statusDescription;
diff --git a/mcs/class/System/System.Net/GlobalProxySelection.cs b/mcs/class/System/System.Net/GlobalProxySelection.cs
deleted file mode 100644 (file)
index 049f61c..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-//
-// System.Net.GlobalProxySelection
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Configuration;
-using System.IO;
-using System.Runtime.Serialization;
-using System.Net.Configuration;
-
-namespace System.Net 
-{
-       [ObsoleteAttribute("Use WebRequest.DefaultProxy instead")]
-       public class GlobalProxySelection
-       {
-               // Constructors
-               public GlobalProxySelection() { }
-               
-               // Properties
-
-               public static IWebProxy Select {
-                       get { return WebRequest.DefaultWebProxy; }
-                       set { WebRequest.DefaultWebProxy = value; }
-               }
-               
-               // Methods
-               
-               public static IWebProxy GetEmptyWebProxy()
-               {
-                       // must return a new one each time, as the credentials
-                       // can be set
-                       return new EmptyWebProxy ();    
-               }
-               
-               // Internal Classes
-               
-               internal class EmptyWebProxy : IWebProxy {
-                       private ICredentials credentials = null;
-                       
-                       internal EmptyWebProxy () { }
-                       
-                       public ICredentials Credentials {
-                               get { return credentials; } 
-                               set { credentials = value; }
-                       }
-
-                       public Uri GetProxy (Uri destination)
-                       {
-                               return destination;
-                       }
-
-                       public bool IsBypassed (Uri host)
-                       {
-                               return true; // pass directly to host
-                       }
-               }
-       }               
-}
diff --git a/mcs/class/System/System.Net/HttpListenerException.cs b/mcs/class/System/System.Net/HttpListenerException.cs
deleted file mode 100644 (file)
index 684344e..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-//
-// System.Net.HttpListenerException
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System.ComponentModel;
-using System.Runtime.Serialization;
-namespace System.Net {
-       [Serializable]
-       public class HttpListenerException : Win32Exception
-       {
-               public HttpListenerException ()
-               {
-               }
-
-               public HttpListenerException (int errorCode) : base (errorCode)
-               {
-               }
-
-               public HttpListenerException (int errorCode, string message) : base (errorCode, message)
-               {
-               }
-
-               protected HttpListenerException (SerializationInfo serializationInfo, StreamingContext streamingContext) : base (serializationInfo, streamingContext)
-               {
-               }
-
-               public override int ErrorCode {
-                       get { return base.ErrorCode; }
-               }
-       }
-}
-
index f1c47802cb94bef9e16534919ff1d10aba148b8c..a9c5bb9ee32bb7e7a7208fb5ff68081f11a143de 100644 (file)
@@ -146,6 +146,54 @@ namespace System.Net {
                        }
                }
 
+               static bool MaybeUri (string s)
+               {
+                       int p = s.IndexOf (':');
+                       if (p == -1)
+                               return false;
+
+                       if (p >= 10)
+                               return false;
+
+                       return IsPredefinedScheme (s.Substring (0, p));
+               }
+
+               //
+               // Using a simple block of if's is twice as slow as the compiler generated
+               // switch statement.   But using this tuned code is faster than the
+               // compiler generated code, with a million loops on x86-64:
+               //
+               // With "http": .10 vs .51 (first check)
+               // with "https": .16 vs .51 (second check)
+               // with "foo": .22 vs .31 (never found)
+               // with "mailto": .12 vs .51  (last check)
+               //
+               //
+               static bool IsPredefinedScheme (string scheme)
+               {
+                       if (scheme == null || scheme.Length < 3)
+                               return false;
+                       
+                       char c = scheme [0];
+                       if (c == 'h')
+                               return (scheme == "http" || scheme == "https");
+                       if (c == 'f')
+                               return (scheme == "file" || scheme == "ftp");
+                               
+                       if (c == 'n'){
+                               c = scheme [1];
+                               if (c == 'e')
+                                       return (scheme == "news" || scheme == "net.pipe" || scheme == "net.tcp");
+                               if (scheme == "nntp")
+                                       return true;
+                               return false;
+                       }
+                       if ((c == 'g' && scheme == "gopher") || (c == 'm' && scheme == "mailto"))
+                               return true;
+
+                       return false;
+               }
+
                internal void FinishInitialization ()
                {
                        string host = UserHostName;
@@ -156,7 +204,7 @@ namespace System.Net {
 
                        string path;
                        Uri raw_uri = null;
-                       if (Uri.MaybeUri (raw_url.ToLowerInvariant ()) && Uri.TryCreate (raw_url, UriKind.Absolute, out raw_uri))
+                       if (MaybeUri (raw_url.ToLowerInvariant ()) && Uri.TryCreate (raw_url, UriKind.Absolute, out raw_uri))
                                path = raw_uri.PathAndQuery;
                        else
                                path = raw_url;
index 807c9dd393a24d6de642e801d34d34a58227ea21..329c4a2c19adba4900f992d213bca4ee7d55c2af 100644 (file)
@@ -427,7 +427,7 @@ namespace System.Net {
 
                        StreamWriter writer = new StreamWriter (ms, encoding, 256);
                        writer.Write ("HTTP/{0} {1} {2}\r\n", version, status_code, status_description);
-                       string headers_str = headers.ToStringMultiValue ();
+                       string headers_str = headers.ToString ();
                        writer.Write (headers_str);
                        writer.Flush ();
                        int preamble = (encoding.CodePage == 65001) ? 3 : encoding.GetPreamble ().Length;
diff --git a/mcs/class/System/System.Net/HttpRequestHeader.cs b/mcs/class/System/System.Net/HttpRequestHeader.cs
deleted file mode 100644 (file)
index 46bd92b..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-//
-// System.Net.HttpRequestHeader
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net {
-       public enum HttpRequestHeader {
-               CacheControl,
-               Connection,
-               Date,
-               KeepAlive,
-               Pragma,
-               Trailer,
-               TransferEncoding,
-               Upgrade,
-               Via,
-               Warning,
-               Allow,
-               ContentLength,
-               ContentType,
-               ContentEncoding,
-               ContentLanguage,
-               ContentLocation,
-               ContentMd5,
-               ContentRange,
-               Expires,
-               LastModified,
-               Accept,
-               AcceptCharset,
-               AcceptEncoding,
-               AcceptLanguage,
-               Authorization,
-               Cookie,
-               Expect,
-               From,
-               Host,
-               IfMatch,
-               IfModifiedSince,
-               IfNoneMatch,
-               IfRange,
-               IfUnmodifiedSince,
-               MaxForwards,
-               ProxyAuthorization,
-               Referer,
-               Range,
-               Te,
-               Translate,
-               UserAgent
-       }
-}
-
diff --git a/mcs/class/System/System.Net/HttpResponseHeader.cs b/mcs/class/System/System.Net/HttpResponseHeader.cs
deleted file mode 100644 (file)
index 2bf820a..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// System.Net.HttpResponseHeader
-//
-// Author:
-//     Gonzalo Paniagua Javier (gonzalo@novell.com)
-//
-// Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net {
-       public enum HttpResponseHeader {
-               CacheControl,
-               Connection,
-               Date,
-               KeepAlive,
-               Pragma,
-               Trailer,
-               TransferEncoding,
-               Upgrade,
-               Via,
-               Warning,
-               Allow,
-               ContentLength,
-               ContentType,
-               ContentEncoding,
-               ContentLanguage,
-               ContentLocation,
-               ContentMd5,
-               ContentRange,
-               Expires,
-               LastModified,
-               AcceptRanges,
-               Age,
-               ETag,
-               Location,
-               ProxyAuthenticate,
-               RetryAfter,
-               Server,
-               SetCookie,
-               Vary,
-               WwwAuthenticate
-       }
-}
-
diff --git a/mcs/class/System/System.Net/HttpStatusCode.cs b/mcs/class/System/System.Net/HttpStatusCode.cs
deleted file mode 100644 (file)
index 4cc32e7..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-// HttpStatusCode.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Wed, 5 Sep 2001 06:32:05 UTC
-// Source file: AllTypes.xml
-// URL: http://msdn.microsoft.com/net/ecma/AllTypes.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Net {
-       public enum HttpStatusCode {
-               Continue = 100,
-               SwitchingProtocols = 101,
-               OK = 200,
-               Created = 201,
-               Accepted = 202,
-               NonAuthoritativeInformation = 203,
-               NoContent = 204,
-               ResetContent = 205,
-               PartialContent = 206,
-               MultipleChoices = 300,
-               Ambiguous = 300,
-               MovedPermanently = 301,
-               Moved = 301,
-               Found = 302,
-               Redirect = 302,
-               SeeOther = 303,
-               RedirectMethod = 303,
-               NotModified = 304,
-               UseProxy = 305,
-               Unused = 306,
-               TemporaryRedirect = 307,
-               RedirectKeepVerb = 307,
-               BadRequest = 400,
-               Unauthorized = 401,
-               PaymentRequired = 402,
-               Forbidden = 403,
-               NotFound = 404,
-               MethodNotAllowed = 405,
-               NotAcceptable = 406,
-               ProxyAuthenticationRequired = 407,
-               RequestTimeout = 408,
-               Conflict = 409,
-               Gone = 410,
-               LengthRequired = 411,
-               PreconditionFailed = 412,
-               RequestEntityTooLarge = 413,
-               RequestUriTooLong = 414,
-               UnsupportedMediaType = 415,
-               RequestedRangeNotSatisfiable = 416,
-               ExpectationFailed = 417,
-               UpgradeRequired = 426,
-               InternalServerError = 500,
-               NotImplemented = 501,
-               BadGateway = 502,
-               ServiceUnavailable = 503,
-               GatewayTimeout = 504,
-               HttpVersionNotSupported = 505,
-       } // HttpStatusCode
-
-} // System.Net
-
-
diff --git a/mcs/class/System/System.Net/HttpVersion.cs b/mcs/class/System/System.Net/HttpVersion.cs
deleted file mode 100644 (file)
index f44bf70..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-//\r
-// System.Net.HttpVersion.cs\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System;\r
-\r
-namespace System.Net {\r
-\r
-       // <remarks>\r
-       // </remarks>\r
-       public class HttpVersion {\r
-               \r
-               public static readonly Version Version10 = new Version (1, 0);\r
-               public static readonly Version Version11 = new Version (1, 1);\r
-               \r
-               // pretty useless..\r
-               public HttpVersion () {}\r
-       }\r
-}\r
index 02688b1a8b670a2e8bc666aab13d0925d2f3b689..63d0eb39238c4bdf2d5eaf16eb69adef7c2562e0 100644 (file)
@@ -154,8 +154,8 @@ namespace System.Net
                {
                        this.requestUri = uri;
                        this.actualUri = uri;
-                       this.proxy = GlobalProxySelection.Select;
-                       this.webHeaders = new WebHeaderCollection (WebHeaderCollection.HeaderInfo.Request);
+                       this.proxy = InternalDefaultWebProxy;
+                       this.webHeaders = new WebHeaderCollection (WebHeaderCollectionType.HttpWebRequest);
                        ThrowOnError = true;
                        ResetAuthorization ();
                }
@@ -205,11 +205,19 @@ namespace System.Net
                
                // Properties
 
+               void SetSpecialHeaders(string HeaderName, string value) {
+                       value = WebHeaderCollection.CheckBadChars(value, true);
+                       webHeaders.RemoveInternal(HeaderName);
+                       if (value.Length != 0) {
+                               webHeaders.AddInternal(HeaderName, value);
+                       }
+               }
+
                public string Accept {
                        get { return webHeaders ["Accept"]; }
                        set {
                                CheckRequestStarted ();
-                               webHeaders.RemoveAndAdd ("Accept", value);
+                               SetSpecialHeaders ("Accept", value);
                        }
                }
                
@@ -306,7 +314,7 @@ namespace System.Net
                                if (keepAlive)
                                        value = value + ", Keep-Alive";
                                
-                               webHeaders.RemoveAndAdd ("Connection", value);
+                               webHeaders.CheckUpdate ("Connection", value);
                        }
                }               
                
@@ -336,11 +344,7 @@ namespace System.Net
                public override string ContentType { 
                        get { return webHeaders ["Content-Type"]; }
                        set {
-                               if (value == null || value.Trim().Length == 0) {
-                                       webHeaders.RemoveInternal ("Content-Type");
-                                       return;
-                               }
-                               webHeaders.RemoveAndAdd ("Content-Type", value);
+                               SetSpecialHeaders ("Content-Type", value);
                        }
                }
                
@@ -367,13 +371,17 @@ namespace System.Net
                                return DateTime.ParseExact (date, "r", CultureInfo.InvariantCulture).ToLocalTime ();
                        }
                        set {
-                               if (value.Equals (DateTime.MinValue))
-                                       webHeaders.RemoveInternal ("Date");
-                               else
-                                       webHeaders.RemoveAndAdd ("Date", value.ToUniversalTime ().ToString ("r", CultureInfo.InvariantCulture));
+                               SetDateHeaderHelper ("Date", value);
                        }
                }
 
+               void SetDateHeaderHelper(string headerName, DateTime dateTime) {
+                       if (dateTime == DateTime.MinValue)
+                               SetSpecialHeaders(headerName, null); // remove header
+                       else
+                               SetSpecialHeaders(headerName, HttpProtocolUtils.date2string(dateTime));
+               }
+
 #if !NET_2_1
                [MonoTODO]
                public static new RequestCachePolicy DefaultCachePolicy
@@ -414,7 +422,8 @@ namespace System.Net
                                if (val == "100-continue")
                                        throw new ArgumentException ("100-Continue cannot be set with this property.",
                                                                     "value");
-                               webHeaders.RemoveAndAdd ("Expect", value);
+
+                               webHeaders.CheckUpdate ("Expect", value);
                        }
                }
                
@@ -427,12 +436,21 @@ namespace System.Net
                        get { return webHeaders; }
                        set {
                                CheckRequestStarted ();
-                               WebHeaderCollection newHeaders = new WebHeaderCollection (WebHeaderCollection.HeaderInfo.Request);
-                               int count = value.Count;
-                               for (int i = 0; i < count; i++) 
-                                       newHeaders.Add (value.GetKey (i), value.Get (i));
 
-                               webHeaders = newHeaders;
+                               WebHeaderCollection webHeaders = value;
+                               WebHeaderCollection newWebHeaders = new WebHeaderCollection(WebHeaderCollectionType.HttpWebRequest);
+
+                               // Copy And Validate -
+                               // Handle the case where their object tries to change
+                               //  name, value pairs after they call set, so therefore,
+                               //  we need to clone their headers.
+                               //
+
+                               foreach (String headerName in webHeaders.AllKeys ) {
+                                       newWebHeaders.Add(headerName,webHeaders[headerName]);
+                               }
+
+                               webHeaders = newWebHeaders;
                        }
                }
                
@@ -664,7 +682,7 @@ namespace System.Net
                                if (!sendChunked)
                                        throw new ArgumentException ("SendChunked must be True", "value");
 
-                               webHeaders.RemoveAndAdd ("Transfer-Encoding", value);
+                               webHeaders.CheckUpdate ("Transfer-Encoding", value);
                        }
                }
 
@@ -772,7 +790,7 @@ namespace System.Net
                {
                        if (rangeSpecifier == null)
                                throw new ArgumentNullException ("rangeSpecifier");
-                       if (!WebHeaderCollection.IsHeaderValue (rangeSpecifier))
+                       if (!WebHeaderCollection.IsValidToken (rangeSpecifier))
                                throw new ArgumentException ("Invalid range specifier", "rangeSpecifier");
 
                        string r = webHeaders ["Range"];
@@ -790,7 +808,7 @@ namespace System.Net
                                r = r + "0" + n;
                        else
                                r = r + n + "-";
-                       webHeaders.RemoveAndAdd ("Range", r);
+                       webHeaders.ChangeInternal ("Range", r);
                }
 
                public
@@ -798,7 +816,7 @@ namespace System.Net
                {
                        if (rangeSpecifier == null)
                                throw new ArgumentNullException ("rangeSpecifier");
-                       if (!WebHeaderCollection.IsHeaderValue (rangeSpecifier))
+                       if (!WebHeaderCollection.IsValidToken (rangeSpecifier))
                                throw new ArgumentException ("Invalid range specifier", "rangeSpecifier");
                        if (from > to || from < 0)
                                throw new ArgumentOutOfRangeException ("from");
@@ -812,7 +830,7 @@ namespace System.Net
                                r += ",";
 
                        r = String.Format ("{0}{1}-{2}", r, from, to);
-                       webHeaders.RemoveAndAdd ("Range", r);
+                       webHeaders.ChangeInternal ("Range", r);
                }
 
                
@@ -1198,7 +1216,7 @@ namespace System.Net
                        bool continue100 = false;
                        if (sendChunked) {
                                continue100 = true;
-                               webHeaders.RemoveAndAdd ("Transfer-Encoding", "chunked");
+                               webHeaders.ChangeInternal ("Transfer-Encoding", "chunked");
                                webHeaders.RemoveInternal ("Content-Length");
                        } else if (contentLength != -1) {
                                if (auth_state.NtlmAuthState == NtlmAuthState.Challenge || proxy_auth_state.NtlmAuthState == NtlmAuthState.Challenge) {
@@ -1221,7 +1239,7 @@ namespace System.Net
 
                        if (actualVersion == HttpVersion.Version11 && continue100 &&
                            servicePoint.SendContinue) { // RFC2616 8.2.3
-                               webHeaders.RemoveAndAdd ("Expect" , "100-continue");
+                               webHeaders.ChangeInternal ("Expect" , "100-continue");
                                expectContinue = true;
                        } else {
                                webHeaders.RemoveInternal ("Expect");
@@ -1237,16 +1255,16 @@ namespace System.Net
                        if (keepAlive && (version == HttpVersion.Version10 || spoint10)) {
                                if (webHeaders[connectionHeader] == null
                                    || webHeaders[connectionHeader].IndexOf ("keep-alive", StringComparison.OrdinalIgnoreCase) == -1)
-                                       webHeaders.RemoveAndAdd (connectionHeader, "keep-alive");
+                                       webHeaders.ChangeInternal (connectionHeader, "keep-alive");
                        } else if (!keepAlive && version == HttpVersion.Version11) {
-                               webHeaders.RemoveAndAdd (connectionHeader, "close");
+                               webHeaders.ChangeInternal (connectionHeader, "close");
                        }
 
                        webHeaders.SetInternal ("Host", Host);
                        if (cookieContainer != null) {
                                string cookieHeader = cookieContainer.GetCookieHeader (actualUri);
                                if (cookieHeader != "")
-                                       webHeaders.RemoveAndAdd ("Cookie", cookieHeader);
+                                       webHeaders.ChangeInternal ("Cookie", cookieHeader);
                                else
                                        webHeaders.RemoveInternal ("Cookie");
                        }
@@ -1257,7 +1275,7 @@ namespace System.Net
                        if ((auto_decomp & DecompressionMethods.Deflate) != 0)
                                accept_encoding = accept_encoding != null ? "gzip, deflate" : "deflate";
                        if (accept_encoding != null)
-                               webHeaders.RemoveAndAdd ("Accept-Encoding", accept_encoding);
+                               webHeaders.ChangeInternal ("Accept-Encoding", accept_encoding);
 
                        if (!usedPreAuth && preAuthenticate)
                                DoPreAuthenticate ();
@@ -1297,7 +1315,7 @@ namespace System.Net
                                        wex = new WebException (msg, status);
                                } else {
                                        msg = String.Format ("Error: {0} ({1})", status, exc.Message);
-                                       wex = new WebException (msg, exc, status);
+                                       wex = new WebException (msg, status, WebExceptionInternalStatus.RequestFatal, exc);
                                }
                                r.SetCompleted (false, wex);
                                r.DoCallback ();
@@ -1456,7 +1474,7 @@ namespace System.Net
                        if (wce != null) {
                                WebConnection cnc = wce.Connection;
                                cnc.PriorityRequest = this;
-                               ICredentials creds = !isProxy ? credentials : proxy.Credentials;
+                               ICredentials creds = (!isProxy || proxy == null) ? credentials : proxy.Credentials;
                                if (creds != null) {
                                        cnc.NtlmCredential = creds.GetCredential (requestUri, "NTLM");
                                        cnc.UnsafeAuthenticatedConnectionSharing = unsafe_auth_blah;
@@ -1513,7 +1531,7 @@ namespace System.Net
                                        return;
                                }
 
-                               bool isProxy = ProxyQuery && !proxy.IsBypassed (actualUri);
+                               bool isProxy = ProxyQuery && proxy != null && !proxy.IsBypassed (actualUri);
 
                                bool redirected;
                                try {
@@ -1616,7 +1634,7 @@ namespace System.Net
                                if (isProxy && (request.proxy == null || request.proxy.Credentials == null))
                                        return false;
 
-                               string [] authHeaders = response.Headers.GetValues_internal (isProxy ? "Proxy-Authenticate" : "WWW-Authenticate", false);
+                               string [] authHeaders = response.Headers.GetValues (isProxy ? "Proxy-Authenticate" : "WWW-Authenticate");
                                if (authHeaders == null || authHeaders.Length == 0)
                                        return false;
 
@@ -1631,7 +1649,7 @@ namespace System.Net
                                        return false;
                                request.webHeaders [isProxy ? "Proxy-Authorization" : "Authorization"] = auth.Message;
                                isCompleted = auth.Complete;
-                               bool is_ntlm = (auth.Module.AuthenticationType == "NTLM");
+                               bool is_ntlm = (auth.ModuleAuthenticationType == "NTLM");
                                if (is_ntlm)
                                        ntlm_auth_state = (NtlmAuthState)((int) ntlm_auth_state + 1);
                                return true;
@@ -1775,6 +1793,22 @@ namespace System.Net
                }
 
                internal WebConnection StoredConnection;
+
+#region referencesource
+        internal static StringBuilder GenerateConnectionGroup(string connectionGroupName, bool unsafeConnectionGroup, bool isInternalGroup)
+        {
+            StringBuilder connectionLine = new StringBuilder(connectionGroupName);
+
+            connectionLine.Append(unsafeConnectionGroup ? "U>" : "S>");
+
+            if (isInternalGroup)
+            {
+                connectionLine.Append("I>");
+            }
+
+            return connectionLine;
+        }
+#endregion
        }
 }
 
index 32e9c14efbcc7860e1627831f4e40b9677fad1ca..6a73ae0f167c2b5217a06293eb2f90d54b370e5b 100644 (file)
@@ -244,6 +244,12 @@ namespace System.Net
                        }
                }
 
+               public override bool SupportsHeaders {
+                       get {
+                               return true;
+                       }
+               }
+
                // Methods
                
                public string GetResponseHeader (string headerName)
diff --git a/mcs/class/System/System.Net/IAuthenticationModule.cs b/mcs/class/System/System.Net/IAuthenticationModule.cs
deleted file mode 100644 (file)
index c357cf8..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-//
-// System.Net.IAuthenticationModule.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net {
-
-       // <remarks>
-       //   Authentication interface for Web client authentication modules.
-       // </remarks>
-       public interface IAuthenticationModule {
-               Authorization Authenticate (string challenge, WebRequest request, ICredentials credentials);
-               Authorization PreAuthenticate (WebRequest request, ICredentials credentials);
-               string AuthenticationType { get; }
-               bool CanPreAuthenticate { get; }
-       }
-}
diff --git a/mcs/class/System/System.Net/ICertificatePolicy.cs b/mcs/class/System/System.Net/ICertificatePolicy.cs
deleted file mode 100644 (file)
index 739c57a..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// System.Net.ICertificatePolicy.cs
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Security.Cryptography.X509Certificates;
-
-namespace System.Net {
-
-       public interface ICertificatePolicy {
-               bool CheckValidationResult (
-                               ServicePoint srvPoint,
-                               X509Certificate certificate,
-                               WebRequest request,
-                               int certificateProblem
-               );              
-       }
-}
diff --git a/mcs/class/System/System.Net/ICredentialLookup.cs b/mcs/class/System/System.Net/ICredentialLookup.cs
deleted file mode 100644 (file)
index c92b151..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.Net.ICredential.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//   Duncan Mak (duncan@ximian.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net {
-
-       // <remarks>
-       //   Base authentication interface for Web clients.
-       // </remarks>
-       public interface ICredentials 
-       {
-               NetworkCredential GetCredential (Uri uri, string authType);
-       }
-}
diff --git a/mcs/class/System/System.Net/ICredentialsByHost.cs b/mcs/class/System/System.Net/ICredentialsByHost.cs
deleted file mode 100644 (file)
index 281d87b..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// System.Net.ICredentialsByHost.cs
-//
-// Author:
-//     Tim Coleman (tim@imtcoleman.com)
-//
-// Copyright (C) Tim Coleman, 2004
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Net {
-       public interface ICredentialsByHost
-       {
-               NetworkCredential GetCredential (string host, int port, string authenticationType);
-       }
-}
diff --git a/mcs/class/System/System.Net/IPAddress.cs b/mcs/class/System/System.Net/IPAddress.cs
deleted file mode 100644 (file)
index 0211ad3..0000000
+++ /dev/null
@@ -1,529 +0,0 @@
-//
-// System.Net.IPAddress.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Globalization;
-using System.Net.Sockets;
-using System.Runtime.InteropServices;
-
-namespace System.Net {
-
-       /// <remarks>
-       ///   Encapsulates an IP Address.
-       /// </remarks>
-       [Serializable]
-       public class IPAddress {
-               // Don't change the name of this field without also
-               // changing socket-io.c in the runtime
-               // The IP address is stored in little-endian order inside the int, 
-               // meaning the lower order bytes contain the netid
-               private long m_Address;
-               private AddressFamily m_Family;
-               private ushort[] m_Numbers;     /// ip6 Stored in network order (as ip4)
-               private long m_ScopeId;
-
-               public static readonly IPAddress Any = new IPAddress(0);
-               public static readonly IPAddress Broadcast = IPAddress.Parse ("255.255.255.255");
-               public static readonly IPAddress Loopback = IPAddress.Parse ("127.0.0.1");
-               public static readonly IPAddress None = IPAddress.Parse ("255.255.255.255");
-               public static readonly IPAddress IPv6Any = IPAddress.ParseIPV6 ("::");
-               public static readonly IPAddress IPv6Loopback = IPAddress.ParseIPV6 ("::1");
-               public static readonly IPAddress IPv6None = IPAddress.ParseIPV6 ("::");
-
-               private static short SwapShort (short number)
-               {
-                       return (short) ( ((number >> 8) & 0xFF) | ((number << 8) & 0xFF00) );
-               }
-
-               private static int SwapInt (int number)
-               {
-                       return (((number >> 24) & 0xFF)
-                                 | ((number >> 08) & 0xFF00)
-                                 | ((number << 08) & 0xFF0000)
-                                 | ((number << 24)));
-               }
-
-               private static long SwapLong(long number)
-               {
-                       return (((number >> 56) & 0xFF)
-                                 | ((number >> 40) & 0xFF00)
-                                 | ((number >> 24) & 0xFF0000)
-                                 | ((number >> 08) & 0xFF000000)
-                                 | ((number << 08) & 0xFF00000000)
-                                 | ((number << 24) & 0xFF0000000000)
-                                 | ((number << 40) & 0xFF000000000000)
-                                 | ((number << 56)));
-               }
-
-               public static short HostToNetworkOrder(short host) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(host);
-
-                       return SwapShort (host);
-               }
-
-               public static int HostToNetworkOrder(int host) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(host);
-
-                       return SwapInt (host);
-               }
-               
-               public static long HostToNetworkOrder(long host) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(host);
-
-                       return SwapLong (host);
-               }
-
-               public static short NetworkToHostOrder(short network) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(network);
-
-                       return SwapShort (network);
-               }
-
-               public static int NetworkToHostOrder(int network) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(network);
-
-                       return SwapInt (network);
-               }
-
-               public static long NetworkToHostOrder(long network) {
-                       if (!BitConverter.IsLittleEndian)
-                               return(network);
-
-                       return SwapLong (network);
-               }
-               
-               /// <summary>
-               ///   Constructor from a 32-bit constant with the address bytes in
-               ///   little-endian order (the lower order bytes contain the netid)
-               /// </summary>
-               public IPAddress (long newAddress)
-               {
-                       m_Address = newAddress;
-                       m_Family = AddressFamily.InterNetwork;
-               }
-
-               public IPAddress (byte[] address)
-               {
-                       if (address == null)
-                               throw new ArgumentNullException ("address");
-
-                       int len = address.Length;
-
-                       if (len != 16 && len != 4)
-                               throw new ArgumentException ("An invalid IP address was specified.",
-                                       "address");
-
-                       if (len == 16) {
-                               m_Numbers = new ushort [8];
-                               Buffer.BlockCopy(address, 0, m_Numbers, 0, 16);
-                               m_Family = AddressFamily.InterNetworkV6;
-                               m_ScopeId = 0;
-                       } else {
-                               m_Address = ((uint) address [3] << 24) + (address [2] << 16) +
-                                       (address [1] << 8) + address [0];
-                               m_Family = AddressFamily.InterNetwork;
-                       }
-               }
-
-               public IPAddress(byte[] address, long scopeid)
-               {
-                       if (address == null)
-                               throw new ArgumentNullException ("address");
-
-                       if (address.Length != 16)
-                               throw new ArgumentException ("An invalid IP address was specified.",
-                                       "address");
-
-                       m_Numbers = new ushort [8];
-                       Buffer.BlockCopy(address, 0, m_Numbers, 0, 16);
-                       m_Family = AddressFamily.InterNetworkV6;
-                       m_ScopeId = scopeid;
-               }
-
-               internal IPAddress(ushort[] address, long scopeId)
-               {
-                       m_Numbers = address;
-
-                       for(int i=0; i<8; i++)
-                               m_Numbers[i] = (ushort)HostToNetworkOrder((short)m_Numbers[i]);
-
-                       m_Family = AddressFamily.InterNetworkV6;
-                       m_ScopeId = scopeId;
-               }
-
-               public static IPAddress Parse (string ipString)
-               {
-            if (ipString == null)
-                throw new ArgumentNullException("ipString");
-
-                       IPAddress ret;
-                       if (TryParse (ipString, out ret))
-                               return ret;
-                       throw new FormatException ("An invalid IP address was specified.");
-               }
-
-               public static bool TryParse (string ipString, out IPAddress address)
-               {
-                       if (ipString == null)
-                       {
-                               address = null;
-                               return false;
-                       }
-
-                       if ((address = ParseIPV4 (ipString)) == null)
-                               if ((address = ParseIPV6 (ipString)) == null)
-                                       return false;
-                       return true;
-               }
-
-               private static IPAddress ParseIPV4 (string ip)
-               {
-
-                       int pos = ip.IndexOf (' ');
-                       if (pos != -1) {
-                               string [] nets = ip.Substring (pos + 1).Split (new char [] {'.'});
-                               if (nets.Length > 0) {
-                                       string lastNet = nets [nets.Length - 1];
-                                       if (lastNet.Length == 0)
-                                               return null;
-                                       foreach (char c in lastNet)
-                                               if (!Uri.IsHexDigit (c))
-                                                       return null;
-                               }
-                               ip = ip.Substring (0, pos);
-                       }
-
-                       if (ip.Length == 0 || ip [ip.Length - 1] == '.')
-                               return null;
-
-                       string [] ips = ip.Split (new char [] {'.'});
-                       if (ips.Length > 4)
-                               return null;
-                       
-                       // Make the number in network order
-                       try {
-                               long a = 0;
-                               long val = 0;
-                               for (int i = 0; i < ips.Length; i++) {
-                                       string subnet = ips [i];
-                                       if ((3 <= subnet.Length && subnet.Length <= 4) &&
-                                           (subnet [0] == '0') && (subnet [1] == 'x' || subnet [1] == 'X')) {
-                                               if (subnet.Length == 3)
-                                                       val = (byte) Uri.FromHex (subnet [2]);
-                                               else 
-                                                       val = (byte) ((Uri.FromHex (subnet [2]) << 4) | Uri.FromHex (subnet [3]));
-                                       } else if (subnet.Length == 0)
-                                               return null;
-                                       else if (subnet [0] == '0') {
-                                               // octal
-                                               val = 0;
-                                               for (int j = 1; j < subnet.Length; j++) {
-                                                       if ('0' <= subnet [j] && subnet [j] <= '7')
-                                                               val = (val << 3) + subnet [j] - '0';
-                                                       else
-                                                               return null;
-                                               }
-                                       }
-                                       else {
-                                               if (!Int64.TryParse (subnet, NumberStyles.None, null, out val))
-                                                       return null;
-                                       }
-
-                                       if (i == (ips.Length - 1)) {
-                                               if (i != 0  && val >= (256 << ((3 - i) * 8)))
-                                                       return null;
-                                               else if (val > 0xffffffff)
-                                                       return null;
-                                               i = 3;
-                                       } else if (val >= 0x100)
-                                               return null;
-                                       for (int j = 0; val > 0; j++, val /= 0x100)
-                                               a |= (val & 0xFF) << ((i - j) << 3);
-                               }
-
-                               return (new IPAddress (a));
-                       } catch (Exception) {
-                               return null;
-                       }
-               }
-               
-               private static IPAddress ParseIPV6 (string ip)
-               {
-                       IPv6Address newIPv6Address;
-
-                       if (IPv6Address.TryParse(ip, out newIPv6Address))
-                               return  new IPAddress (newIPv6Address.Address, newIPv6Address.ScopeId);
-                       return null;
-               }
-
-               [Obsolete("This property is obsolete. Use GetAddressBytes.")]
-               public long Address 
-               {
-                       get {
-                               if(m_Family != AddressFamily.InterNetwork)
-                                       throw new Exception("The attempted operation is not supported for the type of object referenced");
-
-                               return m_Address;
-                       }
-                       set {
-                               /* no need to do this test, ms.net accepts any value.
-                               if (value < 0 || value > 0x00000000FFFFFFFF)
-                                       throw new ArgumentOutOfRangeException (
-                                               "the address must be between 0 and 0xFFFFFFFF");
-                               */
-
-                               if(m_Family != AddressFamily.InterNetwork)
-                                       throw new Exception("The attempted operation is not supported for the type of object referenced");
-
-                               m_Address = value;
-                       }
-               }
-
-               internal long InternalIPv4Address {
-                       get { return m_Address; }
-               }
-
-               public bool IsIPv6LinkLocal {
-                       get {
-                               if (m_Family == AddressFamily.InterNetwork)
-                                       return false;
-                               int v = NetworkToHostOrder ((short) m_Numbers [0]) & 0xFFF0;
-                               return 0xFE80 <= v && v < 0xFEC0;
-                       }
-               }
-
-               public bool IsIPv6SiteLocal {
-                       get {
-                               if (m_Family == AddressFamily.InterNetwork)
-                                       return false;
-                               int v = NetworkToHostOrder ((short) m_Numbers [0]) & 0xFFF0;
-                               return 0xFEC0 <= v && v < 0xFF00;
-                       }
-               }
-
-               public bool IsIPv6Multicast {
-                       get {
-                               return m_Family != AddressFamily.InterNetwork &&
-                                       ((ushort) NetworkToHostOrder ((short) m_Numbers [0]) & 0xFF00) == 0xFF00;
-                       }
-               }
-
-               public bool IsIPv6Teredo {
-                       get {
-                               return m_Family != AddressFamily.InterNetwork &&
-                                       NetworkToHostOrder ((short) m_Numbers [0]) == 0x2001 &&
-                                       m_Numbers[1] == 0;
-                       }
-               }
-
-               public long ScopeId {
-                       get {
-                               if (m_Family != AddressFamily.InterNetworkV6)
-                                       throw new SocketException ((int) SocketError.OperationNotSupported);
-
-                               return m_ScopeId;
-                       }
-                       set {
-                               if (m_Family != AddressFamily.InterNetworkV6)
-                                       throw new SocketException ((int) SocketError.OperationNotSupported);
-                               if ((value < 0) || (value > UInt32.MaxValue))
-                                       throw new ArgumentOutOfRangeException ();
-
-                               m_ScopeId = value;
-                       }
-               }
-
-               public byte [] GetAddressBytes () 
-               {
-                       if(m_Family == AddressFamily.InterNetworkV6) {
-                               byte [] addressBytes = new byte [16];
-                               Buffer.BlockCopy (m_Numbers, 0, addressBytes, 0, 16);
-                               return addressBytes;
-                       } else {
-                               return new byte [4] { (byte)(m_Address & 0xFF),
-                                                    (byte)((m_Address >> 8) & 0xFF),
-                                                    (byte)((m_Address >> 16) & 0xFF),
-                                                    (byte)(m_Address >> 24) }; 
-                       }
-               }
-
-               public AddressFamily AddressFamily 
-               {
-                       get {
-                               return m_Family;
-                       }
-               }
-
-#if NET_4_5
-
-               public IPAddress MapToIPv4 ()
-               {
-                       if (AddressFamily == AddressFamily.InterNetwork)
-                               return this;
-                       if (AddressFamily != AddressFamily.InterNetworkV6)
-                               throw new Exception ("Only AddressFamily.InterNetworkV6 can be converted to IPv4");
-
-                       //Test for 0000 0000 0000 0000 0000 FFFF xxxx xxxx
-                       for (int i = 0; i < 5; i++) {
-                               if (m_Numbers [i] != 0x0000)
-                                       throw new Exception ("Address does not have the ::FFFF prefix");
-                       }
-                       if (m_Numbers [5] != 0xFFFF)
-                               throw new Exception ("Address does not have the ::FFFF prefix");
-
-                       //We've got an IPv4 address
-                       byte [] ipv4Bytes = new byte [4];
-                       Buffer.BlockCopy (m_Numbers, 12, ipv4Bytes, 0, 4);
-                       return new IPAddress (ipv4Bytes);
-               }
-
-               public IPAddress MapToIPv6 ()
-               {
-                       if (AddressFamily == AddressFamily.InterNetworkV6)
-                               return this;
-                       if (AddressFamily != AddressFamily.InterNetwork)
-                               throw new Exception ("Only AddressFamily.InterNetworkV4 can be converted to IPv6");
-
-                       byte [] ipv4Bytes = GetAddressBytes ();
-                       byte [] ipv6Bytes = new byte [16] {
-                               0,0, 0,0, 0,0, 0,0, 0,0, 0xFF,0xFF,
-                               ipv4Bytes [0], ipv4Bytes [1], ipv4Bytes [2], ipv4Bytes [3]
-                       };
-                       return new IPAddress (ipv6Bytes);
-               }
-
-#endif
-
-               /// <summary>
-               ///   Used to tell whether an address is a loopback.
-               ///   All IP addresses of the form 127.X.Y.Z, where X, Y, and Z are in 
-               ///   the range 0-255, are loopback addresses.
-               /// </summary>
-               /// <param name="addr">Address to compare</param>
-               /// <returns></returns>
-               public static bool IsLoopback (IPAddress address)
-               {
-                       if(address.m_Family == AddressFamily.InterNetwork)
-                               return (address.m_Address & 0xFF) == 127;
-                       else {
-                               for(int i=0; i<6; i++) {
-                                       if(address.m_Numbers[i] != 0)
-                                               return false;
-                               }
-
-                               return NetworkToHostOrder((short)address.m_Numbers[7]) == 1;
-                       }
-               }
-
-               /// <summary>
-               ///   Overrides System.Object.ToString to return
-               ///   this object rendered in a quad-dotted notation
-               /// </summary>
-               public override string ToString ()
-               {
-                       if(m_Family == AddressFamily.InterNetwork)
-                               return ToString (m_Address);
-                       else
-                       {
-                               ushort[] numbers = m_Numbers.Clone() as ushort[];
-
-                               for(int i=0; i<numbers.Length; i++)
-                                       numbers[i] = (ushort)NetworkToHostOrder((short)numbers[i]);
-
-                               IPv6Address v6 = new IPv6Address(numbers);
-                               v6.ScopeId = ScopeId;
-                               return v6.ToString();
-                       }
-               }
-
-               /// <summary>
-               ///   Returns this object rendered in a quad-dotted notation
-               /// </summary>
-               static string ToString (long addr)
-               {
-                       // addr is in network order
-                       return  (addr & 0xff).ToString () + "." +
-                               ((addr >> 8) & 0xff).ToString () + "." +
-                               ((addr >> 16) & 0xff).ToString () + "." +
-                               ((addr >> 24) & 0xff).ToString ();
-               }
-
-               /// <returns>
-               ///   Whether both objects are equal.
-               /// </returns>
-               public override bool Equals (object comparand)
-               {
-                       IPAddress otherAddr = comparand as IPAddress;
-                       if (otherAddr != null){
-                               if(AddressFamily != otherAddr.AddressFamily)
-                                       return false;
-
-                               if(AddressFamily == AddressFamily.InterNetwork) {
-                                       return m_Address == otherAddr.m_Address;
-                               } else {
-                                       ushort[] vals = otherAddr.m_Numbers;
-
-                                       for(int i=0; i<8; i++)
-                                               if(m_Numbers[i] != vals[i])
-                                                       return false;
-
-                                       return true;
-                               }
-                       }
-                       return false;
-               }
-
-               public override int GetHashCode ()
-               {
-                       if(m_Family == AddressFamily.InterNetwork)
-                               return (int)m_Address;
-                       else
-                               return Hash (((((int) m_Numbers[0]) << 16) + m_Numbers [1]), 
-                                       ((((int) m_Numbers [2]) << 16) + m_Numbers [3]),
-                                       ((((int) m_Numbers [4]) << 16) + m_Numbers [5]),
-                                       ((((int) m_Numbers [6]) << 16) + m_Numbers [7]));
-               }
-
-               private static int Hash (int i, int j, int k, int l) 
-               {
-                       return i ^ (j << 13 | j >> 19) ^ (k << 26 | k >> 6) ^ (l << 7 | l >> 25);
-               }
-
-#pragma warning disable 169
-               // Added for serialization compatibility with MS.NET
-               private int m_HashCode;
-#pragma warning restore
-               
-       }
-}
diff --git a/mcs/class/System/System.Net/IPEndPoint.cs b/mcs/class/System/System.Net/IPEndPoint.cs
deleted file mode 100644 (file)
index a6982a1..0000000
+++ /dev/null
@@ -1,212 +0,0 @@
-//
-// System.Net.IPEndPoint.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Net.Sockets;
-
-namespace System.Net {
-       [Serializable]
-       public class IPEndPoint : EndPoint {
-
-               private IPAddress address;
-               private int port;
-
-               public const int MaxPort = 65535;
-               public const int MinPort = 0;
-               
-               public IPEndPoint (IPAddress address, int port)
-               {
-                       if (address == null)
-                               throw new ArgumentNullException ("address");
-
-                       Address = address;
-                       Port = port;
-               }
-               
-               public IPEndPoint (long address, int port)
-               {
-                       Address = new IPAddress (address);
-                       Port = port;
-               }
-
-               public IPAddress Address {
-                       get {
-                               return (address);
-                       }
-                       set {
-                               address=value;
-                       }
-               }
-
-               public override AddressFamily AddressFamily {
-                       get {
-                               return address.AddressFamily;
-                       }
-               }
-
-               public int Port {
-                       get {
-                               return port;
-                       }
-                       set {
-                               // LAMESPEC: no mention of sanity checking
-                               // PS: MS controls the range when setting the value
-                               if (value < MinPort || value > MaxPort)
-                                       throw new ArgumentOutOfRangeException ("Invalid port");
-                       
-                               port = value;
-                       }
-               }
-
-               // bytes 2 and 3 store the port, the rest
-               // stores the address
-               public override EndPoint Create (SocketAddress socketAddress)
-               {
-                       if (socketAddress == null)
-                               throw new ArgumentNullException ("socketAddress");
-
-                       if (socketAddress.Family != AddressFamily)
-                               throw new ArgumentException ("The IPEndPoint was created using " + AddressFamily + 
-                                               " AddressFamily but SocketAddress contains " + socketAddress.Family + 
-                                               " instead, please use the same type.");
-
-                       SocketAddress sockaddr = socketAddress;
-                       int size =sockaddr.Size;
-                       AddressFamily family = sockaddr.Family;
-                       int port;
-
-                       IPEndPoint ipe = null;
-                       switch(family)
-                       {
-                               case AddressFamily.InterNetwork:
-                                       if (size < 8) {
-                                               return(null);
-                                       }
-                                       
-                                       port = (((int)sockaddr[2])<<8) + (int)sockaddr[3];
-                                       long address=(((long)sockaddr[7])<<24) +
-                                               (((long)sockaddr[6])<<16) +
-                                               (((long)sockaddr[5])<<8) +
-                                               (long)sockaddr[4];
-
-                                       ipe = new IPEndPoint(address, port);
-                                       break;
-                               case AddressFamily.InterNetworkV6:
-                                       if (size < 28) {
-                                               return(null);
-                                       }
-                                       
-                                       port    = (((int)sockaddr[2])<<8) + (int)sockaddr[3];
-
-                                       /// maybe flowid ?
-                                       /*
-                                       int unknown     = (int)sockaddr[4] +
-                                               (((int)sockaddr[5])<<8) +
-                                               (((int)sockaddr[6])<<16) +
-                                               (((int)sockaddr[7])<<24);
-                                       */
-
-                                       int scopeId     = (int)sockaddr[24] +
-                                               (((int)sockaddr[25])<<8) +
-                                               (((int)sockaddr[26])<<16) +
-                                               (((int)sockaddr[27])<<24);
-
-                                       ushort[] addressData = new ushort[8];
-                                       for(int i=0; i<8; i++)
-                                               addressData[i] = (ushort)((sockaddr[8+i*2] << 8) + sockaddr[8+i*2+1]);
-
-                                       ipe = new IPEndPoint (new IPAddress(addressData, scopeId), port);
-                                       break;
-                               default:
-                                       return null;
-                       }
-
-                       return(ipe);
-               }
-
-               public override SocketAddress Serialize() {
-                       SocketAddress sockaddr = null;
-
-                       switch (address.AddressFamily)
-                       {
-                               case AddressFamily.InterNetwork:
-                                       // .net produces a 16 byte buffer, even though
-                                       // only 8 bytes are used. I guess its just a
-                                       // holdover from struct sockaddr padding.
-                                       sockaddr = new SocketAddress(AddressFamily.InterNetwork, 16);
-
-                                       // bytes 2 and 3 store the port, the rest
-                                       // stores the address
-                                       sockaddr [2] = (byte) ((port>>8) & 0xff);
-                                       sockaddr [3] = (byte) (port & 0xff);
-                                       long addr = address.InternalIPv4Address;
-                                       sockaddr [4] = (byte) (addr & 0xff);
-                                       sockaddr [5] = (byte) ((addr >> 8) & 0xff);
-                                       sockaddr [6] = (byte) ((addr >> 16) & 0xff);
-                                       sockaddr [7] = (byte) ((addr >> 24) & 0xff);
-                                       break;
-
-                               case AddressFamily.InterNetworkV6:
-                                       sockaddr = new SocketAddress(AddressFamily.InterNetworkV6, 28);
-
-                                       sockaddr [2] = (byte) ((port>>8) & 0xff);
-                                       sockaddr [3] = (byte) (port & 0xff);
-
-                                       byte[] addressBytes = address.GetAddressBytes();
-                                       for(int i=0; i<16; i++)
-                                               sockaddr[8+i] = addressBytes[i];
-                                       
-                                       sockaddr [24] = (byte) (address.ScopeId & 0xff);
-                                       sockaddr [25] = (byte) ((address.ScopeId >> 8) & 0xff);
-                                       sockaddr [26] = (byte) ((address.ScopeId >> 16) & 0xff);
-                                       sockaddr [27] = (byte) ((address.ScopeId >> 24) & 0xff);
-                                       break;
-                       }
-
-                       return(sockaddr);
-               }
-
-               public override string ToString() {
-                       return(address.ToString() + ":" + port);
-               }
-
-               public override bool Equals (object comparand)
-               {
-                       IPEndPoint p = comparand as IPEndPoint;
-                       return p != null && 
-                              p.port == port && 
-                              p.address.Equals (address);
-               }
-
-               public override int GetHashCode ()
-               {
-                       return address.GetHashCode () + port;
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net/IPHostEntry.cs b/mcs/class/System/System.Net/IPHostEntry.cs
deleted file mode 100644 (file)
index aedcbab..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-// System.Net.IPHostEntry.cs
-//
-// Author: Mads Pultz (mpultz@diku.dk)
-//
-// (C) Mads Pultz, 2001
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Net {
-       
-       public class IPHostEntry {
-               private IPAddress[] addressList;
-               private String[] aliases;
-               private String hostName;
-               
-               public IPHostEntry() {
-               }
-               
-               public IPAddress[] AddressList {
-                       get { return addressList; }
-                       set { addressList = value; }
-               }
-               
-               public string[] Aliases {
-                       get { return aliases; }
-                       set { aliases = value; }
-               }
-               
-               public string HostName {
-                       get { return hostName; }
-                       set { hostName = value; }
-               }
-               
-/* According to the .NET Framework SDK Documentation (beta 2) the following
-   methods from Object are not overrided. I implemented them before realizing
-   this but I leave the implementation here if needed in the future.
-   
-               public override string ToString() {
-                       string res = hostName;
-                       if (addressList != null && addressList.Length > 0)
-                               res += " [" + addressList[0] + "]";
-                       return res;
-               }
-               
-               public override bool Equals(object obj) {
-                       if (obj is IPHostEntry) {
-                               IPHostEntry h = (IPHostEntry)obj;
-                               return hostName.Equals(h.HostName) && aliases.Equals(h.Aliases) &&
-                                       addressList.Equals(h.AddressList);
-                       }
-                       else
-                         return false;
-               }
-               
-               public override int GetHashCode() {
-                       return hostName.GetHashCode();
-               }
-               
-               protected new object MemberwiseClone() {
-                       IPHostEntry res = new IPHostEntry();
-                       res.AddressList = new IPAddress[addressList.Length];
-                       Array.Copy(addressList, res.AddressList, addressList.Length);
-                       res.Aliases = new String[aliases.Length];
-                       Array.Copy(aliases, res.Aliases, aliases.Length);
-                       res.HostName = hostName;
-                       return res;
-               }
-*/
-       }
-}
-
index d2103b24f79699e5e547a23fe75181cec7a8eb7a..3592427d41e04b17fea2d4af5700ea4a14a1bd1c 100644 (file)
@@ -1,16 +1,8 @@
 //\r
-// System.Net.IPv6Address.cs\r
+// System.Net.IPv6AddressFormatter.cs\r
 //\r
 // Author:\r
 //   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-// Note I: This class is not defined in the specs of .Net\r
-//\r
-// Note II : The name of this class is perhaps unfortunate as it turns\r
-//           out that in ms.net there's an internal class called\r
-//           IPv6Address in namespace System.\r
-//\r
-\r
 //\r
 // Permission is hereby granted, free of charge, to any person obtaining\r
 // a copy of this software and associated documentation files (the\r
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
 //\r
 \r
-\r
-using System;\r
 using System.Globalization;\r
-using System.Net.Sockets;\r
-using System.Runtime.InteropServices;\r
 using System.Text;\r
 \r
 namespace System.Net {\r
 \r
-       /// <remarks>\r
-       ///   Encapsulates an IPv6 Address.\r
-       ///   See RFC 2373 for more info on IPv6 addresses.\r
-       /// </remarks>\r
-       [Serializable]\r
-       internal class IPv6Address {\r
-               private ushort [] address;\r
-               private int prefixLength;\r
-               private long scopeId = 0;\r
-\r
-               public static readonly IPv6Address Loopback = IPv6Address.Parse ("::1");\r
-               public static readonly IPv6Address Unspecified = IPv6Address.Parse ("::");\r
+       struct IPv6AddressFormatter\r
+       {\r
+               ushort [] address;\r
+               long scopeId;\r
 \r
-               public IPv6Address (ushort [] addr)\r
-               {\r
-                       if (addr == null)\r
-                               throw new ArgumentNullException ("addr");       \r
-                       if (addr.Length != 8)   \r
-                               throw new ArgumentException ("addr");\r
-                       address = addr;                 \r
-               }\r
-               \r
-               public IPv6Address (ushort [] addr, int prefixLength) : this (addr)\r
-               {\r
-                       if (prefixLength < 0 || prefixLength > 128)\r
-                               throw new ArgumentException ("prefixLength");\r
-                       this.prefixLength = prefixLength;\r
-               }\r
-       \r
-               public IPv6Address (ushort [] addr, int prefixLength, int scopeId) : this (addr, prefixLength)\r
+               public IPv6AddressFormatter (ushort[] addr, long scopeId)\r
                {\r
+                       this.address = addr;\r
                        this.scopeId = scopeId;\r
                }\r
 \r
-               public static IPv6Address Parse (string ipString)\r
-               {\r
-                       if (ipString == null)\r
-                               throw new ArgumentNullException ("ipString");\r
-\r
-                       IPv6Address result;\r
-                       if (TryParse (ipString, out result))\r
-                               return result;\r
-                       throw new FormatException ("Not a valid IPv6 address");\r
-               }\r
-\r
-               static int Fill (ushort [] addr, string ipString)\r
-               {\r
-                       int p = 0;\r
-                       int pdigits = 0;\r
-                       int slot = 0;\r
-\r
-                       if (ipString.Length == 0)\r
-                               return 0;\r
-                       \r
-                       // Catch double uses of ::\r
-                       if (ipString.IndexOf ("::", StringComparison.Ordinal) != -1)\r
-                               return -1;\r
-\r
-                       for (int i = 0; i < ipString.Length; i++){\r
-                               char c = ipString [i];\r
-                               int n;\r
-\r
-                               if (c == ':'){\r
-                                       // Leading : is not allowed.\r
-                                       if (i == 0)\r
-                                               return -1;\r
-                                      \r
-                                       // Trailing : is not allowed.\r
-                                       if (i == ipString.Length-1)\r
-                                               return -1;\r
-                                       \r
-                                       if (slot == 8)\r
-                                               return -1;\r
-                                       \r
-                                       addr [slot++] = (ushort) p;\r
-                                       p = 0;\r
-                                       pdigits = 0;\r
-                                       continue;\r
-                               }\r
-                               pdigits++;\r
-                               if (pdigits > 4)\r
-                                       return -1;\r
-                               if ('0' <= c && c <= '9')\r
-                                       n = (int) (c - '0');\r
-                               else if ('a' <= c && c <= 'f')\r
-                                       n = (int) (c - 'a' + 10);\r
-                               else if ('A' <= c && c <= 'F')\r
-                                       n = (int) (c - 'A' + 10);\r
-                               else \r
-                                       return -1;\r
-                               p = (p << 4) + n;\r
-                               if (p > UInt16.MaxValue)\r
-                                       return -1;\r
-                       }\r
-\r
-                       if (slot == 8)\r
-                               return -1;\r
-                       \r
-                       addr [slot++] = (ushort) p;\r
-\r
-                       return slot;\r
-               }\r
-\r
-               static bool TryParse (string prefix, out int res)\r
-               {\r
-                       return Int32.TryParse (prefix, NumberStyles.Integer, CultureInfo.InvariantCulture, out res);\r
-               }\r
-               \r
-               public static bool TryParse (string ipString, out IPv6Address result)\r
-               {\r
-                       result = null;\r
-                       if (ipString == null)\r
-                               return false;\r
-\r
-                       if (ipString.Length > 2 && \r
-                           ipString [0] == '[' && \r
-                           ipString [ipString.Length - 1] == ']')\r
-                               ipString = ipString.Substring (1, ipString.Length - 2);\r
-\r
-                       if (ipString.Length  < 2)\r
-                               return false;\r
-\r
-                       int prefixLen = 0;\r
-                       int scopeId = 0;\r
-                       int pos = ipString.LastIndexOf ('/');\r
-                       if (pos != -1) {\r
-                               string prefix = ipString.Substring (pos + 1);\r
-                               if (!TryParse (prefix , out prefixLen))\r
-                                       prefixLen = -1;\r
-                               if (prefixLen < 0 || prefixLen > 128)\r
-                                       return false;\r
-                               ipString = ipString.Substring (0, pos);\r
-                       } else {\r
-                               pos = ipString.LastIndexOf ('%');\r
-                               if (pos != -1) {\r
-                                       string prefix = ipString.Substring (pos + 1);\r
-                                       if (!TryParse (prefix, out scopeId))\r
-                                               scopeId = 0;\r
-                                       ipString = ipString.Substring (0, pos);\r
-                               }                       \r
-                       }\r
-\r
-                       //\r
-                       // At this point the prefix/suffixes have been removed\r
-                       // and we only have to deal with the ipv4 or ipv6 addressed\r
-                       //\r
-                       ushort [] addr = new ushort [8];\r
-\r
-                       //\r
-                       // Is there an ipv4 address at the end?\r
-                       //\r
-                       int pos2 = ipString.LastIndexOf (':');\r
-                       if (pos2 == -1)\r
-                               return false;\r
-\r
-                       int slots = 0;\r
-                       if (pos2 < (ipString.Length - 1)) {\r
-                               string ipv4Str = ipString.Substring (pos2 + 1);\r
-                               if (ipv4Str.IndexOf ('.') != -1) {\r
-                                       IPAddress ip;\r
-                                       \r
-                                       if (!IPAddress.TryParse (ipv4Str, out ip))\r
-                                               return false;\r
-                                       \r
-                                       long a = ip.InternalIPv4Address;\r
-                                       addr [6] = (ushort) (((int) (a & 0xff) << 8) + ((int) ((a >> 8) & 0xff)));\r
-                                       addr [7] = (ushort) (((int) ((a >> 16) & 0xff) << 8) + ((int) ((a >> 24) & 0xff)));\r
-                                       if (pos2 > 0 && ipString [pos2 - 1] == ':') \r
-                                               ipString = ipString.Substring (0, pos2 + 1);\r
-                                       else\r
-                                               ipString = ipString.Substring (0, pos2);\r
-                                       slots = 2;\r
-                               }\r
-                       }       \r
-\r
-                       //\r
-                       // Only an ipv6 block remains, either:\r
-                       // "hexnumbers::hexnumbers", "hexnumbers::" or "hexnumbers"\r
-                       //\r
-                       int c = ipString.IndexOf ("::", StringComparison.Ordinal);\r
-                       if (c != -1){\r
-                               int right_slots = Fill (addr, ipString.Substring (c+2));\r
-                               if (right_slots == -1){\r
-                                       return false;\r
-                               }\r
-\r
-                               if (right_slots + slots > 8){\r
-                                       return false;\r
-                               }\r
-\r
-                               int d = 8-slots-right_slots;\r
-                               for (int i = right_slots; i > 0; i--){\r
-                                       addr [i+d-1] = addr [i-1];\r
-                                       addr [i-1] = 0;\r
-                               }\r
-                               \r
-                               int left_slots = Fill (addr, ipString.Substring (0, c));\r
-                               if (left_slots == -1)\r
-                                       return false;\r
-\r
-                               if (left_slots + right_slots + slots > 7)\r
-                                       return false;\r
-                       } else {\r
-                               if (Fill (addr, ipString) != 8-slots)\r
-                                       return false;\r
-                       }\r
-\r
-                       result = new IPv6Address (addr, prefixLen, scopeId);\r
-                       return true;\r
-               }\r
-\r
-               public ushort [] Address {\r
-                       get { return address; }\r
-               }\r
-\r
-               public int PrefixLength {\r
-                       get { return this.prefixLength; }\r
-               }\r
-               \r
-               public long ScopeId {\r
-                       get {\r
-                               return scopeId;\r
-                       }\r
-                       set {\r
-                               scopeId = value;\r
-                       }\r
-               }\r
-\r
-               public ushort this [int index] {\r
-                       get { return address [index]; }\r
-               }               \r
-\r
-               public AddressFamily AddressFamily {\r
-                       get { return AddressFamily.InterNetworkV6; }\r
-               }\r
-\r
-               public static bool IsLoopback (IPv6Address addr)\r
-               {\r
-                       if (addr.address [7] != 1)\r
-                               return false;\r
-\r
-                       int x = addr.address [6] >> 8;\r
-                       if (x != 0x7f && x != 0)\r
-                               return false;\r
-\r
-                       for (int i = 0; i < 4; i++) {\r
-                               if (addr.address [i] != 0)\r
-                                       return false;\r
-                       }\r
-\r
-                       if (addr.address [5] != 0 && addr.address [5] != 0xffff)\r
-                               return false;\r
-\r
-                       return true;\r
-               }\r
-\r
-               private static ushort SwapUShort (ushort number)\r
+               static ushort SwapUShort (ushort number)\r
                {\r
                        return (ushort) ( ((number >> 8) & 0xFF) + ((number << 8) & 0xFF00) );\r
                }\r
 \r
                // Convert the address into a format expected by the IPAddress (long) ctor\r
                // This needs to be unsigned to satisfy the '> 1' test in IsIPv4Compatible()\r
-               private uint AsIPv4Int ()\r
+               uint AsIPv4Int ()\r
                {\r
                        return (uint)(SwapUShort (address [7]) << 16) + SwapUShort (address [6]);\r
                }                       \r
 \r
-               public bool IsIPv4Compatible ()\r
+               bool IsIPv4Compatible ()\r
                {\r
                        for (int i = 0; i < 6; i++) \r
                                if (address [i] != 0)\r
@@ -323,7 +66,7 @@ namespace System.Net {
                        return (AsIPv4Int () > 1);\r
                }\r
                \r
-               public bool IsIPv4Mapped ()\r
+               bool IsIPv4Mapped ()\r
                {\r
                        for (int i = 0; i < 5; i++) \r
                                if (address [i] != 0)\r
@@ -338,10 +81,6 @@ namespace System.Net {
                        return address [5] == 0xffff;\r
                }\r
                \r
-               /// <summary>\r
-               ///   Overrides System.Object.ToString to return\r
-               ///   this object rendered in a canonicalized notation\r
-               /// </summary>\r
                public override string ToString ()\r
                {\r
                        StringBuilder s = new StringBuilder ();\r
@@ -358,112 +97,52 @@ namespace System.Net {
 \r
                                return s.ToString ();\r
                        }\r
-                       else\r
-                       {\r
-                               int bestChStart = -1; // Best chain start\r
-                               int bestChLen = 0; // Best chain length\r
-                               int currChLen = 0; // Current chain length\r
+                       \r
+                       int bestChStart = -1; // Best chain start\r
+                       int bestChLen = 0; // Best chain length\r
+                       int currChLen = 0; // Current chain length\r
 \r
-                               // Looks for the longest zero chain\r
-                               for (int i=0; i<8; i++)\r
+                       // Looks for the longest zero chain\r
+                       for (int i=0; i<8; i++)\r
+                       {\r
+                               if (address[i] != 0)\r
                                {\r
-                                       if (address[i] != 0)\r
+                                       if ((currChLen > bestChLen) \r
+                                               && (currChLen > 1))\r
                                        {\r
-                                               if ((currChLen > bestChLen) \r
-                                                       && (currChLen > 1))\r
-                                               {\r
-                                                       bestChLen = currChLen;\r
-                                                       bestChStart = i - currChLen;\r
-                                               }\r
-                                               currChLen = 0;\r
+                                               bestChLen = currChLen;\r
+                                               bestChStart = i - currChLen;\r
                                        }\r
-                                       else\r
-                                               currChLen++;\r
-                               }\r
-                               if ((currChLen > bestChLen) \r
-                                       && (currChLen > 1))\r
-                               {\r
-                                       bestChLen = currChLen;\r
-                                       bestChStart = 8 - currChLen;\r
+                                       currChLen = 0;\r
                                }\r
+                               else\r
+                                       currChLen++;\r
+                       }\r
+                       if ((currChLen > bestChLen) \r
+                               && (currChLen > 1))\r
+                       {\r
+                               bestChLen = currChLen;\r
+                               bestChStart = 8 - currChLen;\r
+                       }\r
 \r
-                               // makes the string\r
-                               if (bestChStart == 0)\r
-                                       s.Append(":");\r
-                               for (int i=0; i<8; i++)\r
+                       // makes the string\r
+                       if (bestChStart == 0)\r
+                               s.Append(":");\r
+                       for (int i=0; i<8; i++)\r
+                       {\r
+                               if (i == bestChStart)\r
                                {\r
-                                       if (i == bestChStart)\r
-                                       {\r
-                                               s.Append (":");\r
-                                               i += (bestChLen - 1);\r
-                                               continue;\r
-                                       }\r
-                                       s.AppendFormat("{0:x}", address [i]);\r
-                                       if (i < 7) s.Append (':');\r
+                                       s.Append (":");\r
+                                       i += (bestChLen - 1);\r
+                                       continue;\r
                                }\r
+                               s.AppendFormat("{0:x}", address [i]);\r
+                               if (i < 7) s.Append (':');\r
                        }\r
+                       \r
                        if (scopeId != 0)\r
                                s.Append ('%').Append (scopeId);\r
                        return s.ToString ();\r
                }\r
-\r
-               public string ToString (bool fullLength)\r
-               {\r
-                       if (!fullLength)\r
-                               return ToString ();\r
-\r
-                       StringBuilder sb = new StringBuilder ();\r
-                       for (int i=0; i < address.Length - 1; i++) {\r
-                               sb.AppendFormat ("{0:X4}:", address [i]);\r
-                       }\r
-                       sb.AppendFormat ("{0:X4}", address [address.Length - 1]);\r
-                       return sb.ToString ();\r
-               }\r
-\r
-               /// <returns>\r
-               ///   Whether both objects are equal.\r
-               /// </returns>\r
-               public override bool Equals (object other)\r
-               {\r
-                       System.Net.IPv6Address ipv6 = other as System.Net.IPv6Address;\r
-                       if (ipv6 != null) {\r
-                               for (int i = 0; i < 8; i++) \r
-                                       if (this.address [i] != ipv6.address [i])\r
-                                               return false;\r
-                               return true;\r
-                       }\r
-                       \r
-                       System.Net.IPAddress ipv4 = other as System.Net.IPAddress;\r
-                       if (ipv4 != null) {\r
-                               for (int i = 0; i < 5; i++) \r
-                                       if (address [i] != 0)\r
-                                               return false;\r
-\r
-                               if (address [5] != 0 && address [5] != 0xffff)\r
-                                       return false;\r
-\r
-                               long a = ipv4.InternalIPv4Address;\r
-                               if (address [6] != (ushort) (((int) (a & 0xff) << 8) + ((int) ((a >> 8) & 0xff))) ||\r
-                                   address [7] != (ushort) (((int) ((a >> 16) & 0xff) << 8) + ((int) ((a >> 24) & 0xff))))\r
-                                       return false;\r
-\r
-                               return true;\r
-                       }\r
-                       \r
-                       return false;\r
-               }\r
-\r
-               public override int GetHashCode ()\r
-               {\r
-                       return Hash (((((int) address [0]) << 16) + address [1]), \r
-                                               ((((int) address [2]) << 16) + address [3]),\r
-                                               ((((int) address [4]) << 16) + address [5]),\r
-                                               ((((int) address [6]) << 16) + address [7]));\r
-               }\r
-               \r
-               private static int Hash (int i, int j, int k, int l) \r
-               {\r
-                       return i ^ (j << 13 | j >> 19) ^ (k << 26 | k >> 6) ^ (l << 7 | l >> 25);\r
-               }\r
        }\r
 }\r
diff --git a/mcs/class/System/System.Net/IWebProxy.cs b/mcs/class/System/System.Net/IWebProxy.cs
deleted file mode 100644 (file)
index 0b0eb65..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// System.Net.IWebProxy.cs
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Net {
-
-       // <remarks>
-       // </remarks>
-       public interface IWebProxy {
-               ICredentials Credentials {
-                       get; 
-                       set;
-               }
-
-               Uri GetProxy (Uri destination);
-               
-               bool IsBypassed (Uri host);
-       }
-}
diff --git a/mcs/class/System/System.Net/IWebRequestCreate.cs b/mcs/class/System/System.Net/IWebRequestCreate.cs
deleted file mode 100644 (file)
index b840dea..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-//
-// System.Net.IWebRequestCreate.cs
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net {
-
-       public interface IWebRequestCreate {
-               WebRequest Create (Uri uri);            
-       }
-}
diff --git a/mcs/class/System/System.Net/NetworkAccess.cs b/mcs/class/System/System.Net/NetworkAccess.cs
deleted file mode 100644 (file)
index cc56568..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-// NetworkAccess.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Wed, 5 Sep 2001 06:35:58 UTC
-// Source file: all.xml
-// URL: http://devresource.hp.com/devresource/Docs/TechPapers/CSharp/all.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Net {
-       [Flags]
-       public enum NetworkAccess {
-               Accept = 128,
-
-               Connect = 64,
-       }
-
-} 
diff --git a/mcs/class/System/System.Net/ProtocolViolationException.cs b/mcs/class/System/System.Net/ProtocolViolationException.cs
deleted file mode 100644 (file)
index 0587dfe..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//\r
-// System.Net.ProtocolViolationException.cs\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System.Globalization;\r
-using System.Runtime.Serialization;\r
-\r
-namespace System.Net \r
-{\r
-       [Serializable]\r
-       public class ProtocolViolationException : InvalidOperationException, ISerializable\r
-       {\r
-\r
-               // Constructors\r
-               public ProtocolViolationException () : base ()\r
-               {\r
-               }\r
-               \r
-               public ProtocolViolationException (string message) : base (message)\r
-               {\r
-               }\r
-\r
-               protected ProtocolViolationException (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-                       : base (serializationInfo, streamingContext)\r
-               {\r
-               }\r
-\r
-               // Methods\r
-               void ISerializable.GetObjectData (SerializationInfo info, StreamingContext context)\r
-               {\r
-                       base.GetObjectData (info, context);\r
-               }\r
-\r
-               public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       base.GetObjectData (serializationInfo, streamingContext);\r
-               }\r
-       }\r
-}\r
-       \r
diff --git a/mcs/class/System/System.Net/SecurityProtocolType.cs b/mcs/class/System/System.Net/SecurityProtocolType.cs
deleted file mode 100644 (file)
index 69f2fca..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//
-// System.Net.SecurityProtocolType.cs
-//
-// Authors
-//     Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net {
-
-       [Flags]
-       public
-       enum SecurityProtocolType {
-               Ssl3 = 48,
-               Tls = 192,
-               Tls11 = 768,
-               Tls12 = 3072
-       }
-}
index 13c06ec493f499c3f5636c35248940ba13b3a6cc..108de70ffb3282873158d25fac7044fffd43a99b 100644 (file)
@@ -42,7 +42,7 @@ namespace System.Net
 {
        public class ServicePoint
        {
-               Uri uri;
+               readonly Uri uri;
                int connectionLimit;
                int maxIdleTime;
                int currentConnections;
@@ -345,15 +345,31 @@ namespace System.Net
                                lock (hostE) {
                                        string uriHost = uri.Host;
 
-                                       if (host == null || HasTimedOut) {
-                                               lastDnsResolve = DateTime.UtcNow;
+                                       if (host == null) {
+                                               // Cannot do DNS resolution on literal IP addresses
+                                               if (uri.HostNameType == UriHostNameType.IPv6 || uri.HostNameType == UriHostNameType.IPv4) {
 
-                                               try {
-                                                       host = Dns.GetHostEntry (uriHost);
-                                               }
-                                               catch (Exception) {
-                                                       return null;
+                                                       if (uri.HostNameType == UriHostNameType.IPv6) {
+                                                               // Remove square brackets
+                                                               uriHost = uriHost.Substring (1, uriHost.Length - 2);
+                                                       }
+
+                                                       // Creates IPHostEntry
+                                                       host = new IPHostEntry();
+                                                       host.AddressList = new IPAddress[] { IPAddress.Parse (uriHost) };
+                                                       return host;
                                                }
+                                       } else {
+                                               if (!HasTimedOut)
+                                                       return host;
+                                       }
+
+                                       lastDnsResolve = DateTime.UtcNow;
+
+                                       try {
+                                               host = Dns.GetHostEntry (uriHost);
+                                       } catch {
+                                               return null;
                                        }
                                }
 
@@ -489,6 +505,11 @@ namespace System.Net
                                return true;
                        }
                }
+
+               internal Socket GetConnection(PooledStream PooledStream, object owner, bool async, out IPAddress address, ref Socket abortSocket, ref Socket abortSocket6)
+               {
+                       throw new NotImplementedException ();
+               }
        }
 }
 
index abd23e67270d619d6b6435ca104187a9be488401..723125b1e753c867afe58eb58109b3895812ef7d 100644 (file)
@@ -311,7 +311,7 @@ namespace System.Net
 
                public static ServicePoint FindServicePoint (Uri address) 
                {
-                       return FindServicePoint (address, GlobalProxySelection.Select);
+                       return FindServicePoint (address, null);
                }
                
                public static ServicePoint FindServicePoint (string uriString, IWebProxy proxy)
index 30443637854ade6db9be4d55ceec918b13866139..d971cdd841247e06269b3819de75f54b6804fa4d 100644 (file)
@@ -7,17 +7,29 @@
 // Copyright 2013-2014 Xamarin Inc.
 //
 
+#if MOBILE
+
 using System;
 using System.Collections.Generic;
 
 namespace System.Net {
 
+       /*
+        * The idea behind this API was to let the application filter the set of cipher suites received / send to
+        * the remote side.  This concept does not any longer work with the new native implementations.
+        */
+
+       [Obsolete ("This API is no longer supported.")]
        public delegate IEnumerable<string> CipherSuitesCallback (SecurityProtocolType protocol, IEnumerable<string> allCiphers);
 
        public partial class ServicePointManager {
 
+               [Obsolete ("This API is no longer supported.", true)]
                public static CipherSuitesCallback ClientCipherSuitesCallback { get; set; }
 
+               [Obsolete ("This API is no longer supported.", true)]
                public static CipherSuitesCallback ServerCipherSuitesCallback { get; set; }
        }
-}
\ No newline at end of file
+}
+
+#endif
diff --git a/mcs/class/System/System.Net/SocketAddress.cs b/mcs/class/System/System.Net/SocketAddress.cs
deleted file mode 100644 (file)
index 463f275..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-//
-// System.Net.SocketAddress.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//   Dick Porter (dick@ximian.com)
-//
-// (C) Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Net.Sockets;
-
-namespace System.Net {
-
-       public class SocketAddress {
-               private byte[] data;
-               
-               public SocketAddress (AddressFamily family, int size)
-               {
-                       if(size<2) {
-                               throw new ArgumentOutOfRangeException("size is too small");
-                       }
-                       
-                       data=new byte[size];
-                       data[0]=(byte)family;
-                       data[1]=(byte) ((int) family >> 8);
-               }
-
-               public SocketAddress (AddressFamily family)
-                       : this (family, 32)
-               {
-               }
-               
-               //LAMESPEC: the MS doc about this class is wrong. The size is not stored in byte 1. Instead
-               // byte [0] and byte [1] hold the family (little endian).
-               public AddressFamily Family {
-                       get {
-                               return (AddressFamily) (data [0] + (data [1] << 8));
-                       }
-               }
-
-               public int Size {
-                       get {
-                               return data.Length;
-                       }
-               }
-
-               public byte this [ int offset ] {
-                       get {
-                               return(data[offset]);
-                       }
-
-                       set {
-                               data[offset]=value;
-                       }
-               }
-
-               public override string ToString() {
-                       string af=((AddressFamily)data[0]).ToString();
-                       int size = data.Length;
-                       string ret=af+":"+size+":{";
-                       
-                       for(int i=2; i<size; i++) {
-                               int val=(int)data[i];
-                               ret=ret+val;
-                               if(i<size-1) {
-                                       ret=ret+",";
-                               }
-                       }
-                       
-                       ret=ret+"}";
-                       
-                       return(ret);
-               }
-
-               public override bool Equals (object comparand)
-               {
-                       SocketAddress sa = (comparand as SocketAddress);
-                       if ((sa != null) && (sa.data.Length == data.Length)) {
-                               byte [] otherData = sa.data;
-                               for (int i = 0; i < data.Length; i++)
-                                       if (otherData [i] != data [i])
-                                               return false;
-
-                               return true;
-                       }
-
-                       return false;
-               }
-
-               public override int GetHashCode ()
-               {
-                       int code = 0;
-
-                       for (int i = 0; i < data.Length; i++)
-                               code += data [i] + i;
-
-                       return code;
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net/TransportContext.cs b/mcs/class/System/System.Net/TransportContext.cs
deleted file mode 100644 (file)
index 7685687..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// TransportContext.cs
-//
-// Authors:
-//     Marek Safar  <marek.safar@gmail.com>
-//
-// Copyright (C) 2011 Xamarin Inc (http://www.xamarin.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-using System.Security.Authentication.ExtendedProtection;
-
-namespace System.Net
-{
-       public abstract class TransportContext
-       {
-               public abstract ChannelBinding GetChannelBinding (ChannelBindingKind kind);
-       }
-}
-
diff --git a/mcs/class/System/System.Net/TransportType.cs b/mcs/class/System/System.Net/TransportType.cs
deleted file mode 100644 (file)
index d1f9c56..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-// TransportType.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Wed, 5 Sep 2001 06:32:18 UTC
-// Source file: AllTypes.xml
-// URL: http://msdn.microsoft.com/net/ecma/AllTypes.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Net {
-
-
-       /// <summary>
-       /// </summary>
-       public enum TransportType {
-
-               /// <summary>
-               /// </summary>
-               Udp = 1,
-
-               /// <summary>
-               /// </summary>
-               Connectionless = 1,
-
-               /// <summary>
-               /// </summary>
-               Tcp = 2,
-
-               /// <summary>
-               /// </summary>
-               ConnectionOriented = 2,
-
-               /// <summary>
-               /// </summary>
-               All = 3,
-       } // TransportType
-
-} // System.Net
diff --git a/mcs/class/System/System.Net/UploadProgressChangedEventHandler.cs b/mcs/class/System/System.Net/UploadProgressChangedEventHandler.cs
deleted file mode 100644 (file)
index af1853e..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-// UploadProgressChangedEventHandler.cs
-//
-// Author:
-//     Atsushi Enomoto  <atsushi@ximian.com>
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-namespace System.Net
-{
-       public delegate void UploadProgressChangedEventHandler (object sender, UploadProgressChangedEventArgs e);
-}
-
index f4f61725fb440e500fa5b40060cf7a489f6ec3d6..28d89a6065cd04a62b2827062409bd9fe057de06 100644 (file)
@@ -261,7 +261,7 @@ namespace System.Net
                                        var auth = AuthenticationManager.Authenticate (challenge [i], connect_request, creds);
                                        if (auth == null)
                                                continue;
-                                       ntlm = (auth.Module.AuthenticationType == "NTLM");
+                                       ntlm = (auth.ModuleAuthenticationType == "NTLM");
                                        sb.Append ("\r\nProxy-Authorization: ");
                                        sb.Append (auth.Message);
                                        break;
@@ -292,7 +292,7 @@ namespace System.Net
                                }
 
                                Data.StatusCode = status;
-                               Data.Challenge = result.GetValues_internal ("Proxy-Authenticate", false);
+                               Data.Challenge = result.GetValues ("Proxy-Authentic");
                                return false;
                        } else if (status != 200) {
                                string msg = String.Format ("The remote server returned a {0} status code.", status);
@@ -659,8 +659,23 @@ namespace System.Net
                                        if (!finished)
                                                return 0;
 
-                                       foreach (string s in headers)
-                                               data.Headers.SetInternal (s);
+                                       // .NET uses ParseHeaders or ParseHeadersStrict which is much better
+                                       foreach (string s in headers) {
+
+                                               int pos_s = s.IndexOf (':');
+                                               if (pos_s == -1)
+                                                       throw new ArgumentException ("no colon found", "header");
+
+                                               var header = s.Substring (0, pos_s);
+                                               var value = s.Substring (pos_s + 1).Trim ();
+
+                                               var h = data.Headers;
+                                               if (h.AllowMultiValues (header)) {
+                                                       h.AddInternal (header, value);
+                                               } else  {
+                                                       h.SetInternal (header, value);
+                                               }
+                                       }
 
                                        if (data.StatusCode == (int) HttpStatusCode.Continue) {
                                                sPoint.SendContinue = true;
index 295ee6757dc9c6df48202cbe65feb22dc4fdf17d..9f8ed04955b1036095f1b64d5c87482c010e7958 100644 (file)
@@ -480,7 +480,7 @@ namespace System.Net
                                                        AsyncCallback cb, object state)
                {
                        if (request.Aborted)
-                               throw new WebException ("The request was canceled.", null, WebExceptionStatus.RequestCanceled);
+                               throw new WebException ("The request was canceled.", WebExceptionStatus.RequestCanceled);
 
                        if (isRead)
                                throw new NotSupportedException ("this stream does not allow writing");
@@ -675,7 +675,7 @@ namespace System.Net
                                } catch (WebException e) {
                                        result.SetCompleted (false, e);
                                } catch (Exception e) {
-                                       result.SetCompleted (false, new WebException ("Error writing headers", e, WebExceptionStatus.SendFailure));
+                                       result.SetCompleted (false, new WebException ("Error writing headers", WebExceptionStatus.SendFailure, WebExceptionInternalStatus.RequestFatal, e));
                                }
                        }, null);
 
@@ -814,7 +814,7 @@ namespace System.Net
                                IOException io = new IOException ("Cannot close the stream until all bytes are written");
                                nextReadCalled = true;
                                cnc.Close (true);
-                               throw new WebException ("Request was cancelled.", io, WebExceptionStatus.RequestCanceled);
+                               throw new WebException ("Request was cancelled.", WebExceptionStatus.RequestCanceled, WebExceptionInternalStatus.RequestFatal, io);
                        }
 
                        // Commented out the next line to fix xamarin bug #1512
diff --git a/mcs/class/System/System.Net/WebException.cs b/mcs/class/System/System.Net/WebException.cs
deleted file mode 100644 (file)
index e6b3c16..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-//\r
-// System.Net.WebException.cs\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System.Runtime.Serialization;\r
-\r
-namespace System.Net \r
-{\r
-       [Serializable]\r
-       public class WebException : InvalidOperationException, ISerializable {\r
-               private WebResponse response;\r
-               private WebExceptionStatus status = WebExceptionStatus.UnknownError;\r
-\r
-               // Constructors\r
-               \r
-               public WebException () : base ()\r
-               {\r
-               }\r
-               \r
-               public WebException (string message) : base (message)\r
-               {\r
-               }\r
-\r
-               protected WebException (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-                       : base (serializationInfo, streamingContext)\r
-               {\r
-               }\r
-\r
-               public WebException (string message, Exception innerException)\r
-                       : base (message, innerException)\r
-               {\r
-               }\r
-\r
-               public WebException (string message, WebExceptionStatus status)\r
-                       : base (message)\r
-               {\r
-                       this.status = status;\r
-               }\r
-               \r
-               internal WebException (string message, Exception innerException, WebExceptionStatus status)\r
-                       : base (message, innerException)\r
-               {\r
-                       this.status = status;\r
-               }\r
-\r
-               public WebException(string message, \r
-                                   Exception innerException,\r
-                                   WebExceptionStatus status, \r
-                                   WebResponse response)\r
-                       : base (message, innerException)\r
-               {\r
-                       this.status = status;\r
-                       this.response = response;\r
-               }\r
-               \r
-               // Properties\r
-               \r
-               public WebResponse Response {\r
-                       get { return this.response; }\r
-               }\r
-               \r
-               public WebExceptionStatus Status {\r
-                       get { return this.status; }\r
-               }\r
-               \r
-               // Methods\r
-               void ISerializable.GetObjectData (SerializationInfo info, StreamingContext context)\r
-               {\r
-                       base.GetObjectData (info, context);\r
-               }\r
-\r
-               public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       base.GetObjectData (serializationInfo,\r
-                                           streamingContext);\r
-               }\r
-       }\r
-}\r
diff --git a/mcs/class/System/System.Net/WebExceptionStatus.cs b/mcs/class/System/System.Net/WebExceptionStatus.cs
deleted file mode 100644 (file)
index 468a0d5..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-// System.Net.WebExceptionStatus.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//   originally autogenerated by Sergey Chaban (serge@wildwestsoftware.com)
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net 
-{
-       public
-       enum WebExceptionStatus 
-       {
-               Success = 0,
-               NameResolutionFailure = 1,
-               ConnectFailure = 2,
-               ReceiveFailure = 3,
-               SendFailure = 4,
-               PipelineFailure = 5,
-               RequestCanceled = 6,
-               ProtocolError = 7,
-               ConnectionClosed = 8,
-               TrustFailure = 9,
-               SecureChannelFailure = 10,
-               ServerProtocolViolation = 11,
-               KeepAliveFailure = 12,
-               Pending = 13,
-               Timeout = 14,
-               ProxyNameResolutionFailure = 15,
-
-
-               UnknownError = 16,
-               MessageLengthLimitExceeded = 17,
-
-               CacheEntryNotFound = 18,
-               RequestProhibitedByCachePolicy = 19,
-               RequestProhibitedByProxy = 20,
-
-       }
-}
diff --git a/mcs/class/System/System.Net/WebHeaderCollection.cs b/mcs/class/System/System.Net/WebHeaderCollection.cs
deleted file mode 100644 (file)
index 967a4eb..0000000
+++ /dev/null
@@ -1,746 +0,0 @@
-//
-// System.Net.WebHeaderCollection
-//
-// Authors:
-//     Lawrence Pit (loz@cable.a2000.nl)
-//     Gonzalo Paniagua Javier (gonzalo@ximian.com)
-//      Miguel de Icaza (miguel@novell.com)
-//     Marek Safar (marek.safar@gmail.com)
-//
-// Copyright 2003 Ximian, Inc. (http://www.ximian.com)
-// Copyright 2007 Novell, Inc. (http://www.novell.com)
-// Copyright (C) 2011 Xamarin Inc (http://www.xamarin.com)
-//
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.Specialized;
-using System.Runtime.InteropServices;
-using System.Runtime.Serialization;
-using System.Text;
-    
-// See RFC 2068 par 4.2 Message Headers
-    
-namespace System.Net 
-{
-       [Serializable]
-       [ComVisible(true)]
-       public class WebHeaderCollection : NameValueCollection, ISerializable {
-               [Flags]
-               internal enum HeaderInfo
-               {
-                       Request = 1,
-                       Response = 1 << 1,
-                       MultiValue = 1 << 10
-               }
-
-               static readonly bool[] allowed_chars = {
-                       false, false, false, false, false, false, false, false, false, false, false, false, false, false,
-                       false, false, false, false, false, false, false, false, false, false, false, false, false, false,
-                       false, false, false, false, false, true, false, true, true, true, true, false, false, false, true,
-                       true, false, true, true, false, true, true, true, true, true, true, true, true, true, true, false,
-                       false, false, false, false, false, false, true, true, true, true, true, true, true, true, true,
-                       true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true,
-                       false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true,
-                       true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true,
-                       false, true, false
-               };
-
-               static readonly Dictionary<string, HeaderInfo> headers;
-               HeaderInfo? headerRestriction;
-               HeaderInfo? headerConsistency;
-               
-               static WebHeaderCollection () 
-               {
-                       headers = new Dictionary<string, HeaderInfo> (StringComparer.OrdinalIgnoreCase) {
-                               { "Allow", HeaderInfo.MultiValue },
-                               { "Accept", HeaderInfo.Request | HeaderInfo.MultiValue },
-                               { "Accept-Charset", HeaderInfo.MultiValue },
-                               { "Accept-Encoding", HeaderInfo.MultiValue },
-                               { "Accept-Language", HeaderInfo.MultiValue },
-                               { "Accept-Ranges", HeaderInfo.MultiValue },
-                               { "Authorization", HeaderInfo.MultiValue },
-                               { "Cache-Control", HeaderInfo.MultiValue },
-                               { "Cookie", HeaderInfo.MultiValue },
-                               { "Connection", HeaderInfo.Request | HeaderInfo.MultiValue },
-                               { "Content-Encoding", HeaderInfo.MultiValue },
-                               { "Content-Length", HeaderInfo.Request | HeaderInfo.Response },
-                               { "Content-Type", HeaderInfo.Request },
-                               { "Content-Language", HeaderInfo.MultiValue },
-                               { "Date", HeaderInfo.Request },
-                               { "Expect", HeaderInfo.Request | HeaderInfo.MultiValue},
-                               { "Host", HeaderInfo.Request },
-                               { "If-Match", HeaderInfo.MultiValue },
-                               { "If-Modified-Since", HeaderInfo.Request },
-                               { "If-None-Match", HeaderInfo.MultiValue },
-                               { "Keep-Alive", HeaderInfo.Response },
-                               { "Pragma", HeaderInfo.MultiValue },
-                               { "Proxy-Authenticate", HeaderInfo.MultiValue },
-                               { "Proxy-Authorization", HeaderInfo.MultiValue },
-                               { "Proxy-Connection", HeaderInfo.Request | HeaderInfo.MultiValue },
-                               { "Range", HeaderInfo.Request | HeaderInfo.MultiValue },
-                               { "Referer", HeaderInfo.Request },
-                               { "Set-Cookie", HeaderInfo.MultiValue },
-                               { "Set-Cookie2", HeaderInfo.MultiValue },
-                               { "TE", HeaderInfo.MultiValue },
-                               { "Trailer", HeaderInfo.MultiValue },
-                               { "Transfer-Encoding", HeaderInfo.Request | HeaderInfo.Response | HeaderInfo.MultiValue },
-                               { "Upgrade", HeaderInfo.MultiValue },
-                               { "User-Agent", HeaderInfo.Request },
-                               { "Vary", HeaderInfo.MultiValue },
-                               { "Via", HeaderInfo.MultiValue },
-                               { "Warning", HeaderInfo.MultiValue },
-                               { "WWW-Authenticate", HeaderInfo.Response | HeaderInfo. MultiValue }
-                       };
-               }
-               
-               // Constructors
-               
-               public WebHeaderCollection ()
-               {
-               }
-
-
-        internal WebHeaderCollection(WebHeaderCollectionType type)
-        {
-//            m_Type = type;
-//            if (type == WebHeaderCollectionType.HttpWebResponse)
-//                m_CommonHeaders = new string[s_CommonHeaderNames.Length - 1];  // Minus one for the sentinel.
-        }              
-               
-               protected WebHeaderCollection (SerializationInfo serializationInfo, 
-                                              StreamingContext streamingContext)
-               {
-                       int count;
-
-                       try {
-                               count = serializationInfo.GetInt32("Count");
-                               for (int i = 0; i < count; i++) 
-                                       this.Add (serializationInfo.GetString (i.ToString ()),
-                                                 serializationInfo.GetString ((count + i).ToString ()));
-                       } catch (SerializationException){
-                               count = serializationInfo.GetInt32("count");
-                               for (int i = 0; i < count; i++) 
-                                       this.Add (serializationInfo.GetString ("k" + i),
-                                                 serializationInfo.GetString ("v" + i));
-                       }
-                       
-               }
-
-               internal WebHeaderCollection (HeaderInfo headerRestriction)
-               {
-                       this.headerRestriction = headerRestriction;
-               }               
-               
-               // Methods
-               
-               public void Add (string header)
-               {
-                       if (header == null)
-                               throw new ArgumentNullException ("header");
-                       int pos = header.IndexOf (':');
-                       if (pos == -1)
-                               throw new ArgumentException ("no colon found", "header");
-
-                       this.Add (header.Substring (0, pos), header.Substring (pos + 1));
-               }
-               
-               public override void Add (string name, string value)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-
-                       CheckRestrictedHeader (name);
-                       this.AddWithoutValidate (name, value);
-               }
-
-               protected void AddWithoutValidate (string headerName, string headerValue)
-               {
-                       if (!IsHeaderName (headerName))
-                               throw new ArgumentException ("invalid header name: " + headerName, "headerName");
-                       if (headerValue == null)
-                               headerValue = String.Empty;
-                       else
-                               headerValue = headerValue.Trim ();
-                       if (!IsHeaderValue (headerValue))
-                               throw new ArgumentException ("invalid header value: " + headerValue, "headerValue");
-                       
-                       AddValue (headerName, headerValue);
-               }
-                       
-               internal void AddValue (string headerName, string headerValue)
-               {
-                       base.Add (headerName, headerValue);                     
-               }
-
-               internal string [] GetValues_internal (string header, bool split)
-               {
-                       if (header == null)
-                               throw new ArgumentNullException ("header");
-
-                       string [] values = base.GetValues (header);
-                       if (values == null || values.Length == 0)
-                               return null;
-
-                       if (split && IsMultiValue (header)) {
-                               List<string> separated = null;
-                               foreach (var value in values) {
-                                       if (value.IndexOf (',') < 0) {
-                                               if (separated != null)
-                                                       separated.Add (value);
-                                               
-                                               continue;
-                                       }
-
-                                       if (separated == null) {
-                                               separated = new List<string> (values.Length + 1);
-                                               foreach (var v in values) {
-                                                       if (v == value)
-                                                               break;
-
-                                                       separated.Add (v);
-                                               }
-                                       }
-
-                                       var slices = value.Split (',');
-                                       var slices_length = slices.Length;
-                                       if (value[value.Length - 1] == ',')
-                                               --slices_length;
-
-                                       for (int i = 0; i < slices_length; ++i ) {
-                                               separated.Add (slices[i].Trim ());
-                                       }
-                               }
-
-                               if (separated != null)
-                                       return separated.ToArray ();
-                       }
-
-                       return values;
-               }
-
-               public override string [] GetValues (string header)
-               {
-                       return GetValues_internal (header, true);
-               }
-
-               public override string[] GetValues (int index)
-               {
-                       string[] values = base.GetValues (index);
-
-                       if (values == null || values.Length == 0) {
-                               return null;
-                       }
-                       
-                       return values;
-               }
-
-               public static bool IsRestricted (string headerName)
-               {
-                       return IsRestricted (headerName, false);
-               }
-
-               public static bool IsRestricted (string headerName, bool response)
-               {
-                       if (headerName == null)
-                               throw new ArgumentNullException ("headerName");
-
-                       if (headerName.Length == 0)
-                               throw new ArgumentException ("empty string", "headerName");
-
-                       if (!IsHeaderName (headerName))
-                               throw new ArgumentException ("Invalid character in header");
-
-                       HeaderInfo info;
-                       if (!headers.TryGetValue (headerName, out info))
-                               return false;
-
-                       var flag = response ? HeaderInfo.Response : HeaderInfo.Request;
-                       return (info & flag) != 0;
-               }
-
-               public override void OnDeserialization (object sender)
-               {
-               }
-
-               public override void Remove (string name)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-
-                       CheckRestrictedHeader (name);
-                       base.Remove (name);
-               }
-
-               public override void Set (string name, string value)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-                       if (!IsHeaderName (name))
-                               throw new ArgumentException ("invalid header name");
-                       if (value == null)
-                               value = String.Empty;
-                       else
-                               value = value.Trim ();
-                       if (!IsHeaderValue (value))
-                               throw new ArgumentException ("invalid header value");
-
-                       CheckRestrictedHeader (name);
-                       base.Set (name, value);                 
-               }
-
-               public byte[] ToByteArray ()
-               {
-                       return Encoding.UTF8.GetBytes(ToString ());
-               }
-
-               internal string ToStringMultiValue ()
-               {
-                       StringBuilder sb = new StringBuilder();
-
-                       int count = base.Count;
-                       for (int i = 0; i < count ; i++) {
-                               string key = GetKey (i);
-                               if (IsMultiValue (key)) {
-                                       foreach (string v in GetValues (i)) {
-                                               sb.Append (key)
-                                                 .Append (": ")
-                                                 .Append (v)
-                                                 .Append ("\r\n");
-                                       }
-                               } else {
-                                       sb.Append (key)
-                                         .Append (": ")
-                                         .Append (Get (i))
-                                         .Append ("\r\n");
-                               }
-                        }
-                       return sb.Append("\r\n").ToString();
-               }
-
-               public override string ToString ()
-               {
-                       StringBuilder sb = new StringBuilder();
-
-                       int count = base.Count;
-                       for (int i = 0; i < count ; i++)
-                               sb.Append (GetKey (i))
-                                 .Append (": ")
-                                 .Append (Get (i))
-                                 .Append ("\r\n");
-
-                       return sb.Append("\r\n").ToString();
-               }
-               void ISerializable.GetObjectData (SerializationInfo serializationInfo,
-                                                 StreamingContext streamingContext)
-               {
-                       GetObjectData (serializationInfo, streamingContext);
-               }
-               public override void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       int count = base.Count;
-                       serializationInfo.AddValue ("Count", count);
-                       for (int i = 0; i < count; i++) {
-                               serializationInfo.AddValue (i.ToString (), GetKey (i));
-                               serializationInfo.AddValue ((count + i).ToString (), Get (i));
-                       }
-               }
-
-               public override string[] AllKeys {
-                       get {
-                               return base.AllKeys;
-                       }
-               }
-               
-               public override int Count {
-                       get {
-                               return base.Count;
-                       }
-               }
-
-               public override KeysCollection Keys {
-                       get {
-                               return base.Keys;
-                       }
-               }
-
-               public override string Get (int index)
-               {
-                       return base.Get (index);
-               }
-               
-               public override string Get (string name)
-               {
-                       return base.Get (name);
-               }
-               
-               public override string GetKey (int index)
-               {
-                       return base.GetKey (index);
-               }
-
-               public void Add (HttpRequestHeader header, string value)
-               {
-                       Add (RequestHeaderToString (header), value);
-               }
-
-               public void Remove (HttpRequestHeader header)
-               {
-                       Remove (RequestHeaderToString (header));
-               }
-
-               public void Set (HttpRequestHeader header, string value)
-               {
-                       Set (RequestHeaderToString (header), value);
-               }
-
-               public void Add (HttpResponseHeader header, string value)
-               {
-                       Add (ResponseHeaderToString (header), value);
-               }
-
-               public void Remove (HttpResponseHeader header)
-               {
-                       Remove (ResponseHeaderToString (header));
-               }
-
-               public void Set (HttpResponseHeader header, string value)
-               {
-                       Set (ResponseHeaderToString (header), value);
-               }
-
-               public string this [HttpRequestHeader header] {
-                       get {
-                               return Get (RequestHeaderToString (header));
-                       }
-                       
-                       set {
-                               Set (header, value);
-                       }
-               }
-
-               public string this [HttpResponseHeader header] {
-                       get {
-                               return Get (ResponseHeaderToString (header));
-                       }
-
-                       set {
-                               Set (header, value);
-                       }
-               }
-
-               public override void Clear ()
-               {
-                       base.Clear ();
-               }
-
-               public override IEnumerator GetEnumerator ()
-               {
-                       return base.GetEnumerator ();
-               }
-
-               // Internal Methods
-               
-               // With this we don't check for invalid characters in header. See bug #55994.
-               internal void SetInternal (string header)
-               {
-                       int pos = header.IndexOf (':');
-                       if (pos == -1)
-                               throw new ArgumentException ("no colon found", "header");                               
-
-                       SetInternal (header.Substring (0, pos), header.Substring (pos + 1));
-               }
-
-               internal void SetInternal (string name, string value)
-               {
-                       if (value == null)
-                               value = String.Empty;
-                       else
-                               value = value.Trim ();
-                       if (!IsHeaderValue (value))
-                               throw new ArgumentException ("invalid header value");
-
-                       if (IsMultiValue (name)) {
-                               base.Add (name, value);
-                       } else {
-                               base.Remove (name);
-                               base.Set (name, value); 
-                       }
-               }
-
-               internal void RemoveAndAdd (string name, string value)
-               {
-                       if (value == null)
-                               value = String.Empty;
-                       else
-                               value = value.Trim ();
-
-                       base.Remove (name);
-                       base.Set (name, value);
-               }
-
-               internal void RemoveInternal (string name)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-                       base.Remove (name);
-               }               
-               
-               // Private Methods
-
-               string RequestHeaderToString (HttpRequestHeader value)
-               {
-                       CheckHeaderConsistency (HeaderInfo.Request);
-
-                       switch (value) {
-                       case HttpRequestHeader.CacheControl:
-                               return "Cache-Control";
-                       case HttpRequestHeader.Connection:
-                               return "Connection";
-                       case HttpRequestHeader.Date:
-                               return "Date";
-                       case HttpRequestHeader.KeepAlive:
-                               return "Keep-Alive";
-                       case HttpRequestHeader.Pragma:
-                               return "Pragma";
-                       case HttpRequestHeader.Trailer:
-                               return "Trailer";
-                       case HttpRequestHeader.TransferEncoding:
-                               return "Transfer-Encoding";
-                       case HttpRequestHeader.Upgrade:
-                               return "Upgrade";
-                       case HttpRequestHeader.Via:
-                               return "Via";
-                       case HttpRequestHeader.Warning:
-                               return "Warning";
-                       case HttpRequestHeader.Allow:
-                               return "Allow";
-                       case HttpRequestHeader.ContentLength:
-                               return "Content-Length";
-                       case HttpRequestHeader.ContentType:
-                               return "Content-Type";
-                       case HttpRequestHeader.ContentEncoding:
-                               return "Content-Encoding";
-                       case HttpRequestHeader.ContentLanguage:
-                               return "Content-Language";
-                       case HttpRequestHeader.ContentLocation:
-                               return "Content-Location";
-                       case HttpRequestHeader.ContentMd5:
-                               return "Content-MD5";
-                       case HttpRequestHeader.ContentRange:
-                               return "Content-Range";
-                       case HttpRequestHeader.Expires:
-                               return "Expires";
-                       case HttpRequestHeader.LastModified:
-                               return "Last-Modified";
-                       case HttpRequestHeader.Accept:
-                               return "Accept";
-                       case HttpRequestHeader.AcceptCharset:
-                               return "Accept-Charset";
-                       case HttpRequestHeader.AcceptEncoding:
-                               return "Accept-Encoding";
-                       case HttpRequestHeader.AcceptLanguage:
-                               return "accept-language";
-                       case HttpRequestHeader.Authorization:
-                               return "Authorization";
-                       case HttpRequestHeader.Cookie:
-                               return "Cookie";
-                       case HttpRequestHeader.Expect:
-                               return "Expect";
-                       case HttpRequestHeader.From:
-                               return "From";
-                       case HttpRequestHeader.Host:
-                               return "Host";
-                       case HttpRequestHeader.IfMatch:
-                               return "If-Match";
-                       case HttpRequestHeader.IfModifiedSince:
-                               return "If-Modified-Since";
-                       case HttpRequestHeader.IfNoneMatch:
-                               return "If-None-Match";
-                       case HttpRequestHeader.IfRange:
-                               return "If-Range";
-                       case HttpRequestHeader.IfUnmodifiedSince:
-                               return "If-Unmodified-Since";
-                       case HttpRequestHeader.MaxForwards:
-                               return "Max-Forwards";
-                       case HttpRequestHeader.ProxyAuthorization:
-                               return "Proxy-Authorization";
-                       case HttpRequestHeader.Referer:
-                               return "Referer";
-                       case HttpRequestHeader.Range:
-                               return "Range";
-                       case HttpRequestHeader.Te:
-                               return "TE";
-                       case HttpRequestHeader.Translate:
-                               return "Translate";
-                       case HttpRequestHeader.UserAgent:
-                               return "User-Agent";
-                       default:
-                               throw new InvalidOperationException ();
-                       }
-               }
-
-               string ResponseHeaderToString (HttpResponseHeader value)
-               {
-                       CheckHeaderConsistency (HeaderInfo.Response);
-
-                       switch (value) {
-                       case HttpResponseHeader.CacheControl:
-                               return "Cache-Control";
-                       case HttpResponseHeader.Connection:
-                               return "Connection";
-                       case HttpResponseHeader.Date:
-                               return "Date";
-                       case HttpResponseHeader.KeepAlive:
-                               return "Keep-Alive";
-                       case HttpResponseHeader.Pragma:
-                               return "Pragma";
-                       case HttpResponseHeader.Trailer:
-                               return "Trailer";
-                       case HttpResponseHeader.TransferEncoding:
-                               return "Transfer-Encoding";
-                       case HttpResponseHeader.Upgrade:
-                               return "Upgrade";
-                       case HttpResponseHeader.Via:
-                               return "Via";
-                       case HttpResponseHeader.Warning:
-                               return "Warning";
-                       case HttpResponseHeader.Allow:
-                               return "Allow";
-                       case HttpResponseHeader.ContentLength:
-                               return "Content-Length";
-                       case HttpResponseHeader.ContentType:
-                               return "Content-Type";
-                       case HttpResponseHeader.ContentEncoding:
-                               return "Content-Encoding";
-                       case HttpResponseHeader.ContentLanguage:
-                               return "Content-Language";
-                       case HttpResponseHeader.ContentLocation:
-                               return "Content-Location";
-                       case HttpResponseHeader.ContentMd5:
-                               return "Content-MD5";
-                       case HttpResponseHeader.ContentRange:
-                               return "Content-Range";
-                       case HttpResponseHeader.Expires:
-                               return "Expires";
-                       case HttpResponseHeader.LastModified:
-                               return "Last-Modified";
-                       case HttpResponseHeader.AcceptRanges:
-                               return "Accept-Ranges";
-                       case HttpResponseHeader.Age:
-                               return "Age";
-                       case HttpResponseHeader.ETag:
-                               return "ETag";
-                       case HttpResponseHeader.Location:
-                               return "Location";
-                       case HttpResponseHeader.ProxyAuthenticate:
-                               return "Proxy-Authenticate";
-                       case HttpResponseHeader.RetryAfter:
-                               return "Retry-After";
-                       case HttpResponseHeader.Server:
-                               return "Server";
-                       case HttpResponseHeader.SetCookie:
-                               return "Set-Cookie";
-                       case HttpResponseHeader.Vary:
-                               return "Vary";
-                       case HttpResponseHeader.WwwAuthenticate:
-                               return "WWW-Authenticate";
-                       default:
-                               throw new InvalidOperationException ();
-                       }
-               }
-
-               void CheckRestrictedHeader (string headerName)
-               {
-                       if (!headerRestriction.HasValue)
-                               return;
-
-                       HeaderInfo info;
-                       if (!headers.TryGetValue (headerName, out info))
-                               return;
-
-                       if ((info & headerRestriction.Value) != 0)
-                               throw new ArgumentException ("This header must be modified with the appropriate property.");
-               }
-
-               void CheckHeaderConsistency (HeaderInfo value)
-               {
-                       if (!headerConsistency.HasValue) {
-                               headerConsistency = value;
-                               return;
-                       }
-
-                       if ((headerConsistency & value) == 0)
-                               throw new InvalidOperationException ();
-               }
-               
-               internal static bool IsMultiValue (string headerName)
-               {
-                       if (headerName == null)
-                               return false;
-
-                       HeaderInfo info;
-                       return headers.TryGetValue (headerName, out info) && (info & HeaderInfo.MultiValue) != 0;
-               }               
-               
-               internal static bool IsHeaderValue (string value)
-               {
-                       // TEXT any 8 bit value except CTL's (0-31 and 127)
-                       //      but including \r\n space and \t
-                       //      after a newline at least one space or \t must follow
-                       //      certain header fields allow comments ()
-                               
-                       int len = value.Length;
-                       for (int i = 0; i < len; i++) {                 
-                               char c = value [i];
-                               if (c == 127)
-                                       return false;
-                               if (c < 0x20 && (c != '\r' && c != '\n' && c != '\t'))
-                                       return false;
-                               if (c == '\n' && ++i < len) {
-                                       c = value [i];
-                                       if (c != ' ' && c != '\t')
-                                               return false;
-                               }
-                       }
-                       
-                       return true;
-               }
-               
-               internal static bool IsHeaderName (string name)
-               {
-                       if (name == null || name.Length == 0)
-                               return false;
-
-                       int len = name.Length;
-                       for (int i = 0; i < len; i++) {                 
-                               char c = name [i];
-                               if (c > 126 || !allowed_chars [c])
-                                       return false;
-                       }
-                       
-                       return true;
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net/WebProxy.cs b/mcs/class/System/System.Net/WebProxy.cs
deleted file mode 100644 (file)
index 365535a..0000000
+++ /dev/null
@@ -1,252 +0,0 @@
-//
-// System.Net.WebProxy.cs
-//
-// Authors:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Globalization;
-using System.Runtime.Serialization;
-using System.Text.RegularExpressions;
-
-namespace System.Net 
-{
-       [Serializable]
-       public class WebProxy : IWebProxy, ISerializable
-       {
-               Uri address;
-               bool bypassOnLocal;
-               ArrayList bypassList;
-               ICredentials credentials;
-               bool useDefaultCredentials;
-
-               // Constructors
-
-               public WebProxy ()
-                       : this ((Uri) null, false, null, null) {}
-
-               public WebProxy (string address)
-                       : this (ToUri (address), false, null, null) {}
-
-               public WebProxy (Uri address) 
-                       : this (address, false, null, null) {}
-
-               public WebProxy (string address, bool bypassOnLocal) 
-                       : this (ToUri (address), bypassOnLocal, null, null) {}
-
-               public WebProxy (string host, int port)
-                       : this (new Uri ("http://" + host + ":" + port)) {}
-
-               public WebProxy (Uri address, bool bypassOnLocal)
-                       : this (address, bypassOnLocal, null, null) {}
-
-               public WebProxy (string address, bool bypassOnLocal, string [] bypassList)
-                       : this (ToUri (address), bypassOnLocal, bypassList, null) {}
-
-               public WebProxy (Uri address, bool bypassOnLocal, string [] bypassList)
-                       : this (address, bypassOnLocal, bypassList, null) {}
-
-               public WebProxy (string address, bool bypassOnLocal, string [] bypassList,
-                               ICredentials credentials)
-                       : this (ToUri (address), bypassOnLocal, bypassList, credentials) {}
-
-               public WebProxy (Uri address, bool bypassOnLocal, 
-                                string[] bypassList, ICredentials credentials)
-               {
-                       this.address = address;
-                       this.bypassOnLocal = bypassOnLocal;
-                       if (bypassList != null)
-                               this.bypassList = new ArrayList (bypassList);
-                       this.credentials = credentials;
-                       CheckBypassList ();
-               }
-
-               protected WebProxy (SerializationInfo serializationInfo, StreamingContext streamingContext) 
-               {
-                       this.address = (Uri) serializationInfo.GetValue ("_ProxyAddress", typeof (Uri));
-                       this.bypassOnLocal = serializationInfo.GetBoolean ("_BypassOnLocal");
-                       this.bypassList = (ArrayList) serializationInfo.GetValue ("_BypassList", typeof (ArrayList));
-                       this.useDefaultCredentials =  serializationInfo.GetBoolean ("_UseDefaultCredentials");
-                       this.credentials = null;
-                       CheckBypassList ();
-               }
-
-               // Properties
-               public Uri Address {
-                       get { return address; }
-                       set { address = value; }
-               }
-
-               public ArrayList BypassArrayList {
-                       get {
-                               if (bypassList == null)
-                                       bypassList = new ArrayList ();
-                               return bypassList;
-                       }
-               }
-
-               public string [] BypassList {
-                       get { return (string []) BypassArrayList.ToArray (typeof (string)); }
-                       set { 
-                               if (value == null)
-                                       throw new ArgumentNullException ();
-                               bypassList = new ArrayList (value); 
-                               CheckBypassList ();
-                       }
-               }
-
-               public bool BypassProxyOnLocal {
-                       get { return bypassOnLocal; }
-                       set { bypassOnLocal = value; }
-               }
-
-               public ICredentials Credentials {
-                       get { return credentials; }
-                       set { credentials = value; }
-               }
-
-               [MonoTODO ("Does not affect Credentials, since CredentialCache.DefaultCredentials is not implemented.")]
-               public bool UseDefaultCredentials {
-                       get { return useDefaultCredentials; }
-                       set { useDefaultCredentials = value; }
-               }
-
-               // Methods
-               [Obsolete ("This method has been deprecated", false)]
-               [MonoTODO("Can we get this info under windows from the system?")]
-               public static WebProxy GetDefaultProxy ()
-               {
-                       // Select gets a WebProxy from config files, if available.
-                       IWebProxy p = GlobalProxySelection.Select;
-                       if (p is WebProxy)
-                               return (WebProxy) p;
-
-                       return new WebProxy ();
-               }
-
-               public Uri GetProxy (Uri destination)
-               {
-                       if (IsBypassed (destination))
-                               return destination;
-
-                       return address;
-               }
-
-               public bool IsBypassed (Uri host)
-               {
-                       if (host == null)
-                               throw new ArgumentNullException ("host");
-
-                       if (host.IsLoopback && bypassOnLocal)
-                               return true;
-
-                       if (address == null)
-                               return true;
-
-                       string server = host.Host;
-                       if (bypassOnLocal && server.IndexOf ('.') == -1)
-                               return true;
-
-                       // LAMESPEC
-                       if (!bypassOnLocal) {
-                               if (String.Compare (server, "localhost", true, CultureInfo.InvariantCulture) == 0)
-                                       return true;
-                               if (String.Compare (server, "loopback", true, CultureInfo.InvariantCulture) == 0)
-                                       return true;
-
-                               IPAddress addr = null;
-                               if (IPAddress.TryParse (server, out addr) && IPAddress.IsLoopback (addr))
-                                       return true;
-                       }
-
-                       if (bypassList == null || bypassList.Count == 0)
-                               return false;
-
-                       try {
-                               string hostStr = host.Scheme + "://" + host.Authority;
-                               int i = 0;
-                               for (; i < bypassList.Count; i++) {
-                                       Regex regex = new Regex ((string) bypassList [i], 
-                                               // TODO: RegexOptions.Compiled |  // not implemented yet by Regex
-                                               RegexOptions.IgnoreCase |
-                                               RegexOptions.Singleline);
-
-                                       if (regex.IsMatch (hostStr))
-                                               break;
-                               }
-
-                               if (i == bypassList.Count)
-                                       return false;
-
-                               // continue checking correctness of regular expressions..
-                               // will throw expression when an invalid one is found
-                               for (; i < bypassList.Count; i++)
-                                       new Regex ((string) bypassList [i]);
-
-                               return true;
-                       } catch (ArgumentException) {
-                               return false;
-                       }
-               }
-
-               protected virtual void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       serializationInfo.AddValue ("_BypassOnLocal", bypassOnLocal);
-                       serializationInfo.AddValue ("_ProxyAddress", address);
-                       serializationInfo.AddValue ("_BypassList", bypassList);
-                       serializationInfo.AddValue ("_UseDefaultCredentials", UseDefaultCredentials);
-               }
-
-               void ISerializable.GetObjectData (SerializationInfo serializationInfo,
-                                                 StreamingContext streamingContext)
-               {
-                       GetObjectData (serializationInfo, streamingContext);
-               }
-
-               // Private Methods
-               // this compiles the regular expressions, and will throw
-               // an exception when an invalid one is found.
-               void CheckBypassList ()
-               {
-                       if (bypassList == null)
-                               return;
-                       for (int i = 0; i < bypassList.Count; i++)
-                               new Regex ((string) bypassList [i]);
-               }
-
-               static Uri ToUri (string address)
-               {
-                       if (address == null)
-                               return null;
-                               
-                       if (address.IndexOf ("://", StringComparison.Ordinal) == -1) 
-                               address = "http://" + address;
-
-                       return new Uri (address);
-               }
-       }
-}
diff --git a/mcs/class/System/System.Net/WebRequest.cs b/mcs/class/System/System.Net/WebRequest.cs
deleted file mode 100644 (file)
index 889398e..0000000
+++ /dev/null
@@ -1,548 +0,0 @@
-//
-// System.Net.WebRequest
-//
-// Authors:
-//  Lawrence Pit (loz@cable.a2000.nl)
-//     Marek Safar (marek.safar@gmail.com)
-//
-// Copyright 2011 Xamarin Inc.
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Collections.Specialized;
-using System.Configuration;
-using System.IO;
-using System.Reflection;
-using System.Runtime.Serialization;
-using System.Globalization;
-using System.Net.Configuration;
-using System.Net.Security;
-using System.Net.Cache;
-using System.Security.Principal;
-using System.Threading.Tasks;
-using System.Text.RegularExpressions;
-using Mono.Net;
-
-#if NET_2_1
-using ConfigurationException = System.ArgumentException;
-
-namespace System.Net.Configuration {
-       class Dummy {}
-}
-#endif
-
-namespace System.Net 
-{
-       [Serializable]
-       public abstract class WebRequest : MarshalByRefObject, ISerializable {
-               static HybridDictionary prefixes = new HybridDictionary ();
-               static bool isDefaultWebProxySet;
-               static IWebProxy defaultWebProxy;
-               static RequestCachePolicy defaultCachePolicy;
-
-               static WebRequest ()
-               {
-#if MOBILE
-                       IWebRequestCreate http = new HttpRequestCreator ();
-                       RegisterPrefix ("http", http);
-                       RegisterPrefix ("https", http);
-                       RegisterPrefix ("file", new FileWebRequestCreator ());
-                       RegisterPrefix ("ftp", new FtpRequestCreator ());
-#else
-       #if CONFIGURATION_DEP
-                       object cfg = ConfigurationManager.GetSection ("system.net/webRequestModules");
-                       WebRequestModulesSection s = cfg as WebRequestModulesSection;
-                       if (s != null) {
-                               foreach (WebRequestModuleElement el in
-                                        s.WebRequestModules)
-                                       AddPrefix (el.Prefix, el.Type);
-                               return;
-                       }
-       #endif
-                       ConfigurationSettings.GetConfig ("system.net/webRequestModules");
-#endif
-               }
-               
-               protected WebRequest () 
-               {
-               }
-               
-               protected WebRequest (SerializationInfo serializationInfo, StreamingContext streamingContext) 
-               {
-               }
-
-               static Exception GetMustImplement ()
-               {
-                       return new NotImplementedException ("This method must be implemented in derived classes");
-               }
-               
-               // Properties
-
-               private AuthenticationLevel authentication_level = AuthenticationLevel.MutualAuthRequested;
-               
-               public AuthenticationLevel AuthenticationLevel
-               {
-                       get {
-                               return(authentication_level);
-                       }
-                       set {
-                               authentication_level = value;
-                       }
-               }
-               
-               public virtual string ConnectionGroupName {
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual long ContentLength { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual string ContentType { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual ICredentials Credentials { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-
-               [MonoTODO ("Implement the caching system. Currently always returns a policy with the NoCacheNoStore level")]
-               public virtual RequestCachePolicy CachePolicy
-               {
-                       get { return DefaultCachePolicy; }
-                       set {
-                       }
-               }
-               
-               public static RequestCachePolicy DefaultCachePolicy {
-                       get {
-                               return defaultCachePolicy ?? (defaultCachePolicy = new HttpRequestCachePolicy (HttpRequestCacheLevel.NoCacheNoStore));
-                       }
-                       set {
-                               throw GetMustImplement ();
-                       }
-               }
-               
-               public virtual WebHeaderCollection Headers { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-
-               public virtual string Method { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual bool PreAuthenticate { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual IWebProxy Proxy { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual Uri RequestUri { 
-                       get { throw GetMustImplement (); }
-               }
-               
-               public virtual int Timeout { 
-                       get { throw GetMustImplement (); }
-                       set { throw GetMustImplement (); }
-               }
-               
-               public virtual bool UseDefaultCredentials
-               {
-                       get {
-                               throw GetMustImplement ();
-                       }
-                       set {
-                               throw GetMustImplement ();
-                       }
-               }
-
-               public TokenImpersonationLevel ImpersonationLevel { get; set; }
-
-//             volatile static IWebProxy proxy;
-               static readonly object lockobj = new object ();
-               
-               public static IWebProxy DefaultWebProxy {
-                       get {
-                               if (!isDefaultWebProxySet) {
-                                       lock (lockobj) {
-                                               if (defaultWebProxy == null)
-                                                       defaultWebProxy = GetDefaultWebProxy ();
-                                       }
-                               }
-                               return defaultWebProxy;
-                       }
-                       set {
-                               /* MS documentation states that a null value would cause an ArgumentNullException
-                                * but that's not the way it behaves:
-                                * https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=304724
-                                */
-                               defaultWebProxy = value;
-                               isDefaultWebProxySet = true;
-                       }
-               }
-
-               internal static IWebProxy InternalDefaultWebProxy {
-                       get {
-                               return DefaultWebProxy;
-                       }
-               }
-
-               
-               [MonoTODO("Needs to respect Module, Proxy.AutoDetect, and Proxy.ScriptLocation config settings")]
-               static IWebProxy GetDefaultWebProxy ()
-               {
-#if CONFIGURATION_DEP
-                       DefaultProxySection sec = ConfigurationManager.GetSection ("system.net/defaultProxy") as DefaultProxySection;
-                       WebProxy p;
-                       
-                       if (sec == null)
-                               return GetSystemWebProxy ();
-                       
-                       ProxyElement pe = sec.Proxy;
-                       
-                       if ((pe.UseSystemDefault != ProxyElement.UseSystemDefaultValues.False) && (pe.ProxyAddress == null)) {
-                               IWebProxy proxy = GetSystemWebProxy ();
-                               
-                               if (!(proxy is WebProxy))
-                                       return proxy;
-                               
-                               p = (WebProxy) proxy;
-                       } else
-                               p = new WebProxy ();
-                       
-                       if (pe.ProxyAddress != null)
-                               p.Address = pe.ProxyAddress;
-                       
-                       if (pe.BypassOnLocal != ProxyElement.BypassOnLocalValues.Unspecified)
-                               p.BypassProxyOnLocal = (pe.BypassOnLocal == ProxyElement.BypassOnLocalValues.True);
-                               
-                       foreach(BypassElement elem in sec.BypassList)
-                               p.BypassArrayList.Add(elem.Address);
-                       
-                       return p;
-#else
-                       return GetSystemWebProxy ();
-#endif
-               }
-
-               // Methods
-               
-               public virtual void Abort()
-               {
-                       throw GetMustImplement ();
-               }
-               
-               public virtual IAsyncResult BeginGetRequestStream (AsyncCallback callback, object state) 
-               {
-                       throw GetMustImplement ();
-               }
-               
-               public virtual IAsyncResult BeginGetResponse (AsyncCallback callback, object state)
-               {
-                       throw GetMustImplement ();
-               }
-
-               public static WebRequest Create (string requestUriString) 
-               {
-                       if (requestUriString == null)
-                               throw new ArgumentNullException ("requestUriString");
-                       return Create (new Uri (requestUriString));
-               }
-                               
-               public static WebRequest Create (Uri requestUri) 
-               {
-                       if (requestUri == null)
-                               throw new ArgumentNullException ("requestUri");
-                       return GetCreator (requestUri.AbsoluteUri).Create (requestUri);
-               }
-               
-               public static WebRequest CreateDefault (Uri requestUri)
-               {
-                       if (requestUri == null)
-                               throw new ArgumentNullException ("requestUri");
-                       return GetCreator (requestUri.Scheme).Create (requestUri);
-               }
-               static HttpWebRequest SharedCreateHttp (Uri uri)
-               {
-                       if (uri.Scheme != "http" && uri.Scheme != "https")
-                               throw new NotSupportedException ("The uri should start with http or https");
-
-                       return new HttpWebRequest (uri);
-               }
-
-               public static HttpWebRequest CreateHttp (string requestUriString)
-               {
-                       if (requestUriString == null)
-                               throw new ArgumentNullException ("requestUriString");
-                       return SharedCreateHttp (new Uri (requestUriString));
-               }
-                       
-               public static HttpWebRequest CreateHttp (Uri requestUri)
-               {
-                       if (requestUri == null)
-                               throw new ArgumentNullException ("requestUri");
-                       return SharedCreateHttp (requestUri);
-               }
-               public virtual Stream EndGetRequestStream (IAsyncResult asyncResult)
-               {
-                       throw GetMustImplement ();
-               }
-               
-               public virtual WebResponse EndGetResponse (IAsyncResult asyncResult)
-               {
-                       throw GetMustImplement ();
-               }
-               
-               public virtual Stream GetRequestStream()
-               {
-                       throw GetMustImplement ();
-               }
-               
-               public virtual WebResponse GetResponse()
-               {
-                       throw GetMustImplement ();
-               }
-               
-               // Takes an ArrayList of fileglob-formatted strings and returns an array of Regex-formatted strings
-               private static string[] CreateBypassList (ArrayList al)
-               {
-                       string[] result = al.ToArray (typeof (string)) as string[];
-                       for (int c = 0; c < result.Length; c++)
-                       {
-                               result [c] = "^" +
-                                       Regex.Escape (result [c]).Replace (@"\*", ".*").Replace (@"\?", ".") +
-                                       "$";
-                       }
-                       return result;
-               }
-
-               [MonoTODO("Look in other places for proxy config info")]
-               public static IWebProxy GetSystemWebProxy ()
-               {
-#if MONOTOUCH
-                       return CFNetwork.GetDefaultProxy ();
-#else
-#if MONODROID
-                       // Return the system web proxy.  This only works for ICS+.
-                       var androidProxy = AndroidPlatform.GetDefaultProxy ();
-                       if (androidProxy != null)
-                               return androidProxy;
-#endif
-#if !NET_2_1
-                       if (IsWindows ()) {
-                               int iProxyEnable = (int)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyEnable", 0);
-
-                               if (iProxyEnable > 0) {
-                                       string strHttpProxy = "";                                       
-                                       bool bBypassOnLocal = false;
-                                       ArrayList al = new ArrayList ();
-                                       
-                                       string strProxyServer = (string)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyServer", null);
-                                       string strProxyOverrride = (string)Microsoft.Win32.Registry.GetValue ("HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", "ProxyOverride", null);
-                                       
-                                       if (strProxyServer.Contains ("=")) {
-                                               foreach (string strEntry in strProxyServer.Split (new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
-                                                       if (strEntry.StartsWith ("http=")) {
-                                                               strHttpProxy = strEntry.Substring (5);
-                                                               break;
-                                                       }
-                                       } else strHttpProxy = strProxyServer;
-                                       
-                                       if (strProxyOverrride != null) {                                                
-                                               string[] bypassList = strProxyOverrride.Split (new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
-                                       
-                                               foreach (string str in bypassList) {
-                                                       if (str != "<local>")
-                                                               al.Add (str);
-                                                       else
-                                                               bBypassOnLocal = true;
-                                               }
-                                       }
-                                       
-                                       return new WebProxy (strHttpProxy, bBypassOnLocal, CreateBypassList (al));
-                               }
-                       } else {
-#endif
-                               if (Platform.IsMacOS)
-                                       return CFNetwork.GetDefaultProxy ();
-                               
-                               string address = Environment.GetEnvironmentVariable ("http_proxy");
-
-                               if (address == null)
-                                       address = Environment.GetEnvironmentVariable ("HTTP_PROXY");
-                               
-                               if (address != null) {
-                                       try {
-                                               if (!address.StartsWith ("http://"))
-                                                       address = "http://" + address;
-
-                                               Uri uri = new Uri (address);
-                                               IPAddress ip;
-                                               
-                                               if (IPAddress.TryParse (uri.Host, out ip)) {
-                                                       if (IPAddress.Any.Equals (ip)) {
-                                                               UriBuilder builder = new UriBuilder (uri);
-                                                               builder.Host = "127.0.0.1";
-                                                               uri = builder.Uri;
-                                                       } else if (IPAddress.IPv6Any.Equals (ip)) {
-                                                               UriBuilder builder = new UriBuilder (uri);
-                                                               builder.Host = "[::1]";
-                                                               uri = builder.Uri;
-                                                       }
-                                               }
-                                               
-                                               bool bBypassOnLocal = false;                                            
-                                               ArrayList al = new ArrayList ();
-                                               string bypass = Environment.GetEnvironmentVariable ("no_proxy");
-                                               
-                                               if (bypass == null)
-                                                       bypass = Environment.GetEnvironmentVariable ("NO_PROXY");
-                                               
-                                               if (bypass != null) {
-                                                       string[] bypassList = bypass.Split (new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
-                                               
-                                                       foreach (string str in bypassList) {
-                                                               if (str != "*.local")
-                                                                       al.Add (str);
-                                                               else
-                                                                       bBypassOnLocal = true;
-                                                       }
-                                               }
-                                               
-                                               return new WebProxy (uri, bBypassOnLocal, CreateBypassList (al));
-                                       } catch (UriFormatException) {
-                                       }
-                               }
-#if !NET_2_1
-                       }
-#endif
-                       
-                       return new WebProxy ();
-#endif // MONOTOUCH
-               }
-
-               void ISerializable.GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       throw new NotSupportedException ();
-               }
-
-               protected virtual void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       throw GetMustImplement ();
-               }
-
-               public static bool RegisterPrefix (string prefix, IWebRequestCreate creator)
-               {
-                       if (prefix == null)
-                               throw new ArgumentNullException ("prefix");
-                       if (creator == null)
-                               throw new ArgumentNullException ("creator");
-                       
-                       lock (prefixes.SyncRoot) {
-                               string lowerCasePrefix = prefix.ToLower (CultureInfo.InvariantCulture);
-                               if (prefixes.Contains (lowerCasePrefix))
-                                       return false;
-                               prefixes.Add (lowerCasePrefix, creator);
-                       }
-                       return true;
-               }
-               
-               private static IWebRequestCreate GetCreator (string prefix)
-               {
-                       int longestPrefix = -1;
-                       IWebRequestCreate creator = null;
-
-                       prefix = prefix.ToLower (CultureInfo.InvariantCulture);
-
-                       IDictionaryEnumerator e = prefixes.GetEnumerator ();
-                       while (e.MoveNext ()) {
-                               string key = e.Key as string;
-
-                               if (key.Length <= longestPrefix) 
-                                       continue;
-                               
-                               if (!prefix.StartsWith (key))
-                                       continue;
-                                       
-                               longestPrefix = key.Length;
-                               creator = (IWebRequestCreate) e.Value;
-                       }
-                       
-                       if (creator == null) 
-                               throw new NotSupportedException (prefix);
-                               
-                       return creator;
-               }
-               
-               internal static bool IsWindows ()
-               {
-                       return (int) Environment.OSVersion.Platform < 4;
-               }
-
-               internal static void ClearPrefixes ()
-               {
-                       prefixes.Clear ();
-               }
-
-               internal static void RemovePrefix (string prefix)
-               {
-                       prefixes.Remove (prefix);
-               }
-
-               internal static void AddPrefix (string prefix, string typeName)
-               {
-                       Type type = Type.GetType (typeName);
-                       if (type == null)
-                               throw new ConfigurationException (String.Format ("Type {0} not found", typeName));
-                       AddPrefix (prefix, type);
-               }
-
-               internal static void AddPrefix (string prefix, Type type)
-               {
-                       object o = Activator.CreateInstance (type, true);
-                       prefixes [prefix] = o;
-               }
-
-               public virtual Task<Stream> GetRequestStreamAsync ()
-               {
-                       return Task<Stream>.Factory.FromAsync (BeginGetRequestStream, EndGetRequestStream, null);
-               }
-
-               public virtual Task<WebResponse> GetResponseAsync ()
-               {
-                       return Task<WebResponse>.Factory.FromAsync (BeginGetResponse, EndGetResponse, null);
-               }
-
-       }
-}
diff --git a/mcs/class/System/System.Net/WebRequestMethods.cs b/mcs/class/System/System.Net/WebRequestMethods.cs
deleted file mode 100644 (file)
index 1e7a7ac..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-// System.Net.WebRequestMethods.cs
-//
-// Author:
-//     Carlos Alberto Cortez (calberto.oortez@gmail.com)
-//
-// (c) Copyright 2005 Novell, Inc. (http://www.ximian.com)
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Net 
-{
-       public static class WebRequestMethods
-       {
-               public static class File
-               {
-                       public const string DownloadFile = "GET";
-                       public const string UploadFile = "PUT";
-               }
-
-               public static class Ftp
-               {
-                       public const string AppendFile = "APPE";
-                       public const string DeleteFile = "DELE";
-                       public const string DownloadFile = "RETR";
-                       public const string GetFileSize = "SIZE";
-                       public const string GetDateTimestamp = "MDTM";
-                       public const string ListDirectory = "NLST";
-                       public const string ListDirectoryDetails = "LIST";
-                       public const string MakeDirectory = "MKD";
-                       public const string PrintWorkingDirectory = "PWD";
-                       public const string RemoveDirectory = "RMD";
-                       public const string Rename = "RENAME";
-                       public const string UploadFile = "STOR";
-                       public const string UploadFileWithUniqueName = "STOU";
-               }
-
-               public static class Http
-               {
-                       public const string Connect = "CONNECT";
-                       public const string Get = "GET";
-                       public const string Head = "HEAD";
-                       public const string MkCol = "MKCOL";
-                       public const string Post = "POST";
-                       public const string Put = "PUT";
-               }
-       }
-}
-
-
diff --git a/mcs/class/System/System.Net/WebResponse.cs b/mcs/class/System/System.Net/WebResponse.cs
deleted file mode 100644 (file)
index f59b24f..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-//\r
-// System.Net.WebResponse\r
-//\r
-// Author:\r
-//   Lawrence Pit (loz@cable.a2000.nl)\r
-//\r
-\r
-//\r
-// Permission is hereby granted, free of charge, to any person obtaining\r
-// a copy of this software and associated documentation files (the\r
-// "Software"), to deal in the Software without restriction, including\r
-// without limitation the rights to use, copy, modify, merge, publish,\r
-// distribute, sublicense, and/or sell copies of the Software, and to\r
-// permit persons to whom the Software is furnished to do so, subject to\r
-// the following conditions:\r
-// \r
-// The above copyright notice and this permission notice shall be\r
-// included in all copies or substantial portions of the Software.\r
-// \r
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
-//\r
-\r
-using System;\r
-using System.IO;\r
-using System.Runtime.Serialization;\r
-\r
-namespace System.Net \r
-{\r
-       [Serializable]\r
-       public abstract class WebResponse : MarshalByRefObject, ISerializable, IDisposable {\r
-               // Constructors\r
-               \r
-               protected WebResponse () { }\r
-               \r
-               protected WebResponse (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       throw new NotSupportedException ();\r
-               }\r
-               \r
-               // Properties\r
-               \r
-               public virtual long ContentLength {             \r
-                       get { throw new NotSupportedException (); }\r
-                       set { throw new NotSupportedException (); }\r
-               }\r
-               \r
-               public virtual string ContentType {             \r
-                       get { throw new NotSupportedException (); }\r
-                       set { throw new NotSupportedException (); }\r
-               }\r
-               \r
-               public virtual WebHeaderCollection Headers {            \r
-                       get { throw new NotSupportedException (); }\r
-               }\r
-\r
-               static Exception GetMustImplement ()\r
-               {\r
-                       return new NotImplementedException ();\r
-               }\r
-               \r
-               [MonoTODO]\r
-               public virtual bool IsFromCache\r
-               {\r
-                       get {\r
-                               return false;\r
-                               // Better to return false than to kill the application\r
-                               // throw GetMustImplement ();\r
-                       }\r
-               }\r
-               \r
-               [MonoTODO]\r
-               public virtual bool IsMutuallyAuthenticated\r
-               {\r
-                       get {\r
-                               throw GetMustImplement ();\r
-                       }\r
-               }\r
-               \r
-               public virtual Uri ResponseUri {                \r
-                       get { throw new NotSupportedException (); }\r
-               }               \r
-\r
-               public virtual bool SupportsHeaders {\r
-                       get {\r
-                               // The managed stack always returns this as true, it is only\r
-                               // the Silverlight stack that does not support this.\r
-                               return true;\r
-                       }\r
-               }\r
-               // Methods\r
-               \r
-               public virtual void Close()\r
-               {\r
-                       throw new NotSupportedException ();\r
-               }\r
-               \r
-               public virtual Stream GetResponseStream()\r
-               {\r
-                       throw new NotSupportedException ();\r
-               }\r
-               public void Dispose ()\r
-               {\r
-                       Dispose (true);\r
-               }\r
-               \r
-               protected virtual void Dispose (bool disposing)\r
-               {\r
-                       if (disposing)\r
-                               Close ();\r
-               }\r
-\r
-               void ISerializable.GetObjectData\r
-                       (SerializationInfo serializationInfo,\r
-                                                 StreamingContext streamingContext)\r
-               {\r
-                       throw new NotSupportedException ();\r
-               }\r
-\r
-               [MonoTODO]\r
-               protected virtual void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)\r
-               {\r
-                       throw GetMustImplement ();\r
-               }\r
-       }\r
-}\r
index f0bdac661cb472752a9ae1a88bb026de0a897cfe..ac6db80037dfe506d1b2da49ad07c8196424eb33 100644 (file)
@@ -133,7 +133,7 @@ namespace System.Security.AccessControl
                        SetAuditRule((AuditRule)rule);
                }
                
-               internal new void PersistModifications (SafeHandle handle)
+               internal new void Persist (SafeHandle handle)
                {
                        WriteLock();
                        try {
index 695f5e822209a0964b0c604cdca50c421e48c52c..98f5dfc4ab5ff882f16b55cab3d03f937dde8611 100644 (file)
@@ -147,7 +147,8 @@ namespace System.Security.Cryptography.X509Certificates {
 
                                certArray = FromIntPtrs (secCerts);
 
-                               host = CFStringCreateWithCharacters (IntPtr.Zero, hostName, (IntPtr) hostName.Length);
+                               if (!string.IsNullOrEmpty (hostName))
+                                       host = CFStringCreateWithCharacters (IntPtr.Zero, hostName, (IntPtr) hostName.Length);
                                sslsecpolicy = SecPolicyCreateSSL (true, host);
 
                                int code = SecTrustCreateWithCertificates (certArray, sslsecpolicy, out sectrust);
index 86d4aee925e6a09ee74f5a4313a7e0e8d277a5c8..1dc234575b86a3cb6806c7b471f8d0ba8ec9f694 100644 (file)
@@ -35,7 +35,8 @@ namespace System.Security.Cryptography.X509Certificates {
 
                private OidCollection apps;
                private OidCollection cert;
-               private X509Certificate2Collection store;
+               private X509CertificateCollection store;
+               private X509Certificate2Collection store2;
                private X509RevocationFlag rflag;
                private X509RevocationMode mode;
                private TimeSpan timeout;
@@ -49,6 +50,24 @@ namespace System.Security.Cryptography.X509Certificates {
                        Reset ();
                }
 
+               /*
+                * Lazy-init ExtraStore from X509CertificateCollection.
+                * This is called from Mono.Net.Security.SystemCertificateValidator.CreateX509Chain.
+                *
+                * AppleTLS supports a lazily-initialized X509Certificate, but not X509Certificate2 so
+                * we need to fall-back to using Mono.Security.X509 whenever we need an X509Certificate2.
+                * To avoid unnecessary fallbacks, the private Mono.Net.Security APIs use X509Certificate
+                * instead of X509Certificate2.
+                *
+                * Since 'ExtraStore' returns X509Certificate2Collection, we need to convert these to
+                * X509Certificate2.
+                */
+               internal X509ChainPolicy (X509CertificateCollection store)
+               {
+                       this.store = store;
+                       Reset ();
+               }
+
                // properties
 
                public OidCollection ApplicationPolicy {
@@ -60,7 +79,18 @@ namespace System.Security.Cryptography.X509Certificates {
                }
 
                public X509Certificate2Collection ExtraStore {
-                       get { return store; }
+                       get {
+                               if (store2 != null)
+                                       return store2;
+
+                               store2 = new X509Certificate2Collection ();
+                               if (store != null) {
+                                       foreach (var cert in store) {
+                                               store2.Add (new X509Certificate2 (cert));
+                                       }
+                               }
+                               return store2;
+                       }
                }
 
                public X509RevocationFlag RevocationFlag {
@@ -106,7 +136,7 @@ namespace System.Security.Cryptography.X509Certificates {
                {
                        apps = new OidCollection ();
                        cert = new OidCollection ();
-                       store = new X509Certificate2Collection ();
+                       store2 = null;
                        rflag = X509RevocationFlag.ExcludeRoot;
                        mode = X509RevocationMode.Online;
                        timeout = TimeSpan.Zero;
index 92007a397d4fd040e8a65f134b55a5a4bbd91662..681b8ff8be857fd4d4e7a37490b7fd8a0c90c2c4 100644 (file)
@@ -70,7 +70,10 @@ namespace System.Security.Cryptography.X509Certificates {
 
                        _oid = new Oid (oid, friendlyName);
                        base.Critical = critical;
-                       _enhKeyUsage = enhancedKeyUsages.ReadOnlyCopy ();
+                       _enhKeyUsage = new OidCollection();
+                       foreach (Oid o in enhancedKeyUsages) {
+                               _enhKeyUsage.Add(o);
+                       }
                        RawData = Encode ();
                }
 
@@ -81,10 +84,14 @@ namespace System.Security.Cryptography.X509Certificates {
                                switch (_status) {
                                case AsnDecodeStatus.Ok:
                                case AsnDecodeStatus.InformationNotAvailable:
-                                       if (_enhKeyUsage == null)
-                                               _enhKeyUsage = new OidCollection ();
-                                       _enhKeyUsage.ReadOnly = true;
-                                       return _enhKeyUsage;
+
+                                       OidCollection oids = new OidCollection();
+                                       if (_enhKeyUsage != null) {
+                                               foreach(Oid o in _enhKeyUsage) {
+                                                       oids.Add(o);
+                                               }
+                                       }
+                                       return oids;
                                default:
                                        throw new CryptographicException ("Badly encoded extension.");
                                }
@@ -143,8 +150,8 @@ namespace System.Security.Cryptography.X509Certificates {
                internal byte[] Encode ()
                {
                        ASN1 ex = new ASN1 (0x30);
-                       foreach (Oid oid in _enhKeyUsage) {
-                               ex.Add (ASN1Convert.FromOid (oid.Value));
+                       foreach (Oid o in _enhKeyUsage) {
+                               ex.Add (ASN1Convert.FromOid (o.Value));
                        }
                        return ex.GetBytes ();
                }
index 99860521102f983a62be9679c90bfa724b77610c..f6b45dd5e7ccd06af2833941fe3a4ce78bbe3771 100644 (file)
@@ -157,9 +157,9 @@ namespace System.Security.Cryptography {
                                return SubjectKeyIdentifierExtension (multiLine);
                        // other known objects (i.e. supported structure) - 
                        // but without any corresponding framework class
-                       case Oid.oidSubjectAltName:
+                       case "2.5.29.17": // oidSubjectAltName:
                                return SubjectAltName (multiLine);
-                       case Oid.oidNetscapeCertType:
+                       case "2.16.840.1.113730.1.1": // oidNetscapeCertType
                                return NetscapeCertType (multiLine);
                        default:
                                return Default (multiLine);
diff --git a/mcs/class/System/System.Security.Cryptography/Oid.cs b/mcs/class/System/System.Security.Cryptography/Oid.cs
deleted file mode 100644 (file)
index 7a1e785..0000000
+++ /dev/null
@@ -1,213 +0,0 @@
-//
-// Oid.cs - System.Security.Cryptography.Oid
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2005 Novell Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if SECURITY_DEP
-
-using System.Security.Cryptography.X509Certificates;
-
-namespace System.Security.Cryptography {
-
-       public sealed class Oid {
-
-               private string _value;
-               private string _name;
-
-               // constructors
-
-               public Oid ()
-               {
-               }
-
-               public Oid (string oid) 
-               {
-                       if (oid == null)
-                               throw new ArgumentNullException ("oid");
-
-                       _value = oid;
-                       _name = GetName (oid);
-               }
-
-               public Oid (string value, string friendlyName)
-               {
-                       _value = value;
-                       _name = friendlyName;
-               }
-
-               public Oid (Oid oid) 
-               {
-                       if (oid == null)
-                               throw new ArgumentNullException ("oid");
-
-                       _value = oid.Value;
-                       _name = oid.FriendlyName;
-               }
-
-               // properties
-
-               public string FriendlyName {
-                       get { return _name; }
-                       set { 
-                               _name = value;
-                               _value = GetValue (_name);
-                       }
-               }
-
-               public string Value { 
-                       get { return _value; }
-                       set { 
-                               _value = value; 
-                               _name = GetName (_value);
-                       }
-               }
-
-               // internal stuff
-
-               // Known OID/Names not defined anywhere else (by OID order)
-               internal const string oidRSA = "1.2.840.113549.1.1.1";
-               internal const string nameRSA = "RSA";
-               internal const string oidPkcs7Data = "1.2.840.113549.1.7.1";
-               internal const string namePkcs7Data = "PKCS 7 Data";
-               internal const string oidPkcs9ContentType = "1.2.840.113549.1.9.3";
-               internal const string namePkcs9ContentType = "Content Type";
-               internal const string oidPkcs9MessageDigest = "1.2.840.113549.1.9.4";
-               internal const string namePkcs9MessageDigest = "Message Digest";
-               internal const string oidPkcs9SigningTime = "1.2.840.113549.1.9.5";
-               internal const string namePkcs9SigningTime = "Signing Time";
-               internal const string oidMd5 = "1.2.840.113549.2.5";
-               internal const string nameMd5 = "md5";
-               internal const string oid3Des = "1.2.840.113549.3.7";
-               internal const string name3Des = "3des";
-               internal const string oidSha1 = "1.3.14.3.2.26";
-               internal const string nameSha1 = "sha1";
-               internal const string oidSubjectAltName = "2.5.29.17";
-               internal const string nameSubjectAltName = "Subject Alternative Name";
-               internal const string oidAes128 = "2.16.840.1.101.3.4.1.2";
-               internal const string nameAes128 = "aes128";
-               internal const string oidAes256 = "2.16.840.1.101.3.4.1.42";
-               internal const string nameAes256 = "aes256";
-               internal const string oidSha256 = "2.16.840.1.101.3.4.2.1";
-               internal const string nameSha256 = "sha256";
-               internal const string oidSha512 = "2.16.840.1.101.3.4.2.3";
-               internal const string nameSha512 = "sha512";
-               internal const string oidNetscapeCertType = "2.16.840.1.113730.1.1";
-               internal const string nameNetscapeCertType = "Netscape Cert Type";
-
-               // TODO - find the complete list
-               private string GetName (string oid) 
-               {
-                       switch (oid) {
-                               case oidRSA:
-                                       return nameRSA;
-                               case oidPkcs7Data:
-                                       return namePkcs7Data;
-                               case oidPkcs9ContentType:
-                                       return namePkcs9ContentType;
-                               case oidPkcs9MessageDigest:
-                                       return namePkcs9MessageDigest;
-                               case oidPkcs9SigningTime:
-                                       return namePkcs9SigningTime;
-                               case oid3Des:
-                                       return name3Des;
-                               case X509BasicConstraintsExtension.oid:
-                                       return X509BasicConstraintsExtension.friendlyName;
-                               case X509KeyUsageExtension.oid:
-                                       return X509KeyUsageExtension.friendlyName;
-                               case X509EnhancedKeyUsageExtension.oid:
-                                       return X509EnhancedKeyUsageExtension.friendlyName;
-                               case X509SubjectKeyIdentifierExtension.oid:
-                                       return X509SubjectKeyIdentifierExtension.friendlyName;
-                               case oidSubjectAltName:
-                                       return nameSubjectAltName;
-                               case oidNetscapeCertType:
-                                       return nameNetscapeCertType;
-                               case oidMd5:
-                                       return nameMd5;
-                               case oidAes128:
-                                       return nameAes128;
-                               case oidAes256:
-                                       return nameAes256;
-                               case oidSha1:
-                                       return nameSha1;
-                               case oidSha256:
-                                       return nameSha256;
-                               case oidSha512:
-                                       return nameSha512;
-                               default:
-                                       return _name;
-                       }
-               }
-
-               // TODO - find the complete list
-               private string GetValue (string name) 
-               {
-                       switch (name) {
-                               case nameRSA:
-                                       return oidRSA;
-                               case namePkcs7Data:
-                                       return oidPkcs7Data;
-                               case namePkcs9ContentType:
-                                       return oidPkcs9ContentType;
-                               case namePkcs9MessageDigest:
-                                       return oidPkcs9MessageDigest;
-                               case namePkcs9SigningTime:
-                                       return oidPkcs9SigningTime;
-                               case name3Des:
-                                       return oid3Des;
-                               case X509BasicConstraintsExtension.friendlyName:
-                                       return X509BasicConstraintsExtension.oid;
-                               case X509KeyUsageExtension.friendlyName:
-                                       return X509KeyUsageExtension.oid;
-                               case X509EnhancedKeyUsageExtension.friendlyName:
-                                       return X509EnhancedKeyUsageExtension.oid;
-                               case X509SubjectKeyIdentifierExtension.friendlyName:
-                                       return X509SubjectKeyIdentifierExtension.oid;
-                               case nameSubjectAltName:
-                                       return oidSubjectAltName;
-                               case nameNetscapeCertType:
-                                       return oidNetscapeCertType;
-                               case nameMd5:
-                                       return oidMd5;
-                               case nameAes128:
-                                       return oidAes128;
-                               case nameAes256:
-                                       return oidAes256;
-                               case nameSha1:
-                                       return oidSha1;
-                               case nameSha256:
-                                       return oidSha256;
-                               case nameSha512:
-                                       return oidSha512;
-                               default:
-                                       return _value;
-                       }
-               }
-       }
-}
-
-#endif
diff --git a/mcs/class/System/System.Security.Cryptography/OidCollection.cs b/mcs/class/System/System.Security.Cryptography/OidCollection.cs
deleted file mode 100644 (file)
index 094582f..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-//
-// OidCollection.cs - System.Security.Cryptography.OidCollection
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2005 Novell Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if SECURITY_DEP
-
-using System.Collections;
-
-namespace System.Security.Cryptography {
-
-       public sealed class OidCollection : ICollection, IEnumerable {
-
-               private ArrayList _list;
-               private bool _readOnly;
-
-               // constructors
-
-               public OidCollection ()
-               {
-                       _list = new ArrayList ();
-               }
-
-               // properties
-
-               public int Count {
-                       get { return _list.Count; }
-               }
-
-               public bool IsSynchronized {
-                       get { return _list.IsSynchronized; }
-               }
-
-               public Oid this [int index] {
-                       get { return (Oid) _list [index]; }
-               }
-
-               public Oid this [string oid] {
-                       get { 
-                               foreach (Oid o in _list) {
-                                       if (o.Value == oid)
-                                               return o;
-                               }
-                               return null; 
-                       }
-               }
-
-               public object SyncRoot {
-                       get { return _list.SyncRoot; }
-               }
-
-               // methods
-
-               public int Add (Oid oid)
-               {
-                       return (_readOnly ? 0 : _list.Add (oid));
-               }
-
-               public void CopyTo (Oid[] array, int index)
-               {
-                       _list.CopyTo ((Array)array, index);
-               }
-
-               // to satisfy ICollection - private
-               void ICollection.CopyTo (Array array, int index)
-               {
-                       _list.CopyTo (array, index);
-               }
-
-               public OidEnumerator GetEnumerator () 
-               {
-                       return new OidEnumerator (this);
-               }
-
-               // to satisfy IEnumerator - private
-               IEnumerator IEnumerable.GetEnumerator () 
-               {
-                       return new OidEnumerator (this);
-               }
-
-               // internal stuff
-
-               internal bool ReadOnly {
-                       get { return _readOnly; }
-                       set { _readOnly = value; }
-               }
-
-               internal OidCollection ReadOnlyCopy ()
-               {
-                       OidCollection copy = new OidCollection ();
-                       foreach (Oid oid in _list) {
-                               copy.Add (oid);
-                       }
-                       copy._readOnly = true;
-                       return copy;
-               }
-       }
-}
-
-#endif
diff --git a/mcs/class/System/System.Security.Cryptography/OidEnumerator.cs b/mcs/class/System/System.Security.Cryptography/OidEnumerator.cs
deleted file mode 100644 (file)
index cfd4214..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-//
-// OidEnumerator.cs - System.Security.Cryptography.OidEnumerator
-//
-// Author:
-//     Sebastien Pouliot (spouliot@motus.com)
-//
-// (C) 2003 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2005 Novell Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if SECURITY_DEP
-
-using System.Collections;
-
-namespace System.Security.Cryptography {
-
-       // Note: Match the definition of framework version 1.2.3400.0 on http://longhorn.msdn.microsoft.com
-
-       public sealed class OidEnumerator : IEnumerator {
-
-               private OidCollection _collection;
-               private int _position;
-
-               // note: couldn't reuse the IEnumerator from ArrayList because 
-               // it doesn't throw the same exceptions
-               internal OidEnumerator (OidCollection collection) 
-               {
-                       _collection = collection;
-                       _position = -1;
-               }
-
-               // properties
-
-               public Oid Current {
-                       get {
-                               if (_position < 0)
-                                       throw new ArgumentOutOfRangeException ();
-                               return (Oid) _collection [_position];
-                       }
-               }
-
-               object IEnumerator.Current {
-                       get {
-                               if (_position < 0)
-                                       throw new ArgumentOutOfRangeException ();
-                               return _collection [_position];
-                       }
-               }
-
-               // methods
-
-               public bool MoveNext () 
-               {
-                       if (++_position < _collection.Count)
-                               return true;
-                       else {
-                               // strangely we must always be able to return the last entry 
-                               _position = _collection.Count - 1;
-                               return false;
-                       }
-               }
-
-               public void Reset () 
-               {
-                       _position = -1;
-               }
-       }
-}
-
-#endif
diff --git a/mcs/class/System/System.Security.Cryptography/OidGroup.cs b/mcs/class/System/System.Security.Cryptography/OidGroup.cs
deleted file mode 100644 (file)
index 55045d9..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-//
-// OidGroup.cs:
-//
-// Authors:
-//     Marek Safar  <marek.safar@gmail.com>
-//
-// Copyright (C) 2015 Xamarin Inc (http://www.xamarin.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Security.Cryptography
-{
-       public enum OidGroup {
-               All                     = 0,
-               HashAlgorithm           = 1,
-               EncryptionAlgorithm     = 2,
-               PublicKeyAlgorithm      = 3,
-               SignatureAlgorithm      = 4,
-               Attribute               = 5,
-               ExtensionOrAttribute    = 6,
-               EnhancedKeyUsage        = 7,
-               Policy                  = 8,
-               Template                = 9,
-               KeyDerivationFunction   = 10
-       }
-}
diff --git a/mcs/class/System/System.Threading/Semaphore.cs b/mcs/class/System/System.Threading/Semaphore.cs
deleted file mode 100644 (file)
index 2324fb9..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-//
-// System.Threading.Semaphore.cs
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Runtime.ConstrainedExecution;
-using System.Runtime.InteropServices;
-using System.Security.AccessControl;
-using System.Security.Permissions;
-using System.Runtime.CompilerServices;
-using System.IO;
-
-namespace System.Threading {
-
-       [ComVisible (false)]
-       public sealed class Semaphore : WaitHandle {
-
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private static extern IntPtr CreateSemaphore_internal (
-                       int initialCount, int maximumCount, string name,
-                       out bool createdNew);
-
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private static extern int ReleaseSemaphore_internal (
-                       IntPtr handle, int releaseCount, out bool fail);
-
-               [MethodImplAttribute (MethodImplOptions.InternalCall)]
-               private static extern IntPtr OpenSemaphore_internal (string name, SemaphoreRights rights, out MonoIOError error);
-               
-               private Semaphore (IntPtr handle)
-               {
-                       Handle = handle;
-               }
-               
-               public Semaphore (int initialCount, int maximumCount)
-                       : this (initialCount, maximumCount, null)
-               {
-               }
-
-               public Semaphore (int initialCount, int maximumCount, string name)
-               {
-                       if (initialCount < 0)
-                               throw new ArgumentOutOfRangeException ("initialCount", "< 0");
-                       if (maximumCount < 1)
-                               throw new ArgumentOutOfRangeException ("maximumCount", "< 1");
-                       if (initialCount > maximumCount)
-                               throw new ArgumentException ("initialCount > maximumCount");
-
-                       bool created;
-                       
-                       Handle = CreateSemaphore_internal (initialCount,
-                                                          maximumCount, name,
-                                                          out created);
-               }
-
-               public Semaphore (int initialCount, int maximumCount, string name, out bool createdNew)
-                       : this (initialCount, maximumCount, name, out createdNew, null)
-               {
-               }
-
-               [MonoTODO ("CreateSemaphore_internal does not support access control, semaphoreSecurity is ignored")]
-               public Semaphore (int initialCount, int maximumCount, string name, out bool createdNew, 
-                       SemaphoreSecurity semaphoreSecurity)
-               {
-                       if (initialCount < 0)
-                               throw new ArgumentOutOfRangeException ("initialCount", "< 0");
-                       if (maximumCount < 1)
-                               throw new ArgumentOutOfRangeException ("maximumCount", "< 1");
-                       if (initialCount > maximumCount)
-                               throw new ArgumentException ("initialCount > maximumCount");
-
-                       Handle = CreateSemaphore_internal (initialCount,
-                                                          maximumCount, name,
-                                                          out createdNew);
-               }
-
-               public SemaphoreSecurity GetAccessControl ()
-               {
-                       return new SemaphoreSecurity (SafeWaitHandle,
-                                                     AccessControlSections.Owner |
-                                                     AccessControlSections.Group |
-                                                     AccessControlSections.Access);
-               }
-
-               [PrePrepareMethod]
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               public int Release ()
-               {
-                       return (Release (1));
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               public int Release (int releaseCount)
-               {
-                       if (releaseCount < 1)
-                               throw new ArgumentOutOfRangeException ("releaseCount");
-
-                       int ret;
-                       bool fail;
-                       
-                       ret = ReleaseSemaphore_internal (Handle, releaseCount,
-                                                        out fail);
-
-                       if (fail) {
-                               throw new SemaphoreFullException ();
-                       }
-
-                       return (ret);
-               }
-
-               public void SetAccessControl (SemaphoreSecurity semaphoreSecurity)
-               {
-                       if (semaphoreSecurity == null)
-                               throw new ArgumentNullException ("semaphoreSecurity");
-                               
-                       semaphoreSecurity.PersistModifications (SafeWaitHandle);
-               }
-
-               // static methods
-
-#if !MOBILE
-               public static Semaphore OpenExisting (string name)
-               {
-                       return OpenExisting (name, SemaphoreRights.Synchronize | SemaphoreRights.Modify);
-               }
-
-               public static Semaphore OpenExisting (string name, SemaphoreRights rights)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-                       if ((name.Length ==0) || (name.Length > 260))
-                               throw new ArgumentException ("name", Locale.GetText ("Invalid length [1-260]."));
-
-                       MonoIOError error;
-                       IntPtr handle = OpenSemaphore_internal (name, rights,
-                                                               out error);
-                       if (handle == (IntPtr)null) {
-                               if (error == MonoIOError.ERROR_FILE_NOT_FOUND) {
-                                       throw new WaitHandleCannotBeOpenedException (Locale.GetText ("Named Semaphore handle does not exist: ") + name);
-                               } else if (error == MonoIOError.ERROR_ACCESS_DENIED) {
-                                       throw new UnauthorizedAccessException ();
-                               } else {
-                                       throw new IOException (Locale.GetText ("Win32 IO error: ") + error.ToString ());
-                               }
-                       }
-                       
-                       return(new Semaphore (handle));
-               }
-
-               [SecurityPermissionAttribute (SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.UnmanagedCode)]
-               public static bool TryOpenExisting (string name, out Semaphore result)
-               {
-                       return TryOpenExisting (name, SemaphoreRights.Synchronize | SemaphoreRights.Modify, out result);
-               }
-
-               [SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.UnmanagedCode)]
-               public static bool TryOpenExisting (string name, SemaphoreRights rights, out Semaphore result)
-               {
-                       if (name == null)
-                               throw new ArgumentNullException ("name");
-                       if ((name.Length == 0) || (name.Length > 260))
-                               throw new ArgumentException ("name", Locale.GetText ("Invalid length [1-260]."));
-                       
-                       MonoIOError error;
-                       IntPtr handle = OpenSemaphore_internal (name, rights, out error);
-
-                       if (handle == (IntPtr)null) {
-                               result = null;
-                               return false;
-                       }
-
-                       result = new Semaphore (handle);
-                       return true;
-               }
-#else
-               public static Semaphore OpenExisting (string name)
-               {
-                       throw new NotSupportedException ();
-               }
-
-               public static Semaphore OpenExisting (string name, SemaphoreRights rights)
-               {
-                       throw new NotSupportedException ();
-               }
-
-               public static bool TryOpenExisting (string name, out Semaphore result)
-               {
-                       throw new NotSupportedException ();
-               }
-
-               public static bool TryOpenExisting (string name, SemaphoreRights rights, out Semaphore result)
-               {
-                       throw new NotSupportedException ();
-               }
-#endif
-       }
-}
-
index 68a9f89f88fabf5390bd19560ceafde970cd6e8a..4ff3508c5c29ba9310c481ada3d4f8459b2b1f06 100644 (file)
@@ -99,7 +99,6 @@ System.Configuration/SpecialSettingAttribute.cs
 System.Configuration/UriSection.cs
 System.Configuration/UserSettingsGroup.cs
 System.Configuration/UserScopedSettingAttribute.cs
-System/DefaultUriParser.cs
 System.Diagnostics/AlphabeticalEnumConverter.cs
 System.Diagnostics/CounterCreationDataCollection.cs
 System.Diagnostics/CounterCreationData.cs
@@ -162,12 +161,6 @@ System.Diagnostics/TraceImpl.cs
 System.Diagnostics/TraceSourceInfo.cs
 System.Diagnostics/Win32EventLog.cs
 System.Diagnostics.CodeAnalysis/ExcludeFromCodeCoverageAttribute.cs
-System/FileStyleUriParser.cs
-System/FtpStyleUriParser.cs
-System/GenericUriParser.cs
-System/GenericUriParserOptions.cs
-System/GopherStyleUriParser.cs
-System/HttpStyleUriParser.cs
 System/Platform.cs
 System.IO.Compression/CompressionLevel.cs
 System.IO.Compression/CompressionMode.cs
@@ -209,7 +202,6 @@ System.IO/SearchPattern.cs
 System.IO/WaitForChangedResult.cs
 System.IO/WatcherChangeTypes.cs
 System.IO/WindowsWatcher.cs
-System/LdapStyleUriParser.cs
 System.Media/AudioData.cs
 System.Media/AudioDevice.cs
 System.Media/SoundPlayer.cs
@@ -217,9 +209,6 @@ System.Media/SystemSound.cs
 System.Media/SystemSounds.cs
 System.Media/Win32SoundPlayer.cs
 System.Net/AuthenticationManager.cs
-System.Net/AuthenticationSchemes.cs
-System.Net/AuthenticationSchemeSelector.cs
-System.Net/Authorization.cs
 System.Net/BasicClient.cs
 System.Net/BindIPEndPoint.cs
 System.Net/ChunkedInputStream.cs
@@ -258,60 +247,37 @@ System.Net.Configuration/WebRequestModuleElementCollection.cs
 System.Net.Configuration/WebRequestModuleElement.cs
 System.Net.Configuration/WebRequestModuleHandler.cs
 System.Net.Configuration/WebRequestModulesSection.cs
-System.Net/ConnectionModes.cs
-System.Net/CredentialCache.cs
 System.Net/DecompressionMethods.cs
 System.Net/DefaultCertificatePolicy.cs
 System.Net/DigestClient.cs
 System.Net/Dns.cs
-System.Net/DnsEndPoint.cs
 System.Net/DnsPermissionAttribute.cs
 System.Net/DnsPermission.cs
-System.Net/EndPoint.cs
 System.Net/EndPointListener.cs
 System.Net/EndPointManager.cs
 System.Net/EndpointPermission.cs
-System.Net/FileWebRequestCreator.cs
-System.Net/FileWebRequest.cs
-System.Net/FileWebResponse.cs
 System.Net/FtpAsyncResult.cs
 System.Net/FtpDataStream.cs
 System.Net/FtpRequestCreator.cs
-System.Net/FtpStatusCode.cs
 System.Net/FtpWebRequest.cs
 System.Net/FtpStatus.cs
 System.Net/FtpWebResponse.cs
-System.Net/GlobalProxySelection.cs
 System.Net/HttpConnection.cs
 System.Net/HttpListenerBasicIdentity.cs
 System.Net/HttpListenerContext.cs
 System.Net/HttpListener.cs
-System.Net/HttpListenerException.cs
 System.Net/HttpListenerPrefixCollection.cs
 System.Net/HttpListenerRequest.cs
 System.Net/HttpListenerResponse.cs
 System.Net/HttpListenerTimeoutManager.cs
 System.Net/HttpRequestCreator.cs
-System.Net/HttpRequestHeader.cs
-System.Net/HttpResponseHeader.cs
-System.Net/HttpStatusCode.cs
 System.Net/HttpStreamAsyncResult.cs
-System.Net/HttpVersion.cs
 System.Net/HttpWebRequest.cs
 System.Net/HttpWebResponse.cs
-System.Net/IAuthenticationModule.cs
-System.Net/ICertificatePolicy.cs
-System.Net/ICredentialLookup.cs
 System.Net/ICredentialPolicy.cs
-System.Net/ICredentialsByHost.cs
-System.Net/IPAddress.cs
-System.Net/IPEndPoint.cs
-System.Net/IPHostEntry.cs
 System.Net/IPv6Address.cs
-System.Net/IWebProxy.cs
 System.Net/IWebProxyScript.cs
 System.Net/IWebConnectionState.cs
-System.Net/IWebRequestCreate.cs
 System.Net/ListenerAsyncResult.cs
 System.Net/ListenerPrefix.cs
 System.Net.Mail/AlternateViewCollection.cs
@@ -370,59 +336,28 @@ System.Net.Mail/SmtpStatusCode.cs
 System.Net/MacProxy.cs
 System.Net/MonoHttpDate.cs
 System.Net/NetConfig.cs
-System.Net/NetworkAccess.cs
 System.Net/NetworkCredential.cs
-System.Net.NetworkInformation/DuplicateAddressDetectionState.cs
-System.Net.NetworkInformation/GatewayIPAddressInformationCollection.cs
-System.Net.NetworkInformation/GatewayIPAddressInformation.cs
 System.Net.NetworkInformation/IcmpV4Statistics.cs
 System.Net.NetworkInformation/IcmpV6Statistics.cs
 System.Net.NetworkInformation/IPAddressCollection.cs
-System.Net.NetworkInformation/IPAddressInformationCollection.cs
-System.Net.NetworkInformation/IPAddressInformation.cs
 System.Net.NetworkInformation/IPGlobalProperties.cs
 System.Net.NetworkInformation/IPGlobalStatistics.cs
 System.Net.NetworkInformation/IPInterfaceProperties.cs
-System.Net.NetworkInformation/IPStatus.cs
 System.Net.NetworkInformation/IPv4InterfaceProperties.cs
 System.Net.NetworkInformation/IPv4InterfaceStatistics.cs
 System.Net.NetworkInformation/IPv6InterfaceProperties.cs
 System.Net.NetworkInformation/LinuxNetworkInterfaceMarshal.cs
 System.Net.NetworkInformation/MacOsNetworkInterfaceMarshal.cs
-System.Net.NetworkInformation/MulticastIPAddressInformationCollection.cs
-System.Net.NetworkInformation/MulticastIPAddressInformation.cs
-System.Net.NetworkInformation/NetBiosNodeType.cs
-System.Net.NetworkInformation/NetworkAddressChangedEventHandler.cs
-System.Net.NetworkInformation/NetworkAvailabilityChangedEventHandler.cs
-System.Net.NetworkInformation/NetworkAvailabilityEventArgs.cs
 System.Net.NetworkInformation/NetworkChange.cs
-System.Net.NetworkInformation/NetworkInformationAccess.cs
-System.Net.NetworkInformation/NetworkInformationException.cs
-System.Net.NetworkInformation/NetworkInformationPermissionAttribute.cs
-System.Net.NetworkInformation/NetworkInformationPermission.cs
-System.Net.NetworkInformation/NetworkInterfaceComponent.cs
 System.Net.NetworkInformation/NetworkInterface.cs
-System.Net.NetworkInformation/NetworkInterfaceType.cs
-System.Net.NetworkInformation/OperationalStatus.cs
-System.Net.NetworkInformation/PhysicalAddress.cs
 System.Net.NetworkInformation/PingCompletedEventArgs.cs
 System.Net.NetworkInformation/PingCompletedEventHandler.cs
 System.Net.NetworkInformation/Ping.cs
-System.Net.NetworkInformation/PingException.cs
-System.Net.NetworkInformation/PingOptions.cs
-System.Net.NetworkInformation/PingReply.cs
-System.Net.NetworkInformation/PrefixOrigin.cs
-System.Net.NetworkInformation/SuffixOrigin.cs
-System.Net.NetworkInformation/TcpConnectionInformation.cs
-System.Net.NetworkInformation/TcpState.cs
 System.Net.NetworkInformation/TcpStatistics.cs
 System.Net.NetworkInformation/UdpStatistics.cs
-System.Net.NetworkInformation/UnicastIPAddressInformationCollection.cs
 System.Net.NetworkInformation/UnicastIPAddressInformation.cs
 System.Net.NetworkInformation/Win32NetworkInterfaceMarshal.cs
 System.Net/NtlmClient.cs
-System/NetPipeStyleUriParser.cs
-System.Net/ProtocolViolationException.cs
 System.Net/RequestStream.cs
 System.Net/ResponseStream.cs
 ../referencesource/System/net/System/Net/SecureProtocols/AuthenticatedStream.cs
@@ -430,7 +365,6 @@ System.Net/ResponseStream.cs
 System.Net.Security/EncryptionPolicy.cs
 System.Net.Security/LocalCertificateSelectionCallback.cs
 System.Net.Security/NegotiateStream.cs
-System.Net/SecurityProtocolType.cs
 System.Net.Security/RemoteCertificateValidationCallback.cs
 System.Net.Security/SslStream.cs
 System.Net.Security/SslPolicyErrors.cs
@@ -438,7 +372,6 @@ System.Net/ServicePoint.cs
 System.Net/ServicePointManager.cs
 System.Net/ServicePointManager.extra.cs
 System.Net/SimpleAsyncResult.cs
-System.Net/SocketAddress.cs
 System.Net/SocketPermissionAttribute.cs
 System.Net/SocketPermission.cs
 ../referencesource/System/net/System/Net/Sockets/AddressFamily.cs
@@ -470,21 +403,11 @@ System.Net.Sockets/TcpListener.cs
 ../referencesource/System/net/System/Net/Sockets/TransmitFileFlags.cs
 System.Net.Sockets/UdpClient.cs
 ../referencesource/System/net/System/Net/Sockets/UdpReceiveResult.cs
-System/NetTcpStyleUriParser.cs
-System.Net/TransportContext.cs
-System.Net/TransportType.cs
 System.Net/WebAsyncResult.cs
 System.Net/WebConnection.cs
 System.Net/WebConnectionData.cs
 System.Net/WebConnectionGroup.cs
 System.Net/WebConnectionStream.cs
-System.Net/WebException.cs
-System.Net/WebExceptionStatus.cs
-System.Net/WebHeaderCollection.cs
-System.Net/WebProxy.cs
-System.Net/WebRequest.cs
-System.Net/WebRequestMethods.cs
-System.Net/WebResponse.cs
 System.Net.WebSockets/ClientWebSocket.cs
 System.Net.WebSockets/ClientWebSocketOptions.cs
 System.Net.WebSockets/HttpListenerWebSocketContext.cs
@@ -496,7 +419,6 @@ System.Net.WebSockets/WebSocketException.cs
 System.Net.WebSockets/WebSocketMessageType.cs
 System.Net.WebSockets/WebSocketReceiveResult.cs
 System.Net.WebSockets/WebSocketState.cs
-System/NewsStyleUriParser.cs
 System.Security.AccessControl/SemaphoreAccessRule.cs
 System.Security.AccessControl/SemaphoreAuditRule.cs
 System.Security.AccessControl/SemaphoreRights.cs
@@ -521,10 +443,6 @@ System.Security.Authentication.ExtendedProtection.Configuration/ServiceNameEleme
 System.Security.Cryptography/AsnEncodedDataCollection.cs
 System.Security.Cryptography/AsnEncodedData.cs
 System.Security.Cryptography/AsnEncodedDataEnumerator.cs
-System.Security.Cryptography/OidCollection.cs
-System.Security.Cryptography/Oid.cs
-System.Security.Cryptography/OidEnumerator.cs
-System.Security.Cryptography/OidGroup.cs
 System.Security.Cryptography.X509Certificates/OpenFlags.cs
 System.Security.Cryptography.X509Certificates/OSX509Certificates.cs
 System.Security.Cryptography.X509Certificates/PublicKey.cs
@@ -571,17 +489,10 @@ System.Security.Permissions/StorePermissionAttribute.cs
 System.Security.Permissions/StorePermission.cs
 System.Security.Permissions/StorePermissionFlags.cs
 System/SRDescriptionAttribute.cs
-System.Threading/Semaphore.cs
 System.Threading/ThreadExceptionEventArgs.cs
 System.Threading/ThreadExceptionEventHandler.cs
 System.Timers/ElapsedEventArgs.cs
-System/UriBuilder.cs
-System/Uri.cs
-System/UriHelper.cs
-System/UriParser.cs
 System/UriTypeConverter.cs
-System/UriElements.cs
-System/UriParseComponents.cs
 System.Web/AspNetHostingPermissionAttribute.cs
 System.Web/AspNetHostingPermission.cs
 System.Web/AspNetHostingPermissionLevel.cs
@@ -598,8 +509,6 @@ System.Runtime.InteropServices.ComTypes/IEnumSTATDATA.cs
 System.Runtime.InteropServices.ComTypes/STATDATA.cs
 System.Runtime.InteropServices.ComTypes/STGMEDIUM.cs
 System.Runtime.InteropServices.ComTypes/TYMED.cs
-System/IUriData.cs
-System/UriData.cs
 Mono.Net.Dns/DnsClass.cs
 Mono.Net.Dns/DnsHeader.cs
 Mono.Net.Dns/DnsOpCode.cs
@@ -642,21 +551,23 @@ Mono.Net.Security/MonoTlsStream.cs
 Mono.Net.Security/NoReflectionHelper.cs
 Mono.Net.Security/SystemCertificateValidator.cs
 
+ReferenceSources/AutoWebProxyScriptEngine.cs
 ReferenceSources/AssertWrapper.cs
 ReferenceSources/BinaryCompatibility.cs
 ReferenceSources/ConfigurationManagerInternalFactory.cs
+ReferenceSources/CAPI.cs
 ReferenceSources/EnvironmentHelpers.cs
 ReferenceSources/Internal.cs
+ReferenceSources/HttpApi.cs
 ReferenceSources/HttpSysSettings.cs
 ReferenceSources/Logging.cs
 ReferenceSources/NativeMethods.cs
+ReferenceSources/RequestCacheProtocol.cs
 ReferenceSources/SettingsSectionInternal.cs
 ReferenceSources/Socket.cs
 ReferenceSources/SR.cs
 ReferenceSources/SR2.cs
 ReferenceSources/SRCategoryAttribute.cs
-ReferenceSources/SystemNetworkCredential.cs
-ReferenceSources/WebHeaderCollectionType.cs
 ReferenceSources/Win32Exception.cs
 
 ReferenceSources/SSPIConfiguration.cs
@@ -1032,37 +943,147 @@ ReferenceSources/_SslStream.cs
 ../referencesource/System/compmod/system/diagnostics/TypedElement.cs
 ../referencesource/System/compmod/system/diagnostics/XmlWriterTraceListener.cs
 
+../referencesource/System/net/System/_DomainName.cs
+../referencesource/System/net/System/_IPv4Address.cs
+../referencesource/System/net/System/_IPv6Address.cs
+../referencesource/System/net/System/_UncName.cs
+../referencesource/System/net/System/_UriSyntax.cs
+../referencesource/System/net/System/GenericUriParser.cs
+../referencesource/System/net/System/IriHelper.cs
+../referencesource/System/net/System/URI.cs
+../referencesource/System/net/System/uribuilder.cs
 ../referencesource/System/net/System/UriEnumTypes.cs
+../referencesource/System/net/System/UriExt.cs
 ../referencesource/System/net/System/URIFormatException.cs
+../referencesource/System/net/System/UriHelper.cs
 ../referencesource/System/net/System/UriHostNameType.cs
+../referencesource/System/net/System/UriParserTemplates.cs
 ../referencesource/System/net/System/URIPartial.cs
+../referencesource/System/net/System/UriScheme.cs
 
 ../referencesource/System/net/System/Net/_BufferOffsetSize.cs
+../referencesource/System/net/System/Net/_Connection.cs
+../referencesource/System/net/System/Net/_emptywebproxy.cs
+../referencesource/System/net/System/Net/_HeaderInfo.cs
+../referencesource/System/net/System/Net/_HeaderInfoTable.cs
+../referencesource/System/net/System/Net/_HTTPDateParse.cs
+../referencesource/System/net/System/Net/_IStreams.cs
+../referencesource/System/net/System/Net/_NetRes.cs
 ../referencesource/System/net/System/Net/_LazyAsyncResult.cs
 ../referencesource/System/net/System/Net/_LoggingObject.cs
+../referencesource/System/net/System/Net/_PooledStream.cs
+../referencesource/System/net/System/Net/_ProxyChain.cs
 ../referencesource/System/net/System/Net/_ScatterGatherBuffers.cs
+../referencesource/System/net/System/Net/_Semaphore.cs
+../referencesource/System/net/System/Net/_TimerThread.cs
+../referencesource/System/net/System/Net/_WebProxyDataBuilder.cs
+../referencesource/System/net/System/Net/AuthenticationScheme.cs
+../referencesource/System/net/System/Net/AuthenticationSchemeSelector.cs
+../referencesource/System/net/System/Net/Authorization.cs
+../referencesource/System/net/System/Net/CredentialCache.cs
 ../referencesource/System/net/System/Net/cookie.cs
 ../referencesource/System/net/System/Net/cookiecollection.cs
 ../referencesource/System/net/System/Net/cookiecontainer.cs
 ../referencesource/System/net/System/Net/cookieexception.cs
+../referencesource/System/net/System/Net/connectionpool.cs
+../referencesource/System/net/System/Net/DnsEndPoint.cs
+../referencesource/System/net/System/Net/EndPoint.cs
+../referencesource/System/net/System/Net/FtpStatusCode.cs
+../referencesource/System/net/System/Net/filewebrequest.cs
+../referencesource/System/net/System/Net/filewebresponse.cs
+../referencesource/System/net/System/Net/GlobalProxySelection.cs
+../referencesource/System/net/System/Net/HttpListenerException.cs
 ../referencesource/System/net/System/Net/HttpListenerRequestUriBuilder.cs
+../referencesource/System/net/System/Net/HttpRequestHeader.cs
+../referencesource/System/net/System/Net/HttpResponseHeader.cs
+../referencesource/System/net/System/Net/HttpStatusCode.cs
+../referencesource/System/net/System/Net/HttpVersion.cs
+../referencesource/System/net/System/Net/IAuthenticationModule.cs
+../referencesource/System/net/System/Net/ICertificatePolicy.cs
+../referencesource/System/net/System/Net/ICredentials.cs
+../referencesource/System/net/System/Net/ICredentialsByHost.cs
 ../referencesource/System/net/System/Net/Internal.cs
+../referencesource/System/net/System/Net/IPAddress.cs
+../referencesource/System/net/System/Net/IPEndPoint.cs
+../referencesource/System/net/System/Net/IPHostEntry.cs
+../referencesource/System/net/System/Net/iwebproxy.cs
+../referencesource/System/net/System/Net/IWebProxyFinder.cs
+../referencesource/System/net/System/Net/IWebRequestCreate.cs
+../referencesource/System/net/System/Net/NetworkAccess.cs
+../referencesource/System/net/System/Net/ProtocolViolationException.cs
+../referencesource/System/net/System/Net/TransportContext.cs
+../referencesource/System/net/System/Net/TransportType.cs
 ../referencesource/System/net/System/Net/UnicodeDecodingConformance.cs
 ../referencesource/System/net/System/Net/UnicodeEncodingConformance.cs
 ../referencesource/System/net/System/Net/ServicePointManager.cs
+../referencesource/System/net/System/Net/SocketAddress.cs
 ../referencesource/System/net/System/Net/webclient.cs
+../referencesource/System/net/System/Net/WebException.cs
+../referencesource/System/net/System/Net/WebExceptionStatus.cs
+../referencesource/System/net/System/Net/WebHeaderCollection.cs
 ../referencesource/System/net/System/Net/WebPermission.cs
+../referencesource/System/net/System/Net/webproxy.cs
+../referencesource/System/net/System/Net/WebRequestMethods.cs
+../referencesource/System/net/System/Net/WebRequest.cs
+../referencesource/System/net/System/Net/WebResponse.cs
 ../referencesource/System/net/System/Net/WebUtility.cs
 ../referencesource/System/net/System/Net/WriteStreamClosedEventArgs.cs
 
+../referencesource/System/net/System/Net/Cache/RequestCache.cs
+../referencesource/System/net/System/Net/Cache/RequestCacheEntry.cs
 ../referencesource/System/net/System/Net/Cache/RequestCachePolicy.cs
+../referencesource/System/net/System/Net/Cache/RequestCacheManager.cs
+
+../referencesource/System/net/System/Net/Configuration/DefaultProxySection.cs
 
 ../referencesource/System/net/System/Net/Sockets/IPProtectionLevel.cs
 ../referencesource/System/net/System/Net/Sockets/NetworkStream.cs
 
+../referencesource/System/net/System/Net/NetworkInformation/DuplicateAddressDetectionState.cs
+../referencesource/System/net/System/Net/NetworkInformation/GatewayIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/GatewayIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPGlobalProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPGlobalStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPInterfaceProperties.cs
 ../referencesource/System/net/System/Net/NetworkInformation/IPInterfaceStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPStatus.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPv4InterfaceProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPv6InterfaceProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IcmpV4Statistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IcmpV6Statistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/MulticastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/MulticastIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkAddressChange.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInformationException.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInformationPermission.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInterface.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInterfaceComponent.cs
+../referencesource/System/net/System/Net/NetworkInformation/OperationalStatus.cs
+../referencesource/System/net/System/Net/NetworkInformation/PhysicalAddress.cs
+../referencesource/System/net/System/Net/NetworkInformation/PingOptions.cs
+../referencesource/System/net/System/Net/NetworkInformation/PingReply.cs
+../referencesource/System/net/System/Net/NetworkInformation/PrefixOrigin.cs
 ../referencesource/System/net/System/Net/NetworkInformation/ScopeLevel.cs
+../referencesource/System/net/System/Net/NetworkInformation/SuffixOrigin.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemGatewayIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemMulticastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemUnicastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemTcpConnection.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpConnection.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpState.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/UdpStatistics.cs
 ../referencesource/System/net/System/Net/NetworkInformation/UnicastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/UnicastIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/interfacetype.cs
+../referencesource/System/net/System/Net/NetworkInformation/nodetype.cs
+../referencesource/System/net/System/Net/NetworkInformation/pingexception.cs
+
+../referencesource/System/sys/system/IO/ports/InternalResources.cs
 
 ../referencesource/System/sys/system/runtime/interopservices/DefaultParameterValueAttribute.cs
 ../referencesource/System/sys/system/runtime/interopservices/handlecollector.cs
@@ -1070,8 +1091,16 @@ ReferenceSources/_SslStream.cs
 ../referencesource/System/sys/system/runtime/versioning/FrameworkName.cs
 
 ../referencesource/System/sys/system/threading/Barrier.cs
+../referencesource/System/sys/system/threading/semaphore.cs
+
 ../referencesource/System/sys/system/windows/markup/ValueSerializerAttribute.cs
 
+../referencesource/System/security/system/security/Authentication/ExtendedProtection/TokenBinding.cs
+
+../referencesource/System/security/system/security/cryptography/oid.cs
+
+../referencesource/System/security/system/security/cryptography/x509/x509utils.cs
+
 ../referencesource/System/security/system/security/permissions/typedescriptorpermission.cs
 
 ../referencesource/System/services/timers/system/timers/ElapsedEventHandler.cs
diff --git a/mcs/class/System/System/DefaultUriParser.cs b/mcs/class/System/System/DefaultUriParser.cs
deleted file mode 100644 (file)
index cd64a37..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-//
-// System.DefaultUriParser internal class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       // LAMESPEC: Sadly MS doesn't seems to use all/most? the new Uri
-       // parser classes. See unit tests... :(
-
-       internal class DefaultUriParser : UriParser {
-
-               public DefaultUriParser ()
-               {
-               }
-
-               public DefaultUriParser (string scheme)
-               {
-                       scheme_name = scheme;
-               }
-       }
-}
diff --git a/mcs/class/System/System/FileStyleUriParser.cs b/mcs/class/System/System/FileStyleUriParser.cs
deleted file mode 100644 (file)
index f7a0fdf..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.FileStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       public class FileStyleUriParser : UriParser {
-
-               public FileStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/FtpStyleUriParser.cs b/mcs/class/System/System/FtpStyleUriParser.cs
deleted file mode 100644 (file)
index c31d279..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.FtpStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       public class FtpStyleUriParser : UriParser {
-
-               public FtpStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/GenericUriParser.cs b/mcs/class/System/System/GenericUriParser.cs
deleted file mode 100644 (file)
index 38ef728..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-//
-// System.GenericUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-       public class GenericUriParser : UriParser {
-
-               public GenericUriParser (GenericUriParserOptions options)
-               {
-               }
-       }
-}
diff --git a/mcs/class/System/System/GenericUriParserOptions.cs b/mcs/class/System/System/GenericUriParserOptions.cs
deleted file mode 100644 (file)
index 91e9127..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-// System.GenericUriParserOptions enumeration
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005, 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       [Flags]
-       public enum GenericUriParserOptions {
-
-               Default = 0,
-               GenericAuthority = 1,
-               AllowEmptyAuthority = 2,
-               NoUserInfo = 4,
-               NoPort = 8,
-               NoQuery = 16,
-               NoFragment = 32,
-               DontConvertPathBackslashes = 64,
-               DontCompressPath = 128,
-               DontUnescapePathDotsAndSlashes = 256,
-               Idn = 512,
-               IriParsing = 1024
-       }
-}
diff --git a/mcs/class/System/System/GopherStyleUriParser.cs b/mcs/class/System/System/GopherStyleUriParser.cs
deleted file mode 100644 (file)
index 801c1d3..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.GopherStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       public class GopherStyleUriParser : UriParser {
-
-               public GopherStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/HttpStyleUriParser.cs b/mcs/class/System/System/HttpStyleUriParser.cs
deleted file mode 100644 (file)
index 15b3fc7..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.HttpStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       public class HttpStyleUriParser : UriParser {
-
-               public HttpStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/IUriData.cs b/mcs/class/System/System/IUriData.cs
deleted file mode 100644 (file)
index 86289d0..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-// System.IUriData interface
-//
-// Author:
-//     Raja R Harinath <harinath@hurrynot.org>
-//
-// Copyright (C) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Collections;
-using System.Globalization;
-using System.Security.Permissions;
-using System.Text;
-
-namespace System {
-       interface IUriData {
-               string AbsolutePath { get; }
-               string AbsoluteUri { get; }
-               string AbsoluteUri_SafeUnescaped { get; }
-               string Authority { get; }
-               string Fragment { get; }
-               string Host { get; }
-               string PathAndQuery { get; }
-               string StrongPort { get; }
-               string Query { get; }
-               string UserInfo { get; }
-       }
-}
diff --git a/mcs/class/System/System/LdapStyleUriParser.cs b/mcs/class/System/System/LdapStyleUriParser.cs
deleted file mode 100644 (file)
index c19bce9..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.LdapStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       public class LdapStyleUriParser : UriParser {
-
-               public LdapStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/NetPipeStyleUriParser.cs b/mcs/class/System/System/NetPipeStyleUriParser.cs
deleted file mode 100644 (file)
index b3f6ea8..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.NetPipeStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       [MonoTODO]
-       public class NetPipeStyleUriParser : UriParser {
-
-               public NetPipeStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/NetTcpStyleUriParser.cs b/mcs/class/System/System/NetTcpStyleUriParser.cs
deleted file mode 100644 (file)
index 6c4c1d9..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.NetTcpStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       [MonoTODO]
-       public class NetTcpStyleUriParser : UriParser {
-
-               public NetTcpStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/NewsStyleUriParser.cs b/mcs/class/System/System/NewsStyleUriParser.cs
deleted file mode 100644 (file)
index e1f9998..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.NewsStyleUriParser class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-
-       [MonoTODO]
-       public class NewsStyleUriParser : UriParser {
-
-               public NewsStyleUriParser ()
-               {
-               }
-       }
-}
-
diff --git a/mcs/class/System/System/Uri.cs b/mcs/class/System/System/Uri.cs
deleted file mode 100644 (file)
index 094eb13..0000000
+++ /dev/null
@@ -1,2105 +0,0 @@
-//
-// System.Uri
-//
-// Authors:
-//    Lawrence Pit (loz@cable.a2000.nl)
-//    Garrett Rooney (rooneg@electricjellyfish.net)
-//    Ian MacLean (ianm@activestate.com)
-//    Ben Maurer (bmaurer@users.sourceforge.net)
-//    Atsushi Enomoto (atsushi@ximian.com)
-//    Sebastien Pouliot  <sebastien@ximian.com>
-//    Stephane Delcroix  <stephane@delcroix.org>
-//
-// (C) 2001 Garrett Rooney
-// (C) 2003 Ian MacLean
-// (C) 2003 Ben Maurer
-// Copyright (C) 2003,2009 Novell, Inc (http://www.novell.com)
-// Copyright (c) 2009 Stephane Delcroix
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-// See RFC 2396 for more info on URI's.
-//
-// TODO: optimize by parsing host string only once
-//
-using System.ComponentModel;
-using System.IO;
-using System.Net;
-using System.Runtime.Serialization;
-using System.Text;
-using System.Collections;
-using System.Collections.Generic;
-using System.Globalization;
-
-//
-// Disable warnings on Obsolete methods being used
-//
-#pragma warning disable 612
-
-namespace System {
-
-       [Serializable]
-       [TypeConverter (typeof (UriTypeConverter))]
-       public class Uri : ISerializable {
-               // NOTES:
-               // o  scheme excludes the scheme delimiter
-               // o  port is -1 to indicate no port is defined
-               // o  path is empty or starts with / when scheme delimiter == "://"
-               // o  query is empty or starts with ? char, escaped.
-               // o  fragment is empty or starts with # char, unescaped.
-               // o  all class variables are in escaped format when they are escapable,
-               //    except cachedToString.
-               // o  UNC is supported, as starts with "\\" for windows,
-               //    or "//" with unix.
-
-               private string source;
-               private string scheme = String.Empty;
-               private string host = String.Empty;
-               private int port = -1;
-               private string path = String.Empty;
-               private string query = String.Empty;
-               private string fragment = String.Empty;
-               private string userinfo;
-               private bool isUnc;
-               private bool isAbsoluteUri = true;
-               private long scope_id;
-
-               private List<string> segments;
-               
-               private bool userEscaped;
-               private string cachedAbsoluteUri;
-               private string cachedToString;
-               private string cachedLocalPath;
-               private int cachedHashCode;
-               
-               private static bool s_IriParsing;
-
-               internal static bool IriParsing {
-                       get { return s_IriParsing; }
-                       set { s_IriParsing = value; }
-               }
-
-               // Do not rename this.
-               // User code might set this to true with reflection.
-               // When set to true an Uri constructed with UriKind.RelativeOrAbsolute 
-               // and paths such as "/foo" is assumed relative.
-               private static bool useDotNetRelativeOrAbsolute;
-
-#if BOOTSTRAP_BASIC
-               private static readonly string hexUpperChars = "0123456789ABCDEF";
-               private static readonly string [] Empty = new string [0];
-               private static bool isWin32 = (Path.DirectorySeparatorChar == '\\');
-#else
-               static readonly char[] hexUpperChars = new [] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
-#endif
-       
-               // Fields
-               
-               public static readonly string SchemeDelimiter = "://";
-               public static readonly string UriSchemeFile = "file";
-               public static readonly string UriSchemeFtp = "ftp";
-               public static readonly string UriSchemeGopher = "gopher";
-               public static readonly string UriSchemeHttp = "http";
-               public static readonly string UriSchemeHttps = "https";
-               public static readonly string UriSchemeMailto = "mailto";
-               public static readonly string UriSchemeNews = "news";
-               public static readonly string UriSchemeNntp = "nntp";
-               public static readonly string UriSchemeNetPipe = "net.pipe";
-               public static readonly string UriSchemeNetTcp = "net.tcp";
-
-               internal static readonly string UriSchemeTelnet = "telnet";
-               internal static readonly string UriSchemeLdap = "ldap";
-               internal static readonly string UriSchemeUuid = "uuid";
-
-               private static readonly string [] knownUriSchemes =
-               {
-                       UriSchemeFile,
-                       UriSchemeFtp,
-                       UriSchemeGopher,
-                       UriSchemeHttp,
-                       UriSchemeHttps,
-                       UriSchemeMailto,
-                       UriSchemeNews,
-                       UriSchemeNntp,
-                       UriSchemeNetPipe,
-                       UriSchemeNetTcp
-               };
-
-               // Constructors
-
-               static Uri ()
-               {
-                       IriParsing = true;
-
-                       var iriparsingVar = Environment.GetEnvironmentVariable ("MONO_URI_IRIPARSING");
-                       if (iriparsingVar == "true")
-                               IriParsing = true;
-                       else if (iriparsingVar == "false")
-                               IriParsing = false;
-
-                       useDotNetRelativeOrAbsolute = Environment.GetEnvironmentVariable ("MONO_URI_DOTNETRELATIVEORABSOLUTE") == "true";
-               }
-
-               public Uri (string uriString) : this (uriString, false) 
-               {
-               }
-
-               protected Uri (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       string uri = serializationInfo.GetString ("AbsoluteUri");
-                       if (uri.Length > 0) {
-                               source = uri;
-                               ParseUri (UriKind.Absolute);
-                       } else {
-                               uri = serializationInfo.GetString ("RelativeUri");
-                               if (uri.Length > 0) {
-                                       source = uri;
-                                       ParseUri (UriKind.Relative);
-                               } else {
-                                       throw new ArgumentException ("Uri string was null or empty.");
-                               }
-                       }
-               }
-
-               // When used instead of UriKind.RelativeOrAbsolute paths such as "/foo" are assumed relative.
-               const UriKind DotNetRelativeOrAbsolute = (UriKind) 300;
-
-               private void ProcessUriKind (string uriString, ref UriKind uriKind)
-               {
-                       if (uriString == null)
-                          return;
-               
-                       if (uriKind == DotNetRelativeOrAbsolute ||
-                               (uriKind == UriKind.RelativeOrAbsolute && useDotNetRelativeOrAbsolute))
-                               uriKind = (uriString.StartsWith ("/", StringComparison.Ordinal))? UriKind.Relative : UriKind.RelativeOrAbsolute;
-               }
-
-               public Uri (string uriString, UriKind uriKind)
-               {
-                       source = uriString;
-
-                       ProcessUriKind (uriString, ref uriKind);
-
-                       ParseUri (uriKind);
-
-                       switch (uriKind) {
-                       case UriKind.Absolute:
-                               if (!IsAbsoluteUri)
-                                       throw new UriFormatException ("Invalid URI: The format of the URI could not be "
-                                               + "determined.");
-                               break;
-                       case UriKind.Relative:
-                               if (IsAbsoluteUri)
-                                       throw new UriFormatException ("Invalid URI: The format of the URI could not be "
-                                               + "determined because the parameter 'uriString' represents an absolute URI.");
-                               break;
-                       case UriKind.RelativeOrAbsolute:
-                               break;
-                       default:
-                               string msg = Locale.GetText ("Invalid UriKind value '{0}'.", uriKind);
-                               throw new ArgumentException (msg);
-                       }
-               }
-
-               //
-               // An exception-less constructor, returns success
-               // condition on the out parameter `success'.
-               //
-               Uri (string uriString, UriKind uriKind, out bool success)
-               {
-                       if (uriString == null) {
-                               success = false;
-                               return;
-                       }
-
-                       ProcessUriKind (uriString, ref uriKind);
-
-                       if (uriKind != UriKind.RelativeOrAbsolute &&
-                               uriKind != UriKind.Absolute &&
-                               uriKind != UriKind.Relative) {
-                               string msg = Locale.GetText ("Invalid UriKind value '{0}'.", uriKind);
-                               throw new ArgumentException (msg);
-                       }
-
-                       source = uriString;
-                       if (ParseNoExceptions (uriKind, uriString) != null)
-                               success = false;
-                       else {
-                               success = true;
-                               
-                               switch (uriKind) {
-                               case UriKind.Absolute:
-                                       if (!IsAbsoluteUri)
-                                               success = false;
-                                       break;
-                               case UriKind.Relative:
-                                       if (IsAbsoluteUri)
-                                               success = false;
-                                       break;
-                               case UriKind.RelativeOrAbsolute:
-                                       break;
-                               default:
-                                       success = false;
-                                       break;
-                               }
-
-                               if (success && host.Length > 1 && host [0] != '[' && host [host.Length - 1] != ']') {
-                                       // host name present (but not an IPv6 address)
-                                       host = host.ToLower (CultureInfo.InvariantCulture);
-                               }
-                       }
-               }
-
-               public Uri (Uri baseUri, Uri relativeUri)
-               {
-                       Merge (baseUri, relativeUri == null ? String.Empty : relativeUri.OriginalString);
-                       // FIXME: this should call UriParser.Resolve
-               }
-
-               // note: doc says that dontEscape is always false but tests show otherwise
-               [Obsolete]
-               public Uri (string uriString, bool dontEscape) 
-               {
-                       userEscaped = dontEscape;
-                       source = uriString;
-                       ParseUri (UriKind.Absolute);
-                       if (!isAbsoluteUri)
-                               throw new UriFormatException ("Invalid URI: The format of the URI could not be "
-                                       + "determined: " + uriString);
-               }
-
-               public Uri (Uri baseUri, string relativeUri) 
-               {
-                       Merge (baseUri, relativeUri);
-                       // FIXME: this should call UriParser.Resolve
-               }
-
-               [Obsolete ("dontEscape is always false")]
-               public Uri (Uri baseUri, string relativeUri, bool dontEscape) 
-               {
-                       userEscaped = dontEscape;
-                       Merge (baseUri, relativeUri);
-               }
-
-               private void Merge (Uri baseUri, string relativeUri)
-               {
-                       if (baseUri == null)
-                               throw new ArgumentNullException ("baseUri");
-                       if (!baseUri.IsAbsoluteUri)
-                               throw new ArgumentOutOfRangeException ("baseUri");
-                       if (string.IsNullOrEmpty (relativeUri)) {
-                               source = baseUri.OriginalString;
-                               ParseUri (UriKind.Absolute);
-                               return;
-                       }
-
-                       string error;
-                       bool startsWithSlash = false;
-
-                       UriElements baseEl;
-                       if (!UriParseComponents.TryParseComponents (baseUri.OriginalString, UriKind.Absolute, out baseEl, out error))
-                               throw new UriFormatException (error);
-
-                       if (relativeUri.StartsWith (baseEl.scheme + ":", StringComparison.Ordinal))
-                               relativeUri = relativeUri.Substring (baseEl.scheme.Length + 1);
-
-                       if (relativeUri.Length >= 1 && relativeUri [0] == '/') {
-                               if (relativeUri.Length >= 2 && relativeUri [1] == '/') {
-                                       source = baseEl.scheme + ":" + relativeUri;
-                                       ParseUri (UriKind.Absolute);
-                                       return;
-                               }
-
-                               relativeUri = relativeUri.Substring (1);
-                               startsWithSlash = true;
-                       }
-
-                       UriElements relativeEl;
-                       if (!UriParseComponents.TryParseComponents (relativeUri, UriKind.RelativeOrAbsolute, out relativeEl, out error))
-                               throw new UriFormatException (error);
-
-                       if (relativeEl.isAbsoluteUri) {
-                               source = relativeUri;
-                               ParseUri (UriKind.Absolute);
-                               return;
-                       }
-
-                       source = baseEl.scheme + baseEl.delimiter;
-
-                       if (baseEl.user != null)
-                               source += baseEl.user + "@";
-
-                       source += baseEl.host;
-
-                       if (baseEl.port >= 0)
-                               source += ":" + baseEl.port.ToString (CultureInfo.InvariantCulture);
-
-                       var canUseBase = true;
-
-                       string path;
-                       if (!string.IsNullOrEmpty (relativeEl.path) || startsWithSlash) {
-                               canUseBase = false;
-                               path = relativeEl.path;
-                               if (startsWithSlash)
-                                       path = relativeEl.path;
-                               else {
-                                       var pathEnd = baseEl.path.LastIndexOf ('/');
-                                       path = (pathEnd > 0)? baseEl.path.Substring (0, pathEnd+1) : "";
-                                       path += relativeEl.path;
-                               }
-                       } else {
-                               path = baseEl.path;
-                       }
-
-                       if ((path.Length == 0 || path [0] != '/') && baseEl.delimiter == SchemeDelimiter)
-                               path = "/" + path;
-
-                       source += UriHelper.Reduce (path, !IriParsing);
-
-                       if (relativeEl.query != null) {
-                               canUseBase = false;
-                               source += "?" + relativeEl.query;
-                       } else if (canUseBase && baseEl.query != null)
-                               source += "?" + baseEl.query;
-
-                       if (relativeEl.fragment != null)
-                               source += "#" + relativeEl.fragment;
-                       else if (canUseBase && baseEl.fragment != null)
-                               source += "#" + baseEl.fragment;
-
-                       ParseUri (UriKind.Absolute);
-
-                       return;
-               }
-               
-               // Properties
-               
-               public string AbsolutePath { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               if (scheme == "mailto" || scheme == "file")
-                                       // faster (mailto) and special (file) cases
-                                       return path;
-                               
-                               if (path.Length == 0) {
-                                       string start = scheme + SchemeDelimiter;
-                                       if (path.StartsWith (start, StringComparison.Ordinal))
-                                               return "/";
-                                       else
-                                               return String.Empty;
-                               }
-                               return path;
-                       }
-               }
-
-               public string AbsoluteUri { 
-                       get { 
-                               EnsureAbsoluteUri ();
-
-                               if (cachedAbsoluteUri == null)
-                                       cachedAbsoluteUri = GetComponents (UriComponents.AbsoluteUri, UriFormat.UriEscaped);
-
-                               return cachedAbsoluteUri;
-                       } 
-               }
-
-               public string Authority { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return (GetDefaultPort (Scheme) == port)
-                                    ? host : host + ":" + port;
-                       } 
-               }
-
-               public string Fragment { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return fragment; 
-                       } 
-               }
-
-               public string Host { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return host; 
-                       } 
-               }
-
-               public UriHostNameType HostNameType { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               UriHostNameType ret = CheckHostName (Host);
-                               if (ret != UriHostNameType.Unknown)
-                                       return ret;
-
-                               if (scheme == "mailto")
-                                       return UriHostNameType.Basic;
-                               return (IsFile) ? UriHostNameType.Basic : ret;
-                       } 
-               }
-
-               public bool IsDefaultPort { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               return GetDefaultPort (Scheme) == port;
-                       }
-               }
-
-               public bool IsFile { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               return (Scheme == UriSchemeFile);
-                       }
-               }
-
-               public bool IsLoopback { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               
-                               if (Host.Length == 0) {
-                                       return IsFile;
-                               }
-
-                               if (host == "loopback" || host == "localhost") 
-                                       return true;
-
-                               IPAddress result;
-                               if (IPAddress.TryParse (host, out result))
-                                       if (IPAddress.Loopback.Equals (result))
-                                               return true;
-
-                               IPv6Address result6;
-                               if (IPv6Address.TryParse (host, out result6)){
-                                       if (IPv6Address.IsLoopback (result6))
-                                               return true;
-                               }
-
-                               return false;
-                       } 
-               }
-
-               public bool IsUnc {
-                       // rule: This should be true only if
-                       //   - uri string starts from "\\", or
-                       //   - uri string starts from "//" (Samba way)
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return isUnc; 
-                       } 
-               }
-
-               private bool IsLocalIdenticalToAbsolutePath ()
-               {
-                       if (IsFile)
-                               return false;
-
-                       if ((scheme == Uri.UriSchemeNews) || (scheme == Uri.UriSchemeNntp) || (scheme == Uri.UriSchemeFtp))
-                               return false;
-
-                       return IsWellFormedOriginalString ();
-               }
-
-               public string LocalPath { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               if (cachedLocalPath != null)
-                                       return cachedLocalPath;
-
-                               var formatFlags = UriHelper.FormatFlags.NoSlashReplace;
-
-                               if (userEscaped)
-                                       formatFlags |= UriHelper.FormatFlags.UserEscaped;
-
-                               string unescapedPath = UriHelper.FormatAbsolute (path, scheme,
-                                       UriComponents.Path, UriFormat.Unescaped, formatFlags);
-
-                               if (path.StartsWith ("/", StringComparison.Ordinal) &&
-                                       !unescapedPath.StartsWith ("/", StringComparison.Ordinal))
-                                       unescapedPath = "/" + unescapedPath;
-
-                               if (IsLocalIdenticalToAbsolutePath ()) {
-                                       cachedLocalPath = unescapedPath;
-                                       return cachedLocalPath;
-                               }
-
-                               if (!IsUnc) {
-                                       bool windows = (path.Length > 3 && path [1] == ':' &&
-                                               (path [2] == '\\' || path [2] == '/'));
-
-                                       if (windows)
-                                               cachedLocalPath = unescapedPath.Replace ('/', '\\');
-                                       else
-                                               cachedLocalPath = unescapedPath;
-                               } else {
-                                       // support *nix and W32 styles
-                                       if (path.Length > 1 && path [1] == ':')
-                                               cachedLocalPath = unescapedPath.Replace (Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
-
-                                       // LAMESPEC: ok, now we cannot determine
-                                       // if such URI like "file://foo/bar" is
-                                       // Windows UNC or unix file path, so
-                                       // they should be handled differently.
-                                       else if (System.IO.Path.DirectorySeparatorChar == '\\') {
-                                               string h = host;
-                                               if (path.Length > 0) {
-                                                       if ((path.Length > 1) || (path[0] != '/')) {
-                                                               h += unescapedPath.Replace ('/', '\\');
-                                                       }
-                                               }
-                                               cachedLocalPath = "\\\\" + h;
-                                       }  else
-                                               cachedLocalPath = unescapedPath;
-                               }
-                               if (cachedLocalPath.Length == 0)
-                                       cachedLocalPath = Path.DirectorySeparatorChar.ToString ();
-                               return cachedLocalPath;
-                       } 
-               }
-
-               public string PathAndQuery { 
-                       get {
-                               EnsureAbsoluteUri ();
-                               return path + Query;
-                       } 
-               }
-
-               public int Port { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return port; 
-                       } 
-               }
-
-               public string Query { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return query; 
-                       }
-               }
-
-               public string Scheme { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return scheme; 
-                       } 
-               }
-
-               public string [] Segments { 
-                       get { 
-                               EnsureAbsoluteUri ();
-
-                               // return a (pre-allocated) empty array
-                               if (path.Length == 0)
-#if BOOTSTRAP_BASIC
-                                       return Empty;
-#else
-                                       return EmptyArray<string>.Value;
-#endif
-                               // do not return the original array (since items can be changed)
-                               if (segments != null)
-                                       return segments.ToArray ();
-
-                               List<string> list = new List<string> ();
-                               StringBuilder current = new StringBuilder ();
-                               for (int i = 0; i < path.Length; i++) {
-                                       switch (path [i]) {
-                                       case '/':
-                                       case '\\':
-                                               current.Append (path [i]);
-                                               list.Add (current.ToString ());
-                                               current.Length = 0;
-                                               break;
-                                       case '%':
-                                               if ((i < path.Length - 2) && (path [i + 1] == '5' && path [i + 2] == 'C')) {
-                                                       current.Append ("%5C");
-                                                       list.Add (current.ToString ());
-                                                       current.Length = 0;
-                                                       i += 2;
-                                               } else {
-                                                       current.Append ('%');
-                                               }
-                                               break;
-                                       default:
-                                               current.Append (path [i]);
-                                               break;
-                                       }
-                               }
-
-                               if (current.Length > 0)
-                                       list.Add (current.ToString ());
-
-                               if (IsFile && (list.Count > 0)) {
-                                       string first = list [0];
-                                       if ((first.Length > 1) && (first [1] == ':')) {
-                                               list.Insert (0, "/");
-                                       }
-                               }
-                               segments = list;
-                               return segments.ToArray ();
-                       } 
-               }
-
-               public bool UserEscaped { 
-                       get { return userEscaped; } 
-               }
-
-               public string UserInfo { 
-                       get { 
-                               EnsureAbsoluteUri ();
-                               return userinfo == null ? String.Empty : userinfo;
-                       }
-               }
-               
-               public string DnsSafeHost {
-                       get {
-                               EnsureAbsoluteUri ();
-                               string host = Host;
-                               if (HostNameType == UriHostNameType.IPv6) {
-                                       host = Host.Substring (1, Host.Length - 2);
-                                       if (scope_id != 0)
-                                               host += "%" + scope_id.ToString ();
-                               }
-                               return Unescape (host);
-                       }
-               }
-
-               public bool IsAbsoluteUri {
-                       get { return isAbsoluteUri; }
-               }
-
-               public string OriginalString {
-                       get { return source; }
-               }
-
-               // Methods              
-
-               public static UriHostNameType CheckHostName (string name) 
-               {
-                       if (name == null || name.Length == 0)
-                               return UriHostNameType.Unknown;
-
-                       if (IsIPv4Address (name)) 
-                               return UriHostNameType.IPv4;
-                               
-                       if (IsDomainAddress (name))
-                               return UriHostNameType.Dns;                             
-                               
-                       IPv6Address addr;
-                       if (IPv6Address.TryParse (name, out addr))
-                               return UriHostNameType.IPv6;
-                       
-                       return UriHostNameType.Unknown;
-               }
-               
-               internal static bool IsIPv4Address (string name)
-               {
-                       string [] captures = name.Split (new char [] {'.'});
-                       if (captures.Length != 4)
-                               return false;
-
-                       for (int i = 0; i < 4; i++) {
-                               int length;
-
-                               length = captures [i].Length;
-                               if (length == 0)
-                                       return false;
-                               uint number;
-                               if (!UInt32.TryParse (captures [i], out number))
-                                       return false;
-                               if (number > 255)
-                                       return false;
-                       }
-                       return true;
-               }                       
-                               
-               internal static bool IsDomainAddress (string name)
-               {
-                       int len = name.Length;
-                       
-                       int count = 0;
-                       for (int i = 0; i < len; i++) {
-                               char c = name [i];
-                               if (count == 0) {
-                                       if (!Char.IsLetterOrDigit (c))
-                                               return false;
-                               } else if (c == '.') {
-                                       // www..host.com is bad
-                                       if (i + 1 < len && name [i + 1] == '.')
-                                               return false;
-                                       count = 0;
-                                       continue;
-                               } else if (!Char.IsLetterOrDigit (c) && c != '-' && c != '_') {
-                                       return false;
-                               }
-                               if (++count == 64)
-                                       return false;
-                       }
-                       
-                       return true;
-               }
-#if !NET_2_1
-
-               [Obsolete ("This method does nothing, it has been obsoleted")]
-               protected virtual void Canonicalize ()
-               {
-                       //
-                       // This is flagged in the Microsoft documentation as used
-                       // internally, no longer in use, and Obsolete.
-                       //
-               }
-
-               [MonoTODO ("Find out what this should do")]
-               [Obsolete]
-               protected virtual void CheckSecurity ()
-               {
-               }
-
-#endif // NET_2_1
-
-               // defined in RFC3986 as = ALPHA *( ALPHA / DIGIT / "+" / "-" / ".")
-               public static bool CheckSchemeName (string schemeName) 
-               {
-                       if (schemeName == null || schemeName.Length == 0)
-                               return false;
-                       
-                       if (!IsAlpha (schemeName [0]))
-                               return false;
-
-                       int len = schemeName.Length;
-                       for (int i = 1; i < len; i++) {
-                               char c = schemeName [i];
-                               if (!Char.IsDigit (c) && !IsAlpha (c) && c != '.' && c != '+' && c != '-')
-                                       return false;
-                       }
-                       
-                       return true;
-               }
-
-               private static bool IsAlpha (char c)
-               {
-                       // as defined in rfc2234
-                       // %x41-5A / %x61-7A (A-Z / a-z)
-                       int i = (int) c;
-                       return (((i >= 0x41) && (i <= 0x5A)) || ((i >= 0x61) && (i <= 0x7A)));
-               }
-
-               // taken from referencesource/System/net/System/URI.cs
-               private static bool IsAsciiLetter(char character) {
-
-                       return  (character >= 'a' && character <= 'z') ||
-                                       (character >= 'A' && character <= 'Z');
-               }
-
-               internal static bool IsAsciiLetterOrDigit(char character) {
-                       return IsAsciiLetter (character) || (character >= '0' && character <= '9');
-               }
-               //
-
-               public override bool Equals (object comparand) 
-               {
-                       if (comparand == null) 
-                               return false;
-
-                       Uri uri = comparand as Uri;
-                       if ((object) uri == null) {
-                               string s = comparand as String;
-                               if (s == null)
-                                       return false;
-
-                               if (!TryCreate (s, UriKind.RelativeOrAbsolute, out uri))
-                                       return false;
-                       }
-
-                       return InternalEquals (uri);
-               }
-
-               // Assumes: uri != null
-               bool InternalEquals (Uri uri)
-               {
-                       if (this.isAbsoluteUri != uri.isAbsoluteUri)
-                               return false;
-                       if (!this.isAbsoluteUri)
-                               return this.source == uri.source;
-
-                       CultureInfo inv = CultureInfo.InvariantCulture;
-                       return this.scheme.ToLower (inv) == uri.scheme.ToLower (inv)
-                               && this.host.ToLower (inv) == uri.host.ToLower (inv)
-                               && this.port == uri.port
-                               && this.query == uri.query
-                               && this.path == uri.path;
-               }
-
-               public static bool operator == (Uri uri1, Uri uri2)
-               {
-                       return object.Equals (uri1, uri2);
-               }
-
-               public static bool operator != (Uri uri1, Uri uri2)
-               {
-                       return !(uri1 == uri2);
-               }
-
-               public override int GetHashCode () 
-               {
-                       if (cachedHashCode == 0) {
-                               CultureInfo inv = CultureInfo.InvariantCulture;
-                               if (isAbsoluteUri) {
-                                       cachedHashCode = scheme.ToLower (inv).GetHashCode ()
-                                               ^ host.ToLower (inv).GetHashCode ()
-                                               ^ port
-                                               ^ query.GetHashCode ()
-                                               ^ path.GetHashCode ();
-                               }
-                               else {
-                                       cachedHashCode = source.GetHashCode ();
-                               }
-                       }
-                       return cachedHashCode;
-               }
-               
-               public string GetLeftPart (UriPartial part) 
-               {
-                       EnsureAbsoluteUri ();
-                       int defaultPort;
-                       switch (part) {                         
-                       case UriPartial.Scheme : 
-                               return scheme + GetOpaqueWiseSchemeDelimiter ();
-                       case UriPartial.Authority :
-                               if ((scheme == Uri.UriSchemeMailto) || (scheme == Uri.UriSchemeNews))
-                                       return String.Empty;
-                                       
-                               StringBuilder s = new StringBuilder ();
-                               s.Append (scheme);
-                               s.Append (GetOpaqueWiseSchemeDelimiter ());
-                               if (path.Length > 1 && path [1] == ':' && (Uri.UriSchemeFile == scheme)) 
-                                       s.Append ('/');  // win32 file
-                               if (userinfo != null) 
-                                       s.Append (userinfo).Append ('@');
-                               s.Append (host);
-                               defaultPort = GetDefaultPort (scheme);
-                               if ((port != -1) && (port != defaultPort))
-                                       s.Append (':').Append (port);                    
-                               return s.ToString ();                           
-                       case UriPartial.Path :
-                               StringBuilder sb = new StringBuilder ();
-                               sb.Append (scheme);
-                               sb.Append (GetOpaqueWiseSchemeDelimiter ());
-                               if (path.Length > 1 && path [1] == ':' && (Uri.UriSchemeFile == scheme)) 
-                                       sb.Append ('/');  // win32 file
-                               if (userinfo != null) 
-                                       sb.Append (userinfo).Append ('@');
-                               sb.Append (host);
-                               defaultPort = GetDefaultPort (scheme);
-                               if ((port != -1) && (port != defaultPort))
-                                       sb.Append (':').Append (port);
-
-                               if (path.Length > 0) {
-                                       if (scheme == "mailto" || scheme == "news")
-                                               sb.Append (path);
-                                       else 
-                                               sb.Append (Reduce (path, CompactEscaped (scheme)));
-                               }
-                               return sb.ToString ();
-                       }
-                       return null;
-               }
-
-               public static int FromHex (char digit) 
-               {
-                       if ('0' <= digit && digit <= '9') {
-                               return (int) (digit - '0');
-                       }
-                               
-                       if ('a' <= digit && digit <= 'f')
-                               return (int) (digit - 'a' + 10);
-
-                       if ('A' <= digit && digit <= 'F')
-                               return (int) (digit - 'A' + 10);
-                               
-                       throw new ArgumentException ("digit");
-               }
-
-               public static string HexEscape (char character) 
-               {
-                       if (character > 255) {
-                               throw new ArgumentOutOfRangeException ("character");
-                       }
-                       
-                       return "%" + hexUpperChars [((character & 0xf0) >> 4)] 
-                                  + hexUpperChars [((character & 0x0f))];
-               }
-
-               public static char HexUnescape (string pattern, ref int index) 
-               {
-                       if (pattern == null) 
-                               throw new ArgumentException ("pattern");
-                               
-                       if (index < 0 || index >= pattern.Length)
-                               throw new ArgumentOutOfRangeException ("index");
-
-                       if (!IsHexEncoding (pattern, index))
-                               return pattern [index++];
-
-                       index++;
-                       int msb = FromHex (pattern [index++]);
-                       int lsb = FromHex (pattern [index++]);
-                       return (char) ((msb << 4) | lsb);
-               }
-
-               public static bool IsHexDigit (char character) 
-               {
-                       return (('0' <= character && character <= '9') ||
-                               ('a' <= character && character <= 'f') ||
-                               ('A' <= character && character <= 'F'));
-               }
-
-               public static bool IsHexEncoding (string pattern, int index) 
-               {
-                       if ((index + 3) > pattern.Length)
-                               return false;
-
-                       return ((pattern [index++] == '%') &&
-                               IsHexDigit (pattern [index++]) &&
-                               IsHexDigit (pattern [index]));
-               }
-
-               //
-               // Implemented by copying most of the MakeRelative code
-               //
-               public Uri MakeRelativeUri (Uri uri)
-               {
-                       if (uri == null)
-                               throw new ArgumentNullException ("uri");
-                       if (Host != uri.Host || Scheme != uri.Scheme)
-                               return uri;
-
-                       string result = String.Empty;
-                       if (this.path != uri.path){
-                               string [] segments = this.Segments;
-                               string [] segments2 = uri.Segments;
-                               
-                               int k = 0;
-                               int max = Math.Min (segments.Length, segments2.Length);
-                               for (; k < max; k++)
-                                       if (segments [k] != segments2 [k]) 
-                                               break;
-                               
-                               for (int i = k; i < segments.Length && segments [i].EndsWith ("/", StringComparison.Ordinal); i++)
-                                       result += "../";
-                               for (int i = k; i < segments2.Length; i++)
-                                       result += segments2 [i];
-                               
-                               if (result == string.Empty)
-                                       result = "./";
-                       }
-                       uri.AppendQueryAndFragment (ref result);
-
-                       return new Uri (result, UriKind.Relative);
-               }
-
-               [Obsolete ("Use MakeRelativeUri(Uri uri) instead.")]
-               public string MakeRelative (Uri toUri) 
-               {
-                       if ((this.Scheme != toUri.Scheme) ||
-                           (this.Authority != toUri.Authority))
-                               return toUri.ToString ();
-
-                       string result = String.Empty;
-                       if (this.path != toUri.path){
-                               string [] segments = this.Segments;
-                               string [] segments2 = toUri.Segments;
-                               int k = 0;
-                               int max = Math.Min (segments.Length, segments2.Length);
-                               for (; k < max; k++)
-                                       if (segments [k] != segments2 [k]) 
-                                               break;
-                               
-                               for (int i = k + 1; i < segments.Length; i++)
-                                       result += "../";
-                               for (int i = k; i < segments2.Length; i++)
-                                       result += segments2 [i];
-                       }
-
-                       // Important: MakeRelative does not append fragment or query.
-
-                       return result;
-               }
-
-               void AppendQueryAndFragment (ref string result)
-               {
-                       if (query.Length > 0) {
-                               string q = query [0] == '?' ? '?' + Unescape (query.Substring (1), true, false) : Unescape (query, false);
-                               result += q;
-                       }
-                       if (fragment.Length > 0)
-                               result += Unescape (fragment, true, false);
-               }
-               
-               public override string ToString () 
-               {
-                       if (cachedToString != null) 
-                               return cachedToString;
-
-                       if (isAbsoluteUri) {
-                               if (Parser is DefaultUriParser)
-                                       cachedToString = Parser.GetComponentsHelper (this, UriComponents.AbsoluteUri, UriHelper.ToStringUnescape);
-                               else
-                                       cachedToString = Parser.GetComponents (this, UriComponents.AbsoluteUri, UriFormat.SafeUnescaped);
-                       } else
-                               cachedToString = UriHelper.FormatRelative (source, scheme, UriHelper.ToStringUnescape);
-
-                       return cachedToString;
-               }
-
-               protected void GetObjectData (SerializationInfo serializationInfo, StreamingContext streamingContext)
-               {
-                       if (this.isAbsoluteUri) {
-                               serializationInfo.AddValue ("AbsoluteUri", this.AbsoluteUri);
-                       } else {
-                               serializationInfo.AddValue ("AbsoluteUri", String.Empty);
-                               serializationInfo.AddValue ("RelativeUri", this.OriginalString);
-                       }
-               }
-
-               void ISerializable.GetObjectData (SerializationInfo info, StreamingContext context)
-               {
-                       GetObjectData (info, context);
-               }
-
-
-               // Internal Methods             
-
-               [Obsolete]
-               protected virtual void Escape ()
-               {
-                       path = EscapeString (path);
-               }
-
-               [Obsolete]
-               protected static string EscapeString (string str) 
-               {
-                       return EscapeString (str, Uri.EscapeCommonHexBrackets);
-               }
-
-               private const string EscapeCommon = "<>%\"{}|\\^`";
-               private const string EscapeReserved = ";/?:@&=+$,";
-               private const string EscapeFragment = "#";
-               private const string EscapeBrackets = "[]";
-
-               private const string EscapeNews = EscapeCommon + EscapeBrackets + "?";
-               private const string EscapeCommonHex = EscapeCommon + EscapeFragment;
-               private const string EscapeCommonBrackets = EscapeCommon + EscapeBrackets;
-               internal const string EscapeCommonHexBrackets = EscapeCommon + EscapeFragment + EscapeBrackets;
-               internal const string EscapeCommonHexBracketsQuery = EscapeCommonHexBrackets + "?";
-
-               internal static string EscapeString (string str, string escape)
-               {
-                       return EscapeString (str, escape, true);
-               }
-
-               internal static string EscapeString (string str, string escape, bool nonAsciiEscape) 
-               {
-                       if (String.IsNullOrEmpty (str))
-                               return String.Empty;
-                       
-                       StringBuilder s = new StringBuilder ();
-                       int len = str.Length;   
-                       for (int i = 0; i < len; i++) {
-                               // reserved    = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | ","
-                               // mark        = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")"
-                               // control     = <US-ASCII coded characters 00-1F and 7F hexadecimal>
-                               // space       = <US-ASCII coded character 20 hexadecimal>
-                               // delims      = "<" | ">" | "#" | "%" | <">
-                               // unwise      = "{" | "}" | "|" | "\" | "^" | "[" | "]" | "`"
-
-                               // check for escape code already placed in str, 
-                               // i.e. for encoding that follows the pattern 
-                               // "%hexhex" in a string, where "hex" is a digit from 0-9 
-                               // or a letter from A-F (case-insensitive).
-                               if (IsHexEncoding (str,i)) {
-                                       // if ,yes , copy it as is
-                                       s.Append (str.Substring (i, 3));
-                                       i += 2;
-                                       continue;
-                               }
-
-                               char c = str [i];
-                               bool outside_limited_ascii = ((c <= 0x20) || (c >= 0x7f));
-                               bool needs_escape = (escape.IndexOf (c) != -1);
-                               if (nonAsciiEscape && outside_limited_ascii) {
-                                       byte [] data = Encoding.UTF8.GetBytes (new char [] { c });
-                                       int length = data.Length;
-                                       for (int j = 0; j < length; j++) {
-                                               c = (char) data [j];
-                                               if (needs_escape || nonAsciiEscape)
-                                                       s.Append (HexEscape (c));
-                                               else
-                                                       s.Append (c);
-                                       }
-                               } else if (needs_escape) {
-                                       s.Append (HexEscape (c));
-                               } else {
-                                       s.Append (c);
-                               }
-                       }
-                       
-                       return s.ToString ();
-               }
-
-               // On .NET 1.x, this method is called from .ctor(). When overriden, we 
-               // can avoid the "absolute uri" constraints of the .ctor() by
-               // overriding with custom code.
-               [Obsolete("The method has been deprecated. It is not used by the system.")]
-               protected virtual void Parse ()
-               {
-               }
-
-               private void ParseUri (UriKind kind)
-               {
-                       Parse (kind, source);
-
-                       if (host.Length > 1 && host [0] != '[' && host [host.Length - 1] != ']') {
-                               // host name present (but not an IPv6 address)
-                               host = host.ToLower (CultureInfo.InvariantCulture);
-                       }
-               }
-
-               [Obsolete]
-               protected virtual string Unescape (string path)
-               {
-                       var formatFlags = UriHelper.FormatFlags.NoSlashReplace | UriHelper.FormatFlags.NoReduce;
-                       return UriHelper.FormatAbsolute (path, scheme, UriComponents.Path, UriFormat.Unescaped, formatFlags);
-               }
-
-               internal static string Unescape (string str, bool excludeSpecial)
-               {
-                       return Unescape (str, excludeSpecial, excludeSpecial);
-               }
-               
-               internal static string Unescape (string str, bool excludeSpecial, bool excludeBackslash) 
-               {
-                       if (String.IsNullOrEmpty (str))
-                               return String.Empty;
-
-                       StringBuilder s = new StringBuilder ();
-                       int len = str.Length;
-                       for (int i = 0; i < len; i++) {
-                               char c = str [i];
-                               if (c == '%') {
-                                       char surrogate;
-                                       char x = HexUnescapeMultiByte (str, ref i, out surrogate);
-                                       if (excludeSpecial && x == '#')
-                                               s.Append ("%23");
-                                       else if (excludeSpecial && x == '%')
-                                               s.Append ("%25");
-                                       else if (excludeSpecial && x == '?')
-                                               s.Append ("%3F");
-                                       else if (excludeBackslash && x == '\\')
-                                               s.Append ("%5C");
-                                       else {
-                                               s.Append (x);
-                                               if (surrogate != char.MinValue)
-                                                       s.Append (surrogate);
-                                       }
-                                       i--;
-                               } else
-                                       s.Append (c);
-                       }
-                       return s.ToString ();
-               }
-
-               
-               // Private Methods
-               
-               private void ParseAsWindowsUNC (string uriString)
-               {
-                       scheme = UriSchemeFile;
-                       port = -1;
-                       fragment = String.Empty;
-                       query = String.Empty;
-                       isUnc = true;
-
-                       uriString = uriString.TrimStart (new char [] {'\\'});
-                       int pos = uriString.IndexOf ('\\');
-                       if (pos > 0) {
-                               path = uriString.Substring (pos);
-                               host = uriString.Substring (0, pos);
-                       } else { // "\\\\server"
-                               host = uriString;
-                               path = String.Empty;
-                       }
-                       path = path.Replace ("\\", "/");
-               }
-
-               //
-               // Returns null on success, string with error on failure
-               //
-               private string ParseAsWindowsAbsoluteFilePath (string uriString)
-               {
-                       if (uriString.Length > 2 && uriString [2] != '\\' && uriString [2] != '/')
-                               return "Relative file path is not allowed.";
-                       scheme = UriSchemeFile;
-                       host = String.Empty;
-                       port = -1;
-                       path = uriString.Replace ("\\", "/");
-                       fragment = String.Empty;
-                       query = String.Empty;
-
-                       return null;
-               }
-
-               private void ParseAsUnixAbsoluteFilePath (string uriString)
-               {
-                       scheme = UriSchemeFile;
-                       port = -1;
-                       fragment = String.Empty;
-                       query = String.Empty;
-                       host = String.Empty;
-                       path = null;
-
-                       if (uriString.Length >= 2 && uriString [0] == '/' && uriString [1] == '/') {
-                               uriString = uriString.TrimStart (new char [] {'/'});
-                               // Now we don't regard //foo/bar as "foo" host.
-                               /* 
-                               int pos = uriString.IndexOf ('/');
-                               if (pos > 0) {
-                                       path = '/' + uriString.Substring (pos + 1);
-                                       host = uriString.Substring (0, pos);
-                               } else { // "///server"
-                                       host = uriString;
-                                       path = String.Empty;
-                               }
-                               */
-                               path = '/' + uriString;
-                       }
-                       if (path == null)
-                               path = uriString;
-               }
-
-               //
-               // This parse method will throw exceptions on failure
-               //  
-               private void Parse (UriKind kind, string uriString)
-               {                       
-                       if (uriString == null)
-                               throw new ArgumentNullException ("uriString");
-
-                       string s = ParseNoExceptions (kind, uriString);
-                       if (s != null)
-                               throw new UriFormatException (s);
-               }
-
-               private bool SupportsQuery ()
-               {
-                       return UriHelper.SupportsQuery (scheme);
-               }
-
-
-               private string ParseNoExceptions (UriKind kind, string uriString)
-               {
-                       UriElements elements;
-                       string error;
-                       if (!UriParseComponents.TryParseComponents (source, kind, out elements, out error))
-                               return error;
-
-                       scheme = elements.scheme;
-                       var parser = UriParser.GetParser (scheme);
-                       if (parser != null && !(parser is DefaultUriParser)) {
-                               userinfo = Parser.GetComponents (this, UriComponents.UserInfo, UriFormat.UriEscaped);
-                               host = Parser.GetComponents (this, UriComponents.Host, UriFormat.UriEscaped);
-
-                               var portStr = Parser.GetComponents (this, UriComponents.StrongPort, UriFormat.UriEscaped);
-                               if (!string.IsNullOrEmpty (portStr))
-                                       port = int.Parse (portStr);
-
-                               path = Parser.GetComponents (this, UriComponents.Path | UriComponents.KeepDelimiter, UriFormat.UriEscaped);
-                               query = Parser.GetComponents (this, UriComponents.Query, UriFormat.UriEscaped);
-                               fragment = Parser.GetComponents (this, UriComponents.StrongPort, UriFormat.UriEscaped);
-
-                               return null;
-                       }
-
-                       var formatFlags = UriHelper.FormatFlags.None;
-                       if (UriHelper.HasCharactersToNormalize (uriString))
-                               formatFlags |= UriHelper.FormatFlags.HasUriCharactersToNormalize;
-
-                       if (userEscaped)
-                               formatFlags |= UriHelper.FormatFlags.UserEscaped;
-
-                       if (elements.host != null)
-                               formatFlags |= UriHelper.FormatFlags.HasHost;
-
-                       userinfo = elements.user;
-
-                       if (elements.host != null) {
-                               host = UriHelper.FormatAbsolute (elements.host, scheme,
-                                       UriComponents.Host, UriFormat.UriEscaped, formatFlags);
-                       }
-
-                       port = elements.port;
-
-                       if (port == -1)
-                               port = GetDefaultPort (scheme);
-
-                       if (elements.path != null) {
-                               path = UriHelper.FormatAbsolute (elements.path, scheme,
-                                       UriComponents.Path, UriFormat.UriEscaped, formatFlags);
-                               if (elements.delimiter == SchemeDelimiter && string.IsNullOrEmpty (path))
-                                       path = "/";
-                       }
-
-                       if (elements.query != null) {
-                               query = "?" + UriHelper.FormatAbsolute (elements.query, scheme,
-                                       UriComponents.Query, UriFormat.UriEscaped, formatFlags);
-                       }
-
-                       if (elements.fragment != null) {
-                               fragment = "#" + UriHelper.FormatAbsolute (elements.fragment, scheme,
-                                       UriComponents.Fragment, UriFormat.UriEscaped, formatFlags);
-                       }
-
-                       isAbsoluteUri = elements.isAbsoluteUri;
-                       isUnc = elements.isUnc;
-                       scope_id = elements.scopeId;
-
-                       return null;
-               }
-               
-               private static string TryGetKnownUriSchemeInstance (string scheme)
-               {
-                       foreach (string knownScheme in knownUriSchemes) {
-                               if (knownScheme == scheme)
-                                       return knownScheme;
-                       }
-                       
-                       return scheme;
-               }
-       
-               private static bool CompactEscaped (string scheme)
-               {
-                       if (scheme == null || scheme.Length < 4)
-                               return false;
-
-                       char first = scheme [0];
-                       if (first == 'h'){
-                               return scheme == "http" || scheme == "https";
-                       } else if (first == 'f' && scheme == "file"){
-                               return true;
-                       } else if (first == 'n')
-                               return scheme == "net.pipe" || scheme == "net.tcp";
-
-                       return false;
-               }
-
-               // replace '\', %5C ('\') and %2f ('/') into '/'
-               // replace %2e ('.') into '.'
-               private static string NormalizePath (string path)
-               {
-                       StringBuilder res = new StringBuilder ();
-                       for (int i = 0; i < path.Length; i++) {
-                               char c = path [i];
-                               switch (c) {
-                               case '\\':
-                                       c = '/';
-                                       break;
-                               case '%':
-                                       if (i < path.Length - 2) {
-                                               char c1 = path [i + 1];
-                                               char c2 = Char.ToUpper (path [i + 2]);
-                                               if ((c1 == '2') && (c2 == 'E')) {
-                                                       c = '.';
-                                                       i += 2;
-                                               } else if (((c1 == '2') && (c2 == 'F')) || ((c1 == '5') && (c2 == 'C'))) {
-                                                       c = '/';
-                                                       i += 2;
-                                               }
-                                       }
-                                       break;
-                               }
-                               res.Append (c);
-                       }
-                       return res.ToString ();
-               }
-
-               // This is called "compacting" in the MSDN documentation
-               private static string Reduce (string path, bool compact_escaped)
-               {
-                       // quick out, allocation-free, for a common case
-                       if (path == "/")
-                               return path;
-
-                       if (compact_escaped && (path.IndexOf ('%') != -1)) {
-                               // replace '\', %2f, %5c with '/' and replace %2e with '.'
-                               // other escaped values seems to survive this step
-                               path = NormalizePath (path);
-                       } else {
-                               // (always) replace '\' with '/'
-                               path = path.Replace ('\\', '/');
-                       }
-
-                       List<string> result = new List<string> ();
-
-                       bool begin = true;
-                       for (int startpos = 0; startpos < path.Length; ) {
-                               int endpos = path.IndexOf ('/', startpos);
-                               if (endpos == -1)
-                                       endpos = path.Length;
-                               string current = path.Substring (startpos, endpos-startpos);
-                               startpos = endpos + 1;
-                               if ((begin && current.Length == 0) || current == "." ) {
-                                       begin = false;
-                                       continue;
-                               }
-
-                               begin = false;
-                               if (current == "..") {
-                                       int resultCount = result.Count;
-                                       // in 2.0 profile, skip leading ".." parts
-                                       if (resultCount == 0) {
-                                               continue;
-                                       }
-
-                                       result.RemoveAt (resultCount - 1);
-                                       continue;
-                               }
-
-                               result.Add (current);
-                       }
-
-                       if (result.Count == 0)
-                               return "/";
-
-                       StringBuilder res = new StringBuilder ();
-
-                       if (path [0] == '/')
-                               res.Append ('/');
-
-                       bool first = true;
-                       foreach (string part in result) {
-                               if (first) {
-                                       first = false;
-                               } else {
-                                       res.Append ('/');
-                               }
-                               res.Append (part);
-                       }
-
-                       if (path [path.Length - 1] == '/')
-                               res.Append ('/');
-                               
-                       return res.ToString ();
-               }
-
-               // A variant of HexUnescape() which can decode multi-byte escaped
-               // sequences such as (e.g.) %E3%81%8B into a single character
-               internal static char HexUnescapeMultiByte (string pattern, ref int index, out char surrogate) 
-               {
-                       bool invalidEscape;
-                       return HexUnescapeMultiByte (pattern, ref index, out surrogate, out invalidEscape);
-               }
-
-               internal static char HexUnescapeMultiByte (string pattern, ref int index, out char surrogate, out bool invalidEscape)
-               {
-                       surrogate = char.MinValue;
-                       invalidEscape = false;
-
-                       if (pattern == null) 
-                               throw new ArgumentException ("pattern");
-                               
-                       if (index < 0 || index >= pattern.Length)
-                               throw new ArgumentOutOfRangeException ("index");
-
-                       if (!IsHexEncoding (pattern, index))
-                               return pattern [index++];
-
-                       int orig_index = index++;
-                       int msb = FromHex (pattern [index++]);
-                       int lsb = FromHex (pattern [index++]);
-
-                       // We might be dealing with a multi-byte character:
-                       // The number of ones at the top-end of the first byte will tell us
-                       // how many bytes will make up this character.
-                       int msb_copy = msb;
-                       int num_bytes = 0;
-                       while ((msb_copy & 0x8) == 0x8) {
-                               num_bytes++;
-                               msb_copy <<= 1;
-                       }
-
-                       // We might be dealing with a single-byte character:
-                       // If there was only 0 or 1 leading ones then we're not dealing
-                       // with a multi-byte character.
-                       if (num_bytes <= 1) {
-                               var c = (char) ((msb << 4) | lsb);
-                               invalidEscape = c > 0x7F;
-                               return c;
-                       }
-
-                       // Now that we know how many bytes *should* follow, we'll check them
-                       // to ensure we are dealing with a valid multi-byte character.
-                       byte [] chars = new byte [num_bytes];
-                       bool all_invalid = false;
-                       chars[0] = (byte) ((msb << 4) | lsb);
-
-                       for (int i = 1; i < num_bytes; i++) {
-                               if (!IsHexEncoding (pattern, index++)) {
-                                       all_invalid = true;
-                                       break;
-                               }
-
-                               // All following bytes must be in the form 10xxxxxx
-                               int cur_msb = FromHex (pattern [index++]);
-                               if ((cur_msb & 0xc) != 0x8) {
-                                       all_invalid = true;
-                                       break;
-                               }
-
-                               int cur_lsb = FromHex (pattern [index++]);
-                               chars[i] = (byte) ((cur_msb << 4) | cur_lsb);
-                       }
-
-                       // If what looked like a multi-byte character is invalid, then we'll
-                       // just return the first byte as a single byte character.
-                       if (all_invalid) {
-                               invalidEscape = true;
-                               index = orig_index + 3;
-                               return (char) chars[0];
-                       }
-
-                       // Otherwise, we're dealing with a valid multi-byte character.
-                       // We need to ignore the leading ones from the first byte:
-                       byte mask = (byte) 0xFF;
-                       mask >>= (num_bytes + 1);
-                       int result = chars[0] & mask;
-
-                       // The result will now be built up from the following bytes.
-                       for (int i = 1; i < num_bytes; i++) {
-                               // Ignore upper two bits
-                               result <<= 6;
-                               result |= (chars[i] & 0x3F);
-                       }
-
-                       if (result <= 0xFFFF) {
-                               return (char) result;
-                       } else {
-                               // We need to handle this as a UTF16 surrogate (i.e. return
-                               // two characters)
-                               result -= 0x10000;
-                               surrogate = (char) ((result & 0x3FF) | 0xDC00);
-                               return (char) ((result >> 10) | 0xD800);
-                       }
-               }
-
-               private struct UriScheme 
-               {
-                       public string scheme;
-                       public string delimiter;
-                       public int defaultPort;
-
-                       public UriScheme (string s, string d, int p) 
-                       {
-                               scheme = s;
-                               delimiter = d;
-                               defaultPort = p;
-                       }
-               };
-
-               static UriScheme [] schemes = new UriScheme [] {
-                       new UriScheme (UriSchemeHttp, SchemeDelimiter, 80),
-                       new UriScheme (UriSchemeHttps, SchemeDelimiter, 443),
-                       new UriScheme (UriSchemeFtp, SchemeDelimiter, 21),
-                       new UriScheme (UriSchemeFile, SchemeDelimiter, -1),
-                       new UriScheme (UriSchemeMailto, ":", 25),
-                       new UriScheme (UriSchemeNews, ":", 119),
-                       new UriScheme (UriSchemeUuid, ":", -1),
-                       new UriScheme (UriSchemeNntp, SchemeDelimiter, 119),
-                       new UriScheme (UriSchemeGopher, SchemeDelimiter, 70),
-               };
-                               
-               internal static string GetSchemeDelimiter (string scheme) 
-               {
-                       for (int i = 0; i < schemes.Length; i++) 
-                               if (schemes [i].scheme == scheme)
-                                       return schemes [i].delimiter;
-                       return Uri.SchemeDelimiter;
-               }
-               
-               internal static int GetDefaultPort (string scheme)
-               {
-                       UriParser parser = UriParser.GetParser (scheme);
-                       if (parser == null)
-                               return -1;
-                       return parser.DefaultPort;
-               }
-
-               private string GetOpaqueWiseSchemeDelimiter ()
-               {
-                       return GetSchemeDelimiter (scheme);
-               }
-
-               [Obsolete]
-               protected virtual bool IsBadFileSystemCharacter (char character)
-               {
-                       // It does not always overlap with InvalidPathChars.
-                       int chInt = (int) character;
-                       if (chInt < 32 || (chInt < 64 && chInt > 57))
-                               return true;
-                       switch (chInt) {
-                       case 0:
-                       case 34: // "
-                       case 38: // &
-                       case 42: // *
-                       case 44: // ,
-                       case 47: // /
-                       case 92: // \
-                       case 94: // ^
-                       case 124: // |
-                               return true;
-                       }
-
-                       return false;
-               }
-
-               [Obsolete]
-               protected static bool IsExcludedCharacter (char character)
-               {
-                       if (character <= 32 || character >= 127)
-                               return true;
-                       
-                       if (character == '"' || character == '#' || character == '%' || character == '<' ||
-                           character == '>' || character == '[' || character == '\\' || character == ']' ||
-                           character == '^' || character == '`' || character == '{' || character == '|' ||
-                           character == '}')
-                               return true;
-                       return false;
-               }
-
-               internal static bool MaybeUri (string s)
-               {
-                       int p = s.IndexOf (':');
-                       if (p == -1)
-                               return false;
-
-                       if (p >= 10)
-                               return false;
-
-                       return IsPredefinedScheme (s.Substring (0, p));
-               }
-               
-               //
-               // Using a simple block of if's is twice as slow as the compiler generated
-               // switch statement.   But using this tuned code is faster than the
-               // compiler generated code, with a million loops on x86-64:
-               //
-               // With "http": .10 vs .51 (first check)
-               // with "https": .16 vs .51 (second check)
-               // with "foo": .22 vs .31 (never found)
-               // with "mailto": .12 vs .51  (last check)
-               //
-               //
-               private static bool IsPredefinedScheme (string scheme)
-               {
-                       if (scheme == null || scheme.Length < 3)
-                               return false;
-                       
-                       char c = scheme [0];
-                       if (c == 'h')
-                               return (scheme == "http" || scheme == "https");
-                       if (c == 'f')
-                               return (scheme == "file" || scheme == "ftp");
-                               
-                       if (c == 'n'){
-                               c = scheme [1];
-                               if (c == 'e')
-                                       return (scheme == "news" || scheme == "net.pipe" || scheme == "net.tcp");
-                               if (scheme == "nntp")
-                                       return true;
-                               return false;
-                       }
-                       if ((c == 'g' && scheme == "gopher") || (c == 'm' && scheme == "mailto"))
-                               return true;
-
-                       return false;
-               }
-
-               [Obsolete]
-               protected virtual bool IsReservedCharacter (char character)
-               {
-                       if (character == '$' || character == '&' || character == '+' || character == ',' ||
-                           character == '/' || character == ':' || character == ';' || character == '=' ||
-                           character == '@')
-                               return true;
-                       return false;
-               }
-
-               [NonSerialized]
-               private UriParser parser;
-
-               private UriParser Parser {
-                       get {
-                               if (parser == null) {
-                                       parser = UriParser.GetParser (scheme);
-                                       // no specific parser ? then use a default one
-                                       if (parser == null)
-                                               parser = new DefaultUriParser ("*");
-                               }
-                               return parser;
-                       }
-                       set { parser = value; }
-               }
-
-               public string GetComponents (UriComponents components, UriFormat format)
-               {
-                       if ((components & UriComponents.SerializationInfoString) == 0)
-                               EnsureAbsoluteUri ();
-
-                       return Parser.GetComponents (this, components, format);
-               }
-
-               public bool IsBaseOf (Uri uri)
-               {
-                       if (uri == null)
-                               throw new ArgumentNullException ("uri");
-                       return Parser.IsBaseOf (this, uri);
-               }
-
-               public bool IsWellFormedOriginalString ()
-               {
-                       // funny, but it does not use the Parser's IsWellFormedOriginalString().
-                       // Also, it seems we need to *not* escape hex.
-                       return EscapeString (OriginalString, EscapeCommonBrackets) == OriginalString;
-               }
-
-               // static methods
-
-               private const int MaxUriLength = 0xfff0;
-
-               public static int Compare (Uri uri1, Uri uri2, UriComponents partsToCompare, UriFormat compareFormat, StringComparison comparisonType)
-               {
-                       if ((comparisonType < StringComparison.CurrentCulture) || (comparisonType > StringComparison.OrdinalIgnoreCase)) {
-                               string msg = Locale.GetText ("Invalid StringComparison value '{0}'", comparisonType);
-                               throw new ArgumentException ("comparisonType", msg);
-                       }
-
-                       if ((uri1 == null) && (uri2 == null))
-                               return 0;
-                       if (uri1 == null)
-                               return -1;
-                       if (uri2 == null)
-                               return 1;
-
-                       string s1 = uri1.GetComponents (partsToCompare, compareFormat);
-                       string s2 = uri2.GetComponents (partsToCompare, compareFormat);
-                       return String.Compare (s1, s2, comparisonType);
-               }
-
-               //
-               // The rules for EscapeDataString
-               //
-               static bool NeedToEscapeDataChar (char b)
-               {
-                       if ((b >= 'A' && b <= 'Z') ||
-                               (b >= 'a' && b <= 'z') ||
-                               (b >= '0' && b <= '9'))
-                               return false;
-
-                       switch (b) {
-                       case '-':
-                       case '.':
-                       case '_':
-                       case '~':
-                               return false;
-                       }
-
-
-                       return true;
-               }
-               
-               public static string EscapeDataString (string stringToEscape)
-               {
-                       if (stringToEscape == null)
-                               throw new ArgumentNullException ("stringToEscape");
-
-                       if (stringToEscape.Length >= MaxUriLength) {
-                               throw new UriFormatException (string.Format ("Uri is longer than the maximum {0} characters.", MaxUriLength));
-                       }
-
-                       bool escape = false;
-                       foreach (char c in stringToEscape){
-                               if (NeedToEscapeDataChar (c)){
-                                       escape = true;
-                                       break;
-                               }
-                       }
-                       if (!escape){
-                               return stringToEscape;
-                       }
-                       
-                       StringBuilder sb = new StringBuilder ();
-                       byte [] bytes = Encoding.UTF8.GetBytes (stringToEscape);
-                       foreach (byte b in bytes){
-                               if (NeedToEscapeDataChar ((char) b))
-                                       sb.Append (HexEscape ((char) b));
-                               else
-                                       sb.Append ((char) b);
-                       }
-                       return sb.ToString ();
-               }
-
-               //
-               // The rules for EscapeUriString
-               //
-               static bool NeedToEscapeUriChar (char b)
-               {
-                       if ((b >= 'A' && b <= 'Z') || (b >= 'a' && b <= 'z') || (b >= '&' && b <= ';'))
-                               return false;
-
-                       switch (b) {
-                       case '!':
-                       case '#':
-                       case '$':
-                       case '=':
-                       case '?':
-                       case '@':
-                       case '_':
-                       case '~':
-                               return false;
-                       case '[':
-                       case ']':
-                               return false;
-                       }
-
-                       return true;
-               }
-               
-               public static string EscapeUriString (string stringToEscape)
-               {
-                       if (stringToEscape == null)
-                               throw new ArgumentNullException ("stringToEscape");
-
-                       if (stringToEscape.Length >= MaxUriLength) {
-                               throw new UriFormatException (string.Format ("Uri is longer than the maximum {0} characters.", MaxUriLength));
-                       }
-
-                       bool escape = false;
-                       foreach (char c in stringToEscape){
-                               if (NeedToEscapeUriChar (c)){
-                                       escape = true;
-                                       break;
-                               }
-                       }
-                       if (!escape)
-                               return stringToEscape;
-
-                       StringBuilder sb = new StringBuilder ();
-                       byte [] bytes = Encoding.UTF8.GetBytes (stringToEscape);
-                       foreach (byte b in bytes){
-                               if (NeedToEscapeUriChar ((char) b))
-                                       sb.Append (HexEscape ((char) b));
-                               else
-                                       sb.Append ((char) b);
-                       }
-                       return sb.ToString ();
-               }
-
-               public static bool IsWellFormedUriString (string uriString, UriKind uriKind)
-               {
-                       if (uriString == null)
-                               return false;
-
-                       Uri uri;
-                       if (Uri.TryCreate (uriString, uriKind, out uri))
-                               return uri.IsWellFormedOriginalString ();
-                       return false;
-               }
-
-               public static bool TryCreate (string uriString, UriKind uriKind, out Uri result)
-               {
-                       bool success;
-
-                       Uri r = new Uri (uriString, uriKind, out success);
-                       if (success) {
-                               result = r;
-                               return true;
-                       }
-                       result = null;
-                       return false;
-               }
-
-               // [MonoTODO ("rework code to avoid exception catching")]
-               public static bool TryCreate (Uri baseUri, string relativeUri, out Uri result)
-               {
-                       result = null;
-                       if (relativeUri == null)
-                               return false;
-
-                       try {
-                               Uri relative = new Uri (relativeUri, UriKind.RelativeOrAbsolute);
-                               if ((baseUri != null) && baseUri.IsAbsoluteUri) {
-                                       // FIXME: this should call UriParser.Resolve
-                                       result = new Uri (baseUri, relative);
-                               } else if (relative.IsAbsoluteUri) {
-                                       // special case - see unit tests
-                                       result = relative;
-                               }
-                               return (result != null);
-                       } catch (UriFormatException) {
-                               return false;
-                       }
-               }
-
-               //[MonoTODO ("rework code to avoid exception catching")]
-               public static bool TryCreate (Uri baseUri, Uri relativeUri, out Uri result)
-               {
-                       result = null;
-                       if ((baseUri == null) || !baseUri.IsAbsoluteUri)
-                               return false;
-                       if (relativeUri == null)
-                               return false;
-                       try {
-                               // FIXME: this should call UriParser.Resolve
-                               result = new Uri (baseUri, relativeUri.OriginalString);
-                               return true;
-                       } catch (UriFormatException) {
-                               return false;
-                       }
-               }
-
-               public static string UnescapeDataString (string stringToUnescape)
-               {
-                       return UnescapeDataString (stringToUnescape, false);
-               }
-
-               internal static string UnescapeDataString (string stringToUnescape, bool safe)
-               {
-                       if (stringToUnescape == null)
-                               throw new ArgumentNullException ("stringToUnescape");
-
-                       if (stringToUnescape.IndexOf ('%') == -1 && stringToUnescape.IndexOf ('+') == -1)
-                               return stringToUnescape;
-
-                       StringBuilder output = new StringBuilder ();
-                       long len = stringToUnescape.Length;
-                       MemoryStream bytes = new MemoryStream ();
-                       int xchar;
-
-                       for (int i = 0; i < len; i++) {
-                               if (stringToUnescape [i] == '%' && i + 2 < len && stringToUnescape [i + 1] != '%') {
-                                       if (stringToUnescape [i + 1] == 'u' && i + 5 < len) {
-                                               if (bytes.Length > 0) {
-                                                       output.Append (GetChars (bytes, Encoding.UTF8));
-                                                       bytes.SetLength (0);
-                                               }
-
-                                               xchar = GetChar (stringToUnescape, i + 2, 4, safe);
-                                               if (xchar != -1) {
-                                                       output.Append ((char) xchar);
-                                                       i += 5;
-                                               }
-                                               else {
-                                                       output.Append ('%');
-                                               }
-                                       }
-                                       else if ((xchar = GetChar (stringToUnescape, i + 1, 2, safe)) != -1) {
-                                               bytes.WriteByte ((byte) xchar);
-                                               i += 2;
-                                       }
-                                       else {
-                                               output.Append ('%');
-                                       }
-                                       continue;
-                               }
-
-                               if (bytes.Length > 0) {
-                                       output.Append (GetChars (bytes, Encoding.UTF8));
-                                       bytes.SetLength (0);
-                               }
-
-                               output.Append (stringToUnescape [i]);
-                       }
-
-                       if (bytes.Length > 0) {
-                               output.Append (GetChars (bytes, Encoding.UTF8));
-                       }
-
-                       bytes = null;
-                       return output.ToString ();
-               }
-
-               private static int GetInt (byte b)
-               {
-                       char c = (char) b;
-                       if (c >= '0' && c <= '9')
-                               return c - '0';
-
-                       if (c >= 'a' && c <= 'f')
-                               return c - 'a' + 10;
-
-                       if (c >= 'A' && c <= 'F')
-                               return c - 'A' + 10;
-
-                       return -1;
-               }
-
-               private static int GetChar (string str, int offset, int length, bool safe)
-               {
-                       int val = 0;
-                       int end = length + offset;
-                       for (int i = offset; i < end; i++) {
-                               char c = str [i];
-                               if (c > 127)
-                                       return -1;
-
-                               int current = GetInt ((byte) c);
-                               if (current == -1)
-                                       return -1;
-                               val = (val << 4) + current;
-                       }
-
-                       if (!safe)
-                               return val;
-
-                       switch ((char) val) {
-                       case '%':
-                       case '#':
-                       case '?':
-                       case '/':
-                       case '\\':
-                       case '@':
-                       case '&': // not documented
-                               return -1;
-                       default:
-                               return val;
-                       }
-               }
-
-               private static char [] GetChars (MemoryStream b, Encoding e)
-               {
-                       return e.GetChars (b.GetBuffer (), 0, (int) b.Length);
-               }
-               
-
-               private void EnsureAbsoluteUri ()
-               {
-                       if (!IsAbsoluteUri)
-                               throw new InvalidOperationException ("This operation is not supported for a relative URI.");
-               }
-       }
-}
diff --git a/mcs/class/System/System/UriBuilder.cs b/mcs/class/System/System/UriBuilder.cs
deleted file mode 100644 (file)
index 6d87873..0000000
+++ /dev/null
@@ -1,298 +0,0 @@
-//
-// System.UriBuilder
-//
-// Author:
-//   Lawrence Pit (loz@cable.a2000.nl)
-//
-// Copyright (C) 2005, 2010 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Runtime.Serialization;
-using System.Text;
-
-// See RFC 2396 for more info on URI's.
-
-namespace System 
-{
-       public class UriBuilder
-       {
-               private string scheme;
-               private string host;
-               private int port;
-               private string path;
-               private string query;
-               private string fragment;
-               private string username;
-               private string password;
-               
-               private Uri uri;
-               private bool modified;
-               
-               
-               // Constructors
-               
-               public UriBuilder ()
-               {
-                       Initialize (Uri.UriSchemeHttp, "localhost", -1, String.Empty, String.Empty);
-               }
-
-               public UriBuilder (string uri)
-               {
-                       if (uri == null)
-                               throw new ArgumentNullException ("uriString");
-
-                       Uri u = null;
-                       if (Uri.TryCreate (uri, UriKind.Absolute, out u)) {
-                               Initialize (u);
-                       } else if (!uri.Contains (Uri.SchemeDelimiter)) {
-                               // second chance, UriBuilder parsing is more forgiving than Uri
-                               Initialize (new Uri (Uri.UriSchemeHttp + Uri.SchemeDelimiter + uri));
-                       } else
-                               throw new UriFormatException ();
-               }
-               
-               public UriBuilder (Uri uri)
-               {
-                       if (uri == null)
-                               throw new ArgumentNullException ("uri");
-                       Initialize (uri);
-               }
-               
-               public UriBuilder (string schemeName, string hostName) 
-               {
-                       Initialize (schemeName, hostName, -1, String.Empty, String.Empty);
-               }
-
-               public UriBuilder (string scheme, string host, int portNumber) 
-               {
-                       Initialize (scheme, host, portNumber, String.Empty, String.Empty);
-               }
-               
-               public UriBuilder (string scheme, string host, int port, string pathValue)
-               {
-                       Initialize (scheme, host, port, pathValue, String.Empty);
-               }
-
-               public UriBuilder (string scheme, string host, int port, string path, string extraValue)
-               {
-                       Initialize (scheme, host, port, path, extraValue);
-               }
-
-               private void Initialize (Uri uri)
-               {
-                       Initialize (uri.Scheme, uri.Host, uri.Port, uri.AbsolutePath, String.Empty);
-                       fragment = uri.Fragment;
-                       query = uri.Query;
-                       username = uri.UserInfo;
-                       int pos = username.IndexOf (':');
-                       if (pos != -1) {
-                               password = username.Substring (pos + 1);
-                               username = username.Substring (0, pos);
-                       } else {
-                               password = String.Empty;
-                       }
-               }
-
-               private void Initialize (string scheme, string host, int port, string pathValue, string extraValue)
-               {
-                       modified = true;
-
-                       Scheme = scheme;
-                       Host = host;
-                       Port = port;
-                       Path = pathValue;
-                       query = String.Empty;
-                       fragment = String.Empty;
-                       Path = pathValue;
-                       username = String.Empty;
-                       password = String.Empty;
-
-                       if (String.IsNullOrEmpty (extraValue))
-                               return;
-
-                       if (extraValue [0] == '#')
-                               Fragment = extraValue.Remove (0, 1);
-                       else if (extraValue [0] == '?')
-                               Query = extraValue.Remove (0, 1);
-                       else
-                               throw new ArgumentException ("extraValue");
-               }
-               
-               // Properties
-               
-               public string Fragment {
-                       get { return fragment; }
-                       set {
-                               fragment = value;
-                               if (fragment == null)
-                                       fragment = String.Empty;
-                               else if (fragment.Length > 0)
-                                       fragment = "#" + value.Replace ("%23", "#");
-                               modified = true;
-                       }
-               }
-
-               public string Host {
-                       get { return host; }
-                       set {
-                               if (String.IsNullOrEmpty (value))
-                                       host = String.Empty;
-                               else if ((value.IndexOf (':') != -1) && (value [0] != '[')) {
-                                       host = "[" + value + "]";
-                               } else {
-                                       host = value;
-                               }
-                               modified = true;
-                       }
-               }
-
-               public string Password {
-                       get { return password; }
-                       set {
-                               password = (value == null) ? String.Empty : value;
-                       }
-               }
-               
-               public string Path {
-                       get { return path; }
-                       set {
-                               if (value == null || value.Length == 0) {
-                                       path = "/";
-                               } else {
-                                       path = Uri.EscapeString (value.Replace ('\\', '/'), Uri.EscapeCommonHexBracketsQuery);
-                               }
-                               modified = true;
-                       }
-               }
-               
-               public int Port {
-                       get { return port; }
-                       set {
-                               if (value < -1)
-                                       throw new ArgumentOutOfRangeException ("value");
-                               // apparently it is
-                               port = value;
-                               modified = true;
-                       }
-               }
-               
-               public string Query {
-                       get { return query; }
-                       set {
-                               // LAMESPEC: it doesn't say to always prepend a 
-                               // question mark to the value.. it does say this 
-                               // for fragment.
-                               if (value == null || value.Length == 0)
-                                       query = String.Empty;
-                               else
-                                       query = "?" + value;
-                               modified = true;
-                       }
-               }
-               
-               public string Scheme {
-                       get { return scheme; }
-                       set {
-                               if (value == null)
-                                       value = String.Empty;
-                               int colonPos = value.IndexOf (':');
-                               if (colonPos != -1)
-                                       value = value.Substring (0, colonPos);
-                               scheme = value.ToLower ();
-                               modified = true;
-                       }
-               }
-               
-               public Uri Uri {
-                       get {
-                               if (!modified) 
-                                       return uri;
-                               uri = new Uri (ToString ());
-                               // some properties are updated once the Uri is created - see unit tests
-                               host = uri.Host;
-                               path = uri.AbsolutePath;
-                               modified = false;
-                               return uri;
-                       }
-               }
-               
-               public string UserName {
-                       get { return username; }
-                       set {
-                               username = (value == null) ? String.Empty : value;
-                               modified = true;
-                       }
-               }
-
-               // Methods
-               
-               public override bool Equals (object rparam) 
-               {
-                       return (rparam == null) ? false : this.Uri.Equals (rparam.ToString ());
-               }
-               
-               public override int GetHashCode ()
-               {
-                       return this.Uri.GetHashCode ();
-               }
-               
-               public override string ToString ()
-               {
-                       StringBuilder builder = new StringBuilder ();
-
-                       builder.Append (scheme);
-                       // note: mailto and news use ':', not "://", as their delimiter
-                       if (UriParser.IsKnownScheme(scheme)) {
-                               builder.Append (Uri.GetSchemeDelimiter (scheme));
-                       }
-                       else {
-                               builder.Append (host.Length > 0 ? Uri.SchemeDelimiter : ":");
-                       }
-
-                       if (username != String.Empty) {
-                               builder.Append (username);
-                               if (password != String.Empty)
-                                       builder.Append (":" + password);
-                               builder.Append ('@');
-                       }
-
-                       if (host.Length > 0) {
-                               builder.Append (host);
-                               if (port > 0)
-                                       builder.Append (":" + port);
-                       }
-
-                       if (path != String.Empty &&
-                           builder [builder.Length - 1] != '/' &&
-                           path.Length > 0 && path [0] != '/' &&
-                               host.Length > 0)
-                               builder.Append ('/');
-                       builder.Append (path);
-                       builder.Append (query);
-                       builder.Append (fragment);
-
-                       return builder.ToString ();
-               }
-       }
-}
diff --git a/mcs/class/System/System/UriData.cs b/mcs/class/System/System/UriData.cs
deleted file mode 100644 (file)
index d23ce33..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-//
-// System.UriData class
-//
-// Author:
-//     Raja R Harinath <harinath@hurrynot.org>
-//
-// Copyright (C) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Collections;
-using System.Globalization;
-using System.Security.Permissions;
-using System.Text;
-
-namespace System {
-       class UriData : IUriData {
-               Uri uri;
-               UriParser parser;
-
-               public UriData (Uri uri, UriParser parser)
-               {
-                       this.uri = uri;
-                       this.parser = parser;
-               }
-
-               string Lookup (ref string cache, UriComponents components)
-               {
-                       return Lookup (ref cache, components, uri.UserEscaped ? UriFormat.Unescaped : UriFormat.UriEscaped);
-               }
-
-               string Lookup (ref string cache, UriComponents components, UriFormat format)
-               {
-                       if (cache == null)
-                               cache = parser.GetComponents (uri, components, format);
-                       return cache;
-               }
-
-               string absolute_path;
-               public string AbsolutePath {
-                       get { return Lookup ( ref absolute_path, UriComponents.Path | UriComponents.KeepDelimiter);
-                       }
-               }
-
-               string absolute_uri;
-               public string AbsoluteUri {
-                       get { return Lookup (ref absolute_uri, UriComponents.AbsoluteUri); }
-               }
-
-               string absolute_uri_unescaped;
-               public string AbsoluteUri_SafeUnescaped {
-                       get { return Lookup (ref absolute_uri_unescaped, UriComponents.AbsoluteUri, UriFormat.SafeUnescaped); }
-               }
-
-               string authority;
-               public string Authority {
-                       get { return Lookup (ref authority, UriComponents.Host | UriComponents.Port); }
-               }
-
-               string fragment;
-               public string Fragment {
-                       get { return Lookup (ref fragment, UriComponents.Fragment | UriComponents.KeepDelimiter); }
-               }
-
-               string host;
-               public string Host {
-                       get { return Lookup (ref host, UriComponents.Host); }
-               }
-
-               string path_and_query;
-               public string PathAndQuery {
-                       get { return Lookup (ref path_and_query, UriComponents.PathAndQuery); }
-               }
-
-               string strong_port;
-               public string StrongPort {
-                       get { return Lookup (ref strong_port, UriComponents.StrongPort); }
-               }
-
-               string query;
-               public string Query {
-                       get { return Lookup (ref query, UriComponents.Query | UriComponents.KeepDelimiter); }
-               }
-
-               string user_info;
-               public string UserInfo {
-                       get { return Lookup (ref user_info, UriComponents.UserInfo); }
-               }
-       }
-}
diff --git a/mcs/class/System/System/UriElements.cs b/mcs/class/System/System/UriElements.cs
deleted file mode 100644 (file)
index ef81062..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-//
-// Internal UriElements class
-//
-// Author:
-//     Vinicius Jarina  <vinicius.jarina@xamarin.com>
-//
-// Copyright (C) 2012 Xamarin, Inc (http://www.xamarin.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System {
-       
-       internal class UriElements
-       {
-               public UriElements()
-               {
-                       scheme = String.Empty;
-                       delimiter = String.Empty;
-                       host = String.Empty;
-                       port = -1;
-                       path = String.Empty;
-
-                       isAbsoluteUri = true;
-               }
-               
-               public string scheme;
-               public string delimiter;
-               public string user;
-               public string host;
-               public int port;
-               public string path;
-               public string query;
-               public string fragment;
-
-               public bool isAbsoluteUri;
-               public bool isUnixFilePath;
-               public bool isUnc;
-               public long scopeId;
-       }
-}
diff --git a/mcs/class/System/System/UriHelper.cs b/mcs/class/System/System/UriHelper.cs
deleted file mode 100644 (file)
index 76a86f8..0000000
+++ /dev/null
@@ -1,596 +0,0 @@
-using System;
-using System.Globalization;
-using System.Text;
-using System.Collections.Generic;
-
-namespace System {
-       internal static class UriHelper {
-               internal const UriFormat ToStringUnescape = (UriFormat) 0x7FFF;
-
-               internal static bool IriParsing {
-                       get { return Uri.IriParsing; }
-               }
-
-               [Flags]
-               internal enum FormatFlags {
-                       None = 0,
-                       HasComponentCharactersToNormalize = 1 << 0,
-                       HasUriCharactersToNormalize = 1 << 1,
-                       HasHost = 1 << 2,
-                       HasFragmentPercentage = 1 << 3,
-                       UserEscaped = 1 << 4,
-                       IPv6Host = 1 << 5,
-                       NoSlashReplace = 1 << 6,
-                       NoReduce = 1 << 7,
-                       HasWindowsPath = 1 << 8,
-               }
-
-               [Flags]
-               internal enum UriSchemes {
-                       Http = 1 << 0,
-                       Https = 1 << 1,
-                       File = 1 << 2,
-                       Ftp = 1 << 3,
-                       Gopher = 1 << 4,
-                       Ldap = 1 << 5,
-                       Mailto = 1 << 6,
-                       NetPipe = 1 << 7,
-                       NetTcp = 1 << 8,
-                       News = 1 << 9,
-                       Nntp = 1 << 10,
-                       Telnet = 1 << 11,
-                       Uuid = 1 << 12,
-                       Custom = 1 << 13,
-                       CustomWithHost = 1 << 14,
-                       All = ~0,
-                       None = 0
-               }
-
-               private static UriSchemes GetScheme (string schemeName)
-               {
-                       schemeName = schemeName.ToLowerInvariant ();
-
-                       if (schemeName == "")
-                               return UriSchemes.None;
-                       if (schemeName == Uri.UriSchemeHttp)
-                               return UriSchemes.Http;
-                       if (schemeName == Uri.UriSchemeHttps)
-                               return UriSchemes.Https;
-                       if (schemeName == Uri.UriSchemeFile)
-                               return UriSchemes.File;
-                       if (schemeName == Uri.UriSchemeFtp)
-                               return UriSchemes.Ftp;
-                       if (schemeName == Uri.UriSchemeGopher)
-                               return UriSchemes.Gopher;
-                       if (schemeName == Uri.UriSchemeLdap)
-                               return UriSchemes.Ldap;
-                       if (schemeName == Uri.UriSchemeMailto)
-                               return UriSchemes.Mailto;
-                       if (schemeName == Uri.UriSchemeNetPipe)
-                               return UriSchemes.NetPipe;
-                       if (schemeName == Uri.UriSchemeNetTcp)
-                               return UriSchemes.NetTcp;
-                       if (schemeName == Uri.UriSchemeNews)
-                               return UriSchemes.News;
-                       if (schemeName == Uri.UriSchemeNntp)
-                               return UriSchemes.Nntp;
-                       if (schemeName == Uri.UriSchemeTelnet)
-                               return UriSchemes.Telnet;
-                       if (schemeName == Uri.UriSchemeUuid)
-                               return UriSchemes.Uuid;
-
-                       return UriSchemes.Custom;
-               }
-
-               internal static bool SchemeContains (UriSchemes keys, UriSchemes flag)
-               {
-                       return (keys & flag) != 0;
-               }
-
-               internal static bool IsKnownScheme (string scheme)
-               {
-                       return GetScheme (scheme) != UriSchemes.Custom;
-               }
-
-               internal static string HexEscapeMultiByte (char character)
-               {
-                       const string hex_upper_chars = "0123456789ABCDEF";
-
-                       var sb = new StringBuilder ();
-                       byte [] bytes = Encoding.UTF8.GetBytes (new [] {character});
-                       foreach (byte b in bytes) {
-                               sb.Append ("%");
-                               sb.Append (hex_upper_chars [(b & 0xf0) >> 4]);
-                               sb.Append (hex_upper_chars [b & 0x0f]);
-                       }
-
-                       return sb.ToString ();
-               }
-
-               internal static bool SupportsQuery (string scheme)
-               {
-                       return SupportsQuery (GetScheme (scheme));
-               }
-
-               internal static bool SupportsQuery (UriSchemes scheme)
-               {
-                       if (SchemeContains (scheme, UriSchemes.File))
-                               return IriParsing;
-
-                       return !SchemeContains (scheme, UriSchemes.Ftp | UriSchemes.Gopher | UriSchemes.Nntp | UriSchemes.Telnet | UriSchemes.News);
-               }
-
-               internal static bool HasCharactersToNormalize (string str)
-               {
-                       int len = str.Length;
-                       for (int i = 0; i < len; i++) {
-                               char c = str [i];
-                               if (c != '%')
-                                       continue;
-
-                               int iStart = i;
-                               char surrogate;
-                               char x = Uri.HexUnescapeMultiByte (str, ref i, out surrogate);
-
-                               bool isEscaped = i - iStart > 1;
-                               if (!isEscaped)
-                                       continue;
-
-                               if ((x >= 'A' && x <= 'Z') || (x >= 'a' && x <= 'z') || (x >= '0' && x <= '9') || 
-                                        x == '-' || x == '.' || x == '_' || x == '~')
-                                       return true;
-
-                               if (x > 0x7f)
-                                       return true;
-                       }
-
-                       return false;
-               }
-
-               internal static bool HasPercentage (string str)
-               {
-                       int len = str.Length;
-                       for (int i = 0; i < len; i++) {
-                               char c = str [i];
-                               if (c != '%')
-                                       continue;
-
-                               int iStart = i;
-                               char surrogate;
-                               char x = Uri.HexUnescapeMultiByte (str, ref i, out surrogate);
-
-                               if (x == '%')
-                                       return true;
-
-                               bool isEscaped = i - iStart > 1;
-                               if (!isEscaped)
-                                       return true;
-                       }
-
-                       return false;
-               }
-
-               internal static string FormatAbsolute (string str, string schemeName,
-                       UriComponents component, UriFormat uriFormat, FormatFlags formatFlags = FormatFlags.None)
-               {
-                       return Format (str, schemeName, UriKind.Absolute, component, uriFormat, formatFlags);
-               }
-
-               internal static string FormatRelative (string str, string schemeName, UriFormat uriFormat)
-               {
-                       return Format (str, schemeName, UriKind.Relative, UriComponents.Path, uriFormat, FormatFlags.None);
-               }
-
-               private static string Format (string str, string schemeName, UriKind uriKind,
-                       UriComponents component, UriFormat uriFormat, FormatFlags formatFlags)
-               {
-                       if (string.IsNullOrEmpty (str))
-                               return "";
-
-                       if (UriHelper.HasCharactersToNormalize (str))
-                               formatFlags |= UriHelper.FormatFlags.HasComponentCharactersToNormalize | FormatFlags.HasUriCharactersToNormalize;
-
-                       if (component == UriComponents.Fragment && UriHelper.HasPercentage (str))
-                               formatFlags |= UriHelper.FormatFlags.HasFragmentPercentage;
-
-                       if (component == UriComponents.Host &&
-                               str.Length > 1 && str [0] == '[' && str [str.Length - 1] == ']')
-                                formatFlags |= UriHelper.FormatFlags.IPv6Host;
-
-                       if (component == UriComponents.Path &&
-                               str.Length >= 2 && str [1] != ':' &&
-                               ('a' <= str [0] && str [0] <= 'z') || ('A' <= str [0] && str [0] <= 'Z'))
-                               formatFlags |= UriHelper.FormatFlags.HasWindowsPath;
-
-                       UriSchemes scheme = GetScheme (schemeName);
-
-                       if (scheme == UriSchemes.Custom && (formatFlags & FormatFlags.HasHost) != 0)
-                               scheme = UriSchemes.CustomWithHost;
-
-                       var reduceAfter = UriSchemes.Http | UriSchemes.Https | UriSchemes.File | UriSchemes.NetPipe | UriSchemes.NetTcp;
-
-                       if (IriParsing) {
-                               reduceAfter |= UriSchemes.Ftp;
-                       } else if (component == UriComponents.Path &&
-                               (formatFlags & FormatFlags.NoSlashReplace) == 0) {
-                               if (scheme == UriSchemes.Ftp)
-                                       str = Reduce (str.Replace ('\\', '/'), !IriParsing);
-                               if (scheme == UriSchemes.CustomWithHost)
-                                       str = Reduce (str.Replace ('\\', '/'), false);
-                       }
-
-                       str = FormatString (str, scheme, uriKind, component, uriFormat, formatFlags);
-
-                       if (component == UriComponents.Path &&
-                               (formatFlags & FormatFlags.NoReduce) == 0) {
-                               if (SchemeContains (scheme, reduceAfter))
-                                       str = Reduce (str, !IriParsing);
-                               if (IriParsing && scheme == UriSchemes.CustomWithHost)
-                                       str = Reduce (str, false);
-                       }
-
-                       return str;
-               }
-
-               private static string FormatString (string str, UriSchemes scheme, UriKind uriKind,
-                       UriComponents component, UriFormat uriFormat, FormatFlags formatFlags)
-               {
-                       var s = new StringBuilder ();
-                       int len = str.Length;
-                       for (int i = 0; i < len; i++) {
-                               char c = str [i];
-                               if (c == '%') {
-                                       int iStart = i;
-                                       char surrogate;
-                                       bool invalidUnescape;
-                                       char x = Uri.HexUnescapeMultiByte (str, ref i, out surrogate, out invalidUnescape);
-
-
-                                       if (invalidUnescape
-                                       ) {
-                                               s.Append (c);
-                                               i = iStart;
-                                               continue;
-                                       }
-
-                                       string cStr = str.Substring (iStart, i-iStart);
-                                       s.Append (FormatChar (x, surrogate, cStr, scheme, uriKind, component, uriFormat, formatFlags));
-
-                                       i--;
-                               } else
-                                       s.Append (FormatChar (c, char.MinValue, "" + c, scheme, uriKind, component, uriFormat, formatFlags));
-                       }
-                       
-                       return s.ToString ();
-               }
-
-               private static string FormatChar (char c, char surrogate, string cStr, UriSchemes scheme, UriKind uriKind,
-                       UriComponents component, UriFormat uriFormat, FormatFlags formatFlags)
-               {
-                       var isEscaped = cStr.Length != 1;
-
-                       var userEscaped = (formatFlags & FormatFlags.UserEscaped) != 0;
-                       if (!isEscaped && !userEscaped && NeedToEscape (c, scheme, component, uriKind, uriFormat, formatFlags))
-                               return HexEscapeMultiByte (c);
-
-                       if (isEscaped && (
-                               (userEscaped && c < 0xFF) ||
-                               !NeedToUnescape (c, scheme, component, uriKind, uriFormat, formatFlags))) {
-                               if (IriParsing &&
-                                       (c == '<' || c == '>' || c == '^' || c == '{' || c == '|' || c ==  '}' || c > 0x7F) &&
-                                       (formatFlags & FormatFlags.HasUriCharactersToNormalize) != 0)
-                                       return cStr.ToUpperInvariant (); //Upper case escape
-
-                               return cStr; //Keep original case
-                       }
-
-                       if ((formatFlags & FormatFlags.NoSlashReplace) == 0 &&
-                               c == '\\' && component == UriComponents.Path) {
-                               if (!IriParsing && uriFormat != UriFormat.UriEscaped &&
-                                       SchemeContains (scheme, UriSchemes.Http | UriSchemes.Https))
-                                       return "/";
-
-                               if (SchemeContains (scheme, UriSchemes.Http | UriSchemes.Https | UriSchemes.Ftp | UriSchemes.CustomWithHost))
-                                       return (isEscaped && uriFormat != UriFormat.UriEscaped) ? "\\" : "/";
-
-                               if (SchemeContains (scheme, UriSchemes.NetPipe | UriSchemes.NetTcp | UriSchemes.File))
-                                       return "/";
-
-                               if (SchemeContains (scheme, UriSchemes.Custom) &&
-                                       (formatFlags & FormatFlags.HasWindowsPath) == 0)
-                                       return "/";
-                       }
-
-                       var ret = c.ToString (CultureInfo.InvariantCulture);
-                       if (surrogate != char.MinValue)
-                               ret += surrogate.ToString (CultureInfo.InvariantCulture);
-
-                       return ret;
-               }
-
-               private static bool NeedToUnescape (char c, UriSchemes scheme, UriComponents component, UriKind uriKind,
-                       UriFormat uriFormat, FormatFlags formatFlags)
-               {
-                       if ((formatFlags & FormatFlags.IPv6Host) != 0)
-                               return false;
-
-                       if (uriFormat == UriFormat.Unescaped)
-                               return true;
-
-                       UriSchemes sDecoders = UriSchemes.NetPipe | UriSchemes.NetTcp;
-
-                       if (!IriParsing)
-                               sDecoders |= UriSchemes.Http | UriSchemes.Https;
-
-                       if (c == '/' || c == '\\') {
-                               if (!IriParsing && uriKind == UriKind.Absolute && uriFormat != UriFormat.UriEscaped &&
-                                       uriFormat != UriFormat.SafeUnescaped)
-                                       return true;
-
-                               if (SchemeContains (scheme, UriSchemes.File)) {
-                                       return component != UriComponents.Fragment &&
-                                                  (component != UriComponents.Query || !IriParsing);
-                               }
-
-                               return component != UriComponents.Query && component != UriComponents.Fragment &&
-                                          SchemeContains (scheme, sDecoders);
-                       }
-
-                       if (c == '?') {
-                               //Avoid creating new query
-                               if (SupportsQuery (scheme) && component == UriComponents.Path)
-                                       return false;
-
-                               if (!IriParsing && uriFormat == ToStringUnescape) {
-                                       if (SupportsQuery (scheme))
-                                               return component == UriComponents.Query || component == UriComponents.Fragment;
-
-                                       return component == UriComponents.Fragment;
-                               }
-
-                               return false;
-                       }
-
-                       if (c == '#')
-                               return false;
-
-                       if (uriFormat == ToStringUnescape && !IriParsing) {
-                               if (uriKind == UriKind.Relative)
-                                       return false;
-
-                               switch (c) {
-                               case '$':
-                               case '&':
-                               case '+':
-                               case ',':
-                               case ';':
-                               case '=':
-                               case '@':
-                                       return true;
-                               }
-
-                               if (c < 0x20 || c == 0x7f)
-                                       return true;
-                       }
-
-                       if (uriFormat == UriFormat.SafeUnescaped || uriFormat == ToStringUnescape) {
-                               switch (c) {
-                               case '-':
-                               case '.':
-                               case '_':
-                               case '~':
-                                       return true;
-                               case ' ':
-                               case '!':
-                               case '"':
-                               case '\'':
-                               case '(':
-                               case ')':
-                               case '*':
-                               case '<':
-                               case '>':
-                               case '^':
-                               case '`':
-                               case '{':
-                               case '}':
-                               case '|':
-                                       return uriKind != UriKind.Relative ||
-                                               (IriParsing && (formatFlags & FormatFlags.HasUriCharactersToNormalize) != 0);
-                               case ':':
-                               case '[':
-                               case ']':
-                                       return uriKind != UriKind.Relative;
-                               }
-
-                               if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9'))
-                                       return true;
-
-                               if (c > 0x7f)
-                                       return true;
-
-                               return false;
-                       }
-
-                       if (uriFormat == UriFormat.UriEscaped) {
-                               if (!IriParsing) {
-                                       if (c == '.') {
-                                               if (SchemeContains (scheme, UriSchemes.File))
-                                                       return component != UriComponents.Fragment;
-
-                                               return component != UriComponents.Query && component != UriComponents.Fragment &&
-                                                          SchemeContains (scheme, sDecoders);
-                                       }
-
-                                       return false;
-                               }
-                               
-                               switch (c) {
-                               case '-':
-                               case '.':
-                               case '_':
-                               case '~':
-                                       return true;
-                               }
-
-                               if ((formatFlags & FormatFlags.HasUriCharactersToNormalize) != 0) {
-                                       switch (c) {
-                                       case '!':
-                                       case '\'':
-                                       case '(':
-                                       case ')':
-                                       case '*':
-                                       case ':':
-                                       case '[':
-                                       case ']':
-                                               return true;
-                                       }
-                               }
-
-                               if ((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9'))
-                                       return true;
-
-                               return false;
-                       }
-
-                       return false;
-               }
-
-               private static bool NeedToEscape (char c, UriSchemes scheme, UriComponents component, UriKind uriKind,
-                       UriFormat uriFormat, FormatFlags formatFlags)
-               {
-                       if ((formatFlags & FormatFlags.IPv6Host) != 0)
-                               return false;
-
-                       if (c == '?') {
-                               if (uriFormat == UriFormat.Unescaped)
-                                       return false;
-
-                               if (!SupportsQuery (scheme))
-                                       return component != UriComponents.Fragment;
-
-                               return false;
-                       }
-
-                       if (c == '#') {
-                               //Avoid removing fragment
-                               if (component == UriComponents.Path || component == UriComponents.Query)
-                                       return false;
-
-                               if (component == UriComponents.Fragment &&
-                                       (uriFormat == ToStringUnescape || uriFormat == UriFormat.SafeUnescaped) &&
-                                       (formatFlags & FormatFlags.HasFragmentPercentage) != 0)
-                                       return true;
-
-                               return false;
-                       }
-
-                       if (uriFormat == UriFormat.SafeUnescaped || uriFormat == ToStringUnescape) {
-                               if (c == '%')
-                                       return uriKind != UriKind.Relative;
-                       }
-
-                       if (uriFormat == UriFormat.SafeUnescaped) {
-                               if (c < 0x20 || c == 0x7F)
-                                       return true;
-                       }
-
-                       if (uriFormat == UriFormat.UriEscaped) {
-                               if (c < 0x20 || c >= 0x7F)
-                                       return component != UriComponents.Host;
-
-                               switch (c) {
-                               case ' ':
-                               case '"':
-                               case '%':
-                               case '<':
-                               case '>':
-                               case '^':
-                               case '`':
-                               case '{':
-                               case '}':
-                               case '|':
-                                       return true;
-                               case '[':
-                               case ']':
-                                       return !IriParsing;
-                               case '\\':
-                                       return component != UriComponents.Path ||
-                                                  SchemeContains (scheme,
-                                                          UriSchemes.Gopher | UriSchemes.Ldap | UriSchemes.Mailto | UriSchemes.Nntp |
-                                                          UriSchemes.Telnet | UriSchemes.News | UriSchemes.Custom);
-                               }
-                       }
-
-                       return false;
-               }
-
-               // This is called "compacting" in the MSDN documentation
-               internal static string Reduce (string path, bool trimDots)
-               {
-                       // quick out, allocation-free, for a common case
-                       if (path == "/")
-                               return path;
-
-                       bool endWithSlash = false;
-
-                       List<string> result = new List<string> ();
-
-                       string[] segments = path.Split ('/');
-                       int lastSegmentIndex = segments.Length - 1;
-                       for (var i = 0; i <= lastSegmentIndex; i++) {
-                               string segment = segments [i];
-
-                               if (i == lastSegmentIndex &&
-                                       (segment.Length == 0 || segment == ".." || segment == "."))
-                                       endWithSlash = true;
-
-                               if ((i == 0 || i == lastSegmentIndex) && segment.Length == 0)
-                                       continue;
-
-                               if (segment == "..") {
-                                       int resultCount = result.Count;
-                                       // in 2.0 profile, skip leading ".." parts
-                                       if (resultCount == 0)
-                                               continue;
-
-                                       result.RemoveAt (resultCount - 1);
-                                       continue;
-                               }
-
-                               if (segment == "." ||
-                                       (trimDots && segment.EndsWith (".", StringComparison.Ordinal))) {
-                                       segment = segment.TrimEnd ('.');
-                                       if (segment == "" && i < lastSegmentIndex)
-                                               continue;
-                               }
-
-                               endWithSlash = false;
-
-                               result.Add (segment);
-                       }
-
-                       if (result.Count == 0)
-                               return "/";
-
-                       StringBuilder res = new StringBuilder ();
-
-                       if (path [0] == '/')
-                               res.Append ('/');
-
-                       bool first = true;
-                       foreach (string part in result) {
-                               if (first) {
-                                       first = false;
-                               } else {
-                                       res.Append ('/');
-                               }
-                               res.Append (part);
-                       }
-
-                       if (path [path.Length - 1] == '/' || endWithSlash)
-                               res.Append ('/');
-                               
-                       return res.ToString ();
-               }
-       }
-}
diff --git a/mcs/class/System/System/UriParseComponents.cs b/mcs/class/System/System/UriParseComponents.cs
deleted file mode 100644 (file)
index 593ef05..0000000
+++ /dev/null
@@ -1,566 +0,0 @@
-//
-// Internal UriParseComponents class
-//
-// Author:
-//     Vinicius Jarina  <vinicius.jarina@xamarin.com>
-//
-// Copyright (C) 2012 Xamarin, Inc (http://www.xamarin.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.IO;
-using System.Net;
-using System.Text;
-using System.Globalization;
-
-namespace System {
-       
-       internal class ParserState
-       {
-               public ParserState (string uri, UriKind kind)
-               {
-                       remaining = uri;
-                       this.kind = kind;
-                       elements  = new UriElements ();
-               }
-               
-               public string remaining;
-               public UriKind kind;
-               public UriElements elements;
-               public string error;
-       }
-       
-       // Parse Uri components (scheme, userinfo, host, query, fragment)
-       // http://www.ietf.org/rfc/rfc3986.txt
-       internal static class UriParseComponents
-       {
-               public static UriElements ParseComponents (string uri, UriKind kind)
-               {
-                       UriElements elements;
-                       string error;
-
-                       if (!TryParseComponents (uri, kind, out elements, out error))
-                               throw new UriFormatException (error);
-
-                       return elements;
-               }
-
-               public static bool TryParseComponents (string uri, UriKind kind, out UriElements elements, out string error)
-               {
-                       uri = uri.Trim ();
-
-                       ParserState state = new ParserState (uri, kind);
-                       elements = state.elements;
-                       error = null;
-
-                       if (uri.Length == 0 && (kind == UriKind.Relative || kind == UriKind.RelativeOrAbsolute)){
-                               state.elements.isAbsoluteUri = false;
-                               return true;
-                       }
-                       
-                       if (uri.Length <= 1 && kind == UriKind.Absolute) {
-                               error = "Absolute URI is too short";
-                               return false;
-                       }
-
-                       bool ok = ParseFilePath (state) &&
-                               ParseScheme (state);
-
-                       var scheme = state.elements.scheme;
-                       UriParser parser = null;
-                       if (!string.IsNullOrEmpty (scheme)) {
-                               parser = UriParser.GetParser (scheme);
-                               if (parser != null && !(parser is DefaultUriParser))
-                                       return true;
-                       }
-
-                       ok = ok &&
-                               ParseAuthority (state) &&
-                               ParsePath (state) &&
-                               ParseQuery (state) &&
-                               ParseFragment (state);
-
-                       if (string.IsNullOrEmpty (state.elements.host) &&
-                               (scheme == Uri.UriSchemeHttp || scheme == Uri.UriSchemeGopher || scheme == Uri.UriSchemeNntp ||
-                               scheme == Uri.UriSchemeHttps || scheme == Uri.UriSchemeFtp))
-                               state.error = "Invalid URI: The Authority/Host could not be parsed.";
-
-                       if (!string.IsNullOrEmpty (state.elements.host) &&
-                               Uri.CheckHostName (state.elements.host) == UriHostNameType.Unknown)
-                               state.error = "Invalid URI: The hostname could not be parsed.";
-
-                       if (!string.IsNullOrEmpty (state.error)) {
-                               elements = null;
-                               error = state.error;
-                               return false;
-                       }
-                       
-                       return true;
-               }
-
-                               // ALPHA
-               private static bool IsAlpha (char ch)
-               {
-                       return (('a' <= ch) && (ch <= 'z')) ||
-                                  (('A' <= ch) && (ch <= 'Z'));
-               }
-
-               private static bool ParseFilePath (ParserState state)
-               {
-                       return ParseWindowsFilePath (state) &&
-                               ParseWindowsUNC (state) &&
-                               ParseUnixFilePath (state);
-               }
-
-               private static bool ParseWindowsFilePath (ParserState state)
-               {
-                       var scheme = state.elements.scheme;
-
-                       if (!string.IsNullOrEmpty (scheme) &&
-                                scheme != Uri.UriSchemeFile && UriHelper.IsKnownScheme (scheme))
-                               return state.remaining.Length > 0;
-
-                       string part = state.remaining;
-
-                       if (part.Length > 0 && (part [0] == '/' || part [0] == '\\'))
-                               part = part.Substring (1);
-
-                       if (part.Length < 2 || part [1] != ':')
-                               return state.remaining.Length > 0;
-
-                       if (!IsAlpha (part [0])) {
-                               if (state.kind == UriKind.Absolute) {
-                                       state.error = "Invalid URI: The URI scheme is not valid.";
-                                       return false;
-                               }
-                               state.elements.isAbsoluteUri = false;
-                               state.elements.path = part;
-                               return false;
-                       }
-
-                       if (part.Length > 2 && part [2] != '\\' && part [2] != '/') {
-                               state.error = "Relative file path is not allowed.";
-                               return false;
-                       }
-
-                       if (string.IsNullOrEmpty (scheme)) {
-                               state.elements.scheme = Uri.UriSchemeFile;
-                               state.elements.delimiter = "://";
-                       }
-
-                       state.elements.path = part.Replace ("\\", "/");
-
-                       return false;
-               }
-
-               private static bool ParseWindowsUNC (ParserState state)
-               {
-                       string part = state.remaining;
-
-                       if (part.Length < 2 || part [0] != '\\' || part [1] != '\\')
-                               return state.remaining.Length > 0;
-
-                       state.elements.scheme = Uri.UriSchemeFile;
-                       state.elements.delimiter = "://";
-                       state.elements.isUnc = true;
-
-                       part = part.TrimStart ('\\');
-                       int pos = part.IndexOf ('\\');
-                       if (pos > 0) {
-                               state.elements.path = part.Substring (pos);
-                               state.elements.host = part.Substring (0, pos);
-                       } else { // "\\\\server"
-                               state.elements.host = part;
-                               state.elements.path = String.Empty;
-                       }
-                       state.elements.path = state.elements.path.Replace ("\\", "/");
-
-                       return false;
-               }
-
-               private static bool ParseUnixFilePath (ParserState state)
-               {
-                       string part = state.remaining;
-
-                       if (part.Length < 1 || part [0] != '/' || Path.DirectorySeparatorChar != '/')
-                               return state.remaining.Length > 0;
-
-                       state.elements.scheme = Uri.UriSchemeFile;
-                       state.elements.delimiter = "://";
-                       state.elements.isUnixFilePath = true;
-                       state.elements.isAbsoluteUri = (state.kind == UriKind.Relative)? false : true;
-
-                       if (part.Length >= 2 && part [0] == '/' && part [1] == '/') {
-                               part = part.TrimStart (new char [] {'/'});
-                               state.elements.path = '/' + part;
-                       } else
-                               state.elements.path = part;
-
-                       return false;
-               }
-               
-               // 3.1) scheme      = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )
-               private static bool ParseScheme (ParserState state)
-               {
-                       string part = state.remaining;
-                       
-                       StringBuilder sb = new StringBuilder ();
-                       sb.Append (part [0]);
-                       
-                       int index;
-                       for (index = 1; index < part.Length; index++ ) {
-                               char ch = part [index];
-                               if (ch != '.' && ch != '-' && ch != '+' && !IsAlpha (ch) && !Char.IsDigit (ch))
-                                       break;
-                               
-                               sb.Append (ch);
-                       }
-                       
-                       if (index == 0 || index >= part.Length) {
-                               if (state.kind == UriKind.Absolute) {
-                                       state.error = "Invalid URI: The format of the URI could not be determined.";
-                                       return false;
-                               }
-
-                               state.elements.isAbsoluteUri = false;
-                               return state.remaining.Length > 0;
-                       }
-
-                       if (part [index] != ':') {
-                               if (state.kind == UriKind.Absolute) {
-                                       state.error = "Invalid URI: The URI scheme is not valid.";
-                                       return false;
-                               }
-
-                               state.elements.isAbsoluteUri = false;
-                               return state.remaining.Length > 0;
-                       }
-
-                       state.elements.scheme = sb.ToString ().ToLowerInvariant ();
-                       state.remaining = part.Substring (index);
-
-                       // Check scheme name characters as specified in RFC2396.
-                       // Note: different checks in 1.x and 2.0
-                       if (!Uri.CheckSchemeName (state.elements.scheme)) {
-                               if (state.kind == UriKind.Absolute) {
-                                       state.error = "Invalid URI: The URI scheme is not valid.";
-                                       return false;
-                               }
-
-                               state.elements.isAbsoluteUri = false;
-                               return state.remaining.Length > 0;
-                       }
-
-                       return ParseDelimiter (state);
-               }
-
-               private static bool ParseDelimiter (ParserState state)
-               {
-                       var delimiter = Uri.GetSchemeDelimiter (state.elements.scheme);
-
-                       if (!state.remaining.StartsWith (delimiter, StringComparison.Ordinal)) {
-                               if (UriHelper.IsKnownScheme (state.elements.scheme)) {
-                                       state.error = "Invalid URI: The Authority/Host could not be parsed.";
-                                       return false;
-                               }
-
-                               delimiter = ":";
-                       }
-                               
-                       state.elements.delimiter = delimiter;
-
-                       state.remaining = state.remaining.Substring (delimiter.Length);
-
-                       return state.remaining.Length > 0;
-               }
-               
-               private static bool ParseAuthority (ParserState state)
-               {
-                       if (state.elements.delimiter != Uri.SchemeDelimiter && state.elements.scheme != Uri.UriSchemeMailto)
-                               return state.remaining.Length > 0;
-                       
-                       return ParseUser (state) &&
-                               ParseHost (state) &&
-                               ParsePort (state);
-               }
-
-               static bool IsUnreserved (char ch)
-               {
-                       return ch == '-' || ch == '.' || ch == '_' || ch == '~';
-               }
-
-
-               static bool IsSubDelim (char ch)
-               {
-                       return ch == '!' || ch == '$' || ch == '&' || ch == '\'' || ch == '(' || ch == ')' ||
-                               ch == '*' || ch == '+' || ch == ',' || ch == ';' || ch == '=';
-               }
-               
-               // userinfo    = *( unreserved / pct-encoded / sub-delims / ":" )
-               private static bool ParseUser (ParserState state)
-               {
-                       string part = state.remaining;
-                       StringBuilder sb = null;
-
-                       int index;
-                       for (index = 0; index < part.Length; index++) {
-                               char ch = part [index];
-                               bool isEscapedChar = false;
-                               var oldIndex = index;
-
-                               // Spaces should be percentage encoded #31172
-                               if (ch == ' ') {
-                                       if (sb == null)
-                                               sb = new StringBuilder ();
-                                       sb.Append ("%20");
-                                       continue;
-                               }
-
-                               if (ch == '%'){
-                                       if (!Uri.IsHexEncoding (part, index))
-                                               return false;
-                                       ch = Uri.HexUnescape (part, ref index);
-                                       index--;
-                                       isEscapedChar = true;
-                               }
-
-                               if (!Char.IsLetterOrDigit (ch) && !IsUnreserved (ch) && !IsSubDelim (ch) && ch != ':'){
-                                       if (!isEscapedChar)
-                                               break;
-
-                                       ch = '%';
-                                       index = oldIndex;
-                               }
-
-                               if (sb == null)
-                                       sb = new StringBuilder ();
-                               sb.Append (ch);
-                       }
-
-                       if (index + 1 <= part.Length && part [index] == '@') {
-                               if (state.elements.scheme == Uri.UriSchemeFile) {
-                                       state.error = "Invalid URI: The hostname could not be parsed.";
-                                       return false;
-                               }
-
-                               state.elements.user = sb == null ? "" : sb.ToString ();
-                               state.remaining = state.remaining.Substring (index + 1);
-                       }
-                               
-                       return state.remaining.Length > 0;
-               }
-               
-               // host        = IP-literal / IPv4address / reg-name
-               private static bool ParseHost (ParserState state)
-               {
-                       string part = state.remaining;
-
-                       if (state.elements.scheme == Uri.UriSchemeFile && part.Length >= 2 &&
-                               (part [0] == '\\' || part [0] == '/') && part [1] == part [0]) {
-                               part = part.TrimStart (part [0]);
-                               state.remaining = part;
-                       }
-
-                       if (!ParseWindowsFilePath (state))
-                               return false;
-
-                       StringBuilder sb = new StringBuilder ();
-                       
-                       var tmpHost = "";
-
-                       var possibleIpv6 = false;
-
-                       int index;
-                       for (index = 0; index < part.Length; index++) { 
-                               
-                               char ch = part [index];
-                               
-                               if (ch == '/' || ch == '#' || ch == '?')
-                                       break;
-
-                               // Possible IPv6
-                               if (string.IsNullOrEmpty (tmpHost) && ch == ':') {
-                                       tmpHost = sb.ToString ();
-                                       possibleIpv6 = true;
-                               }
-                               
-                               sb.Append (ch);
-
-                               if (possibleIpv6 && ch == ']')
-                                       break;
-                       }
-                       
-                       if (possibleIpv6) {
-                               IPv6Address ipv6addr;
-                               if (IPv6Address.TryParse (sb.ToString (), out ipv6addr)) {
-                                       var ipStr = ipv6addr.ToString (false);
-                                       //remove scope
-                                       ipStr = ipStr.Split ('%') [0];
-
-                                       state.elements.host = "[" + ipStr + "]";
-                                       state.elements.scopeId = ipv6addr.ScopeId;
-
-                                       state.remaining = part.Substring (sb.Length);
-                                       return state.remaining.Length > 0;
-                               }
-                               state.elements.host = tmpHost;
-                       } else
-                               state.elements.host = sb.ToString ();
-
-                       state.elements.host = state.elements.host.ToLowerInvariant ();
-
-                       state.remaining = part.Substring (state.elements.host.Length);
-
-                       if (state.elements.scheme == Uri.UriSchemeFile &&
-                               state.elements.host != "") {
-                               // under Windows all file://host URI are considered UNC, which is not the case other MacOS (e.g. Silverlight)
-#if BOOTSTRAP_BASIC
-                               state.elements.isUnc = (Path.DirectorySeparatorChar == '\\');
-#else
-                               state.elements.isUnc = Environment.IsRunningOnWindows;
-#endif
-                       }
-
-                       return state.remaining.Length > 0;
-               }
-               
-               // port          = *DIGIT
-               private static bool ParsePort (ParserState state)
-               {
-                       string part = state.remaining;
-                       if (part.Length == 0 || part [0] != ':')
-                               return part.Length > 0;
-                       
-                       StringBuilder sb = new StringBuilder ();
-                       
-                       int index;
-                       for (index = 1; index < part.Length; index++ ) {
-                               char ch = part [index];
-                               
-                               if (!char.IsDigit (ch)) {
-                                       if (ch == '/' || ch == '#' || ch == '?')
-                                               break;
-
-                                       state.error = "Invalid URI: Invalid port specified.";
-                                       return false;
-                               }
-                               
-                               sb.Append (ch);
-                       }
-
-                       if (index <= part.Length)
-                               state.remaining = part.Substring (index);
-
-                       if (sb.Length == 0)
-                               return state.remaining.Length > 0;
-                       
-                       int port;
-                       if (!Int32.TryParse (sb.ToString (), NumberStyles.None, CultureInfo.InvariantCulture, out port) ||
-                               port < 0 || port > UInt16.MaxValue) {
-                               state.error = "Invalid URI: Invalid port number";
-                               return false;
-                       }
-
-                       state.elements.port = port;
-                               
-                       return state.remaining.Length > 0;
-               }
-               
-               private static bool ParsePath (ParserState state)
-               {
-                       string part = state.remaining;
-                       StringBuilder sb = new StringBuilder ();
-                       
-                       int index;
-                       for (index = 0; index < part.Length; index++) {
-                               
-                               char ch = part [index];
-                               
-                               var supportsQuery = UriHelper.SupportsQuery (state.elements.scheme);
-
-                               if (ch == '#' || (supportsQuery && ch == '?'))
-                                       break;
-                               
-                               sb.Append (ch);
-                       }
-                       
-                       if (index <= part.Length)
-                               state.remaining = part.Substring (index);
-                       
-                       state.elements.path  = sb.ToString ();
-                               
-                       return state.remaining.Length > 0;
-               }
-               
-               private static bool ParseQuery (ParserState state)
-               {
-                       string part = state.remaining;
-
-                       if (!UriHelper.SupportsQuery (state.elements.scheme))
-                               return part.Length > 0;
-                       
-                       if (part.Length == 0 || part [0] != '?')
-                               return part.Length > 0;
-                       
-                       StringBuilder sb = new StringBuilder ();
-                       
-                       int index;
-                       for (index = 1; index < part.Length; index++) {
-                               
-                               char ch = part [index];
-                               
-                               if (ch == '#')
-                                       break;
-                               
-                               sb.Append (ch);
-                       }
-                       
-                       if (index <= part.Length)
-                               state.remaining = part.Substring (index);
-                       
-                       state.elements.query  = sb.ToString ();
-                               
-                       return state.remaining.Length > 0;
-               }
-               
-               private static bool ParseFragment (ParserState state)
-               {
-                       string part = state.remaining;
-                       
-                       if (part.Length == 0 || part [0] != '#')
-                               return part.Length > 0;
-                       
-                       StringBuilder sb = new StringBuilder ();
-                       
-                       int index;
-                       for (index = 1; index < part.Length; index++) { 
-                               
-                               char ch = part [index];
-                               
-                               sb.Append (ch);
-                       }
-                       
-                       state.elements.fragment = sb.ToString ();
-                       
-                       return false;
-               }
-       }
-}
diff --git a/mcs/class/System/System/UriParser.cs b/mcs/class/System/System/UriParser.cs
deleted file mode 100644 (file)
index 5eda9aa..0000000
+++ /dev/null
@@ -1,359 +0,0 @@
-//
-// System.UriParser abstract class
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Collections;
-using System.Globalization;
-using System.Security.Permissions;
-using System.Text;
-
-namespace System {
-       public abstract class UriParser {
-
-               static object lock_object = new object ();
-               static Hashtable table;
-
-               internal string scheme_name;
-               private int default_port;
-
-               protected UriParser ()
-               {
-               }
-
-               // protected methods
-               protected internal virtual string GetComponents (Uri uri, UriComponents components, UriFormat format)
-               {
-                       if ((format < UriFormat.UriEscaped) || (format > UriFormat.SafeUnescaped))
-                               throw new ArgumentOutOfRangeException ("format");
-
-                       if ((components & UriComponents.SerializationInfoString) != 0) {
-                               if (components != UriComponents.SerializationInfoString)
-                                       throw new ArgumentOutOfRangeException ("components", "UriComponents.SerializationInfoString must not be combined with other UriComponents.");
-
-                               if (!uri.IsAbsoluteUri)
-                                       return UriHelper.FormatRelative (uri.OriginalString, "", format);
-
-                               components |= UriComponents.AbsoluteUri;
-                       }
-
-                       return GetComponentsHelper (uri, components, format);
-               }
-
-               internal string GetComponentsHelper (Uri uri, UriComponents components, UriFormat format)
-               {
-                       UriElements elements = UriParseComponents.ParseComponents (uri.OriginalString.Trim (), UriKind.Absolute);
-
-                       string scheme = scheme_name;
-                       int dp = default_port;
-
-                       if ((scheme == null) || (scheme == "*")) {
-                               scheme = elements.scheme;
-                               dp = Uri.GetDefaultPort (scheme);
-                       } else if (String.Compare (scheme, elements.scheme, true) != 0) {
-                               throw new SystemException ("URI Parser: scheme mismatch: " + scheme + " vs. " + elements.scheme);
-                       }
-
-                       var formatFlags = UriHelper.FormatFlags.None;
-                       if (UriHelper.HasCharactersToNormalize (uri.OriginalString))
-                               formatFlags |= UriHelper.FormatFlags.HasUriCharactersToNormalize;
-
-                       if (uri.UserEscaped)
-                               formatFlags |= UriHelper.FormatFlags.UserEscaped;
-
-                       if (!string.IsNullOrEmpty (elements.host))
-                               formatFlags |= UriHelper.FormatFlags.HasHost;
-
-                       // it's easier to answer some case directly (as the output isn't identical 
-                       // when mixed with others components, e.g. leading slash, # ...)
-                       switch (components) {
-                       case UriComponents.Scheme:
-                               return scheme;
-                       case UriComponents.UserInfo:
-                               return elements.user ?? "";
-                       case UriComponents.Host:
-                               return elements.host;
-                       case UriComponents.Port: {
-                               int p = elements.port;
-                               if (p >= 0 && p != dp)
-                                       return p.ToString (CultureInfo.InvariantCulture);
-                               return String.Empty;
-                       }
-                       case UriComponents.Path:
-                               var path = elements.path;
-                               if (scheme != Uri.UriSchemeMailto && scheme != Uri.UriSchemeNews)
-                                       path = IgnoreFirstCharIf (elements.path, '/');
-                               return UriHelper.FormatAbsolute (path, scheme, UriComponents.Path, format, formatFlags);
-                       case UriComponents.Query:
-                               return UriHelper.FormatAbsolute (elements.query, scheme, UriComponents.Query, format, formatFlags);
-                       case UriComponents.Fragment:
-                               return UriHelper.FormatAbsolute (elements.fragment, scheme, UriComponents.Fragment, format, formatFlags);
-                       case UriComponents.StrongPort: {
-                               return elements.port >= 0
-                               ? elements.port.ToString (CultureInfo.InvariantCulture)
-                               : dp.ToString (CultureInfo.InvariantCulture);
-                       }
-                       case UriComponents.SerializationInfoString:
-                               components = UriComponents.AbsoluteUri;
-                               break;
-                       }
-
-                       // now we deal with multiple flags...
-
-                       StringBuilder sb = new StringBuilder ();
-
-                       if ((components & UriComponents.Scheme) != 0) {
-                               sb.Append (scheme);
-                               sb.Append (elements.delimiter);
-                       }
-
-                       if ((components & UriComponents.UserInfo) != 0) {
-                               string userinfo = elements.user;
-                               if (userinfo != null) {
-                                       sb.Append (elements.user);
-                                       sb.Append ('@');
-                               }
-                       }
-
-                       if ((components & UriComponents.Host) != 0)
-                               sb.Append (elements.host);
-
-                       // for StrongPort always show port - even if -1
-                       // otherwise only display if ut's not the default port
-                       if ((components & UriComponents.StrongPort) != 0) {
-                               sb.Append (":");
-                               if (elements.port >= 0) {
-                                       sb.Append (elements.port);
-                               } else {
-                                       sb.Append (dp);
-                               }
-                       }
-
-                       if ((components & UriComponents.Port) != 0) {
-                               int p = elements.port;
-                               if (p >= 0 && p != dp) {
-                                       sb.Append (":");
-                                       sb.Append (elements.port);
-                               }
-                       }
-
-                       if ((components & UriComponents.Path) != 0) {
-                               string path = elements.path;
-                               if ((components & UriComponents.PathAndQuery) != 0 &&
-                                       (path.Length == 0 || !path.StartsWith ("/", StringComparison.Ordinal)) &&
-                                       elements.delimiter == Uri.SchemeDelimiter)
-                                       sb.Append ("/");
-                               sb.Append (UriHelper.FormatAbsolute (path, scheme, UriComponents.Path, format, formatFlags));
-                       }
-
-                       if ((components & UriComponents.Query) != 0) {
-                               string query = elements.query;
-                               if (query != null) {
-                                       sb.Append ("?");
-                                       sb.Append (UriHelper.FormatAbsolute (query, scheme, UriComponents.Query, format, formatFlags));
-                               }
-                       }
-
-                       if ((components & UriComponents.Fragment) != 0) {
-                               string f = elements.fragment;
-                               if (f != null) {
-                                       sb.Append ("#");
-                                       sb.Append (UriHelper.FormatAbsolute (f, scheme, UriComponents.Fragment, format, formatFlags));
-                               }
-                       }
-                       return sb.ToString ();
-               }
-
-               protected internal virtual void InitializeAndValidate (Uri uri, out UriFormatException parsingError)
-               {
-                       // bad boy, it should check null arguments.
-                       if ((uri.Scheme != scheme_name) && (scheme_name != "*"))
-                               // Here .NET seems to return "The Authority/Host could not be parsed", but it does not make sense.
-                               parsingError = new UriFormatException ("The argument Uri's scheme does not match");
-                       else
-                               parsingError = null;
-               }
-
-               protected internal virtual bool IsBaseOf (Uri baseUri, Uri relativeUri)
-               {
-                       if (baseUri == null)
-                               throw new ArgumentNullException ("baseUri");
-                       if (relativeUri == null)
-                               throw new ArgumentNullException ("relativeUri");
-
-                       // compare, not case sensitive, the scheme, host and port (+ user informations)
-                       if (Uri.Compare (baseUri, relativeUri, UriComponents.SchemeAndServer | UriComponents.UserInfo, UriFormat.Unescaped, StringComparison.InvariantCultureIgnoreCase) != 0)
-                               return false;
-
-                       string base_string = baseUri.LocalPath;
-                       int last_slash = base_string.LastIndexOf ('/') + 1; // keep the slash
-                       return (String.Compare (base_string, 0, relativeUri.LocalPath, 0, last_slash, StringComparison.InvariantCultureIgnoreCase) == 0);
-               }
-
-               protected internal virtual bool IsWellFormedOriginalString (Uri uri)
-               {
-                       // well formed according to RFC2396 and RFC2732
-                       // see Uri.IsWellFormedOriginalString for some docs
-
-                       // Though this class does not seem to do anything. Even null arguments aren't checked :/
-                       return uri.IsWellFormedOriginalString ();
-               }
-               protected internal virtual UriParser OnNewUri ()
-               {
-                       // nice time for init
-                       return this;
-               }
-
-               [MonoTODO]
-               protected virtual void OnRegister (string schemeName, int defaultPort)
-               {
-                       // unit tests shows that schemeName and defaultPort aren't usable from here
-               }
-
-               [MonoTODO]
-               protected internal virtual string Resolve (Uri baseUri, Uri relativeUri, out UriFormatException parsingError)
-               {
-                       // used by Uri.ctor and Uri.TryCreate
-                       throw new NotImplementedException ();
-               }
-
-               // internal properties
-
-               internal string SchemeName {
-                       get { return scheme_name; }
-                       set { scheme_name = value; }
-               }
-
-               internal int DefaultPort {
-                       get { return default_port; }
-                       set { default_port = value; }
-               }
-
-               // private stuff
-
-               private string IgnoreFirstCharIf (string s, char c)
-               {
-                       if (s.Length == 0)
-                               return String.Empty;
-                       if (s[0] == c)
-                               return s.Substring (1);
-                       return s;
-               }
-
-               // static methods
-
-               private static void CreateDefaults ()
-               {
-                       if (table != null)
-                               return;
-
-                       Hashtable newtable = new Hashtable ();
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeFile, -1);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeFtp, 21);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeGopher, 70);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeHttp, 80);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeHttps, 443);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeMailto, 25);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeNetPipe, -1);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeNetTcp, -1);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeNews, -1);
-                       InternalRegister (newtable, new DefaultUriParser (), Uri.UriSchemeNntp, 119);
-                       // not defined in Uri.UriScheme* but a parser class exists
-                       InternalRegister (newtable, new DefaultUriParser (), "ldap", 389);
-                       
-                       lock (lock_object) {
-                               if (table == null)
-                                       table = newtable;
-                               else
-                                       newtable = null;
-                       }
-               }
-
-               public static bool IsKnownScheme (string schemeName)
-               {
-                       if (schemeName == null)
-                               throw new ArgumentNullException ("schemeName");
-                       if (schemeName.Length == 0)
-                               throw new ArgumentOutOfRangeException ("schemeName");
-
-                       CreateDefaults ();
-                       string lc = schemeName.ToLower (CultureInfo.InvariantCulture);
-                       return (table [lc] != null);
-               }
-
-               // *no* check version
-               private static void InternalRegister (Hashtable table, UriParser uriParser, string schemeName, int defaultPort)
-               {
-                       uriParser.SchemeName = schemeName;
-                       uriParser.DefaultPort = defaultPort;
-
-                       // FIXME: MS doesn't seems to call most inherited parsers
-                       if (uriParser is GenericUriParser) {
-                               table.Add (schemeName, uriParser);
-                       } else {
-                               DefaultUriParser parser = new DefaultUriParser ();
-                               parser.SchemeName = schemeName;
-                               parser.DefaultPort = defaultPort;
-                               table.Add (schemeName, parser);
-                       }
-
-                       // note: we cannot set schemeName and defaultPort inside OnRegister
-                       uriParser.OnRegister (schemeName, defaultPort);
-               }
-
-               [SecurityPermission (SecurityAction.Demand, Infrastructure = true)]
-               public static void Register (UriParser uriParser, string schemeName, int defaultPort)
-               {
-                       if (uriParser == null)
-                               throw new ArgumentNullException ("uriParser");
-                       if (schemeName == null)
-                               throw new ArgumentNullException ("schemeName");
-                       if ((defaultPort < -1) || (defaultPort >= UInt16.MaxValue))
-                               throw new ArgumentOutOfRangeException ("defaultPort");
-
-                       CreateDefaults ();
-
-                       string lc = schemeName.ToLower (CultureInfo.InvariantCulture);
-                       if (table [lc] != null) {
-                               string msg = Locale.GetText ("Scheme '{0}' is already registred.");
-                               throw new InvalidOperationException (msg);
-                       }
-                       InternalRegister (table, uriParser, lc, defaultPort);
-               }
-
-               internal static UriParser GetParser (string schemeName)
-               {
-                       if (schemeName == null)
-                               return null;
-
-                       CreateDefaults ();
-
-                       string lc = schemeName.ToLower (CultureInfo.InvariantCulture);
-                       return (UriParser) table [lc];
-               }
-       }
-}
-
index a5899fd28f3ab544f83a1e863f669a3ca5ef3091..2e9ef60993db000f2d431ec64db0d2c088b73bb0 100644 (file)
@@ -16,6 +16,8 @@ using System.IO;
 using System.Reflection;
 using Microsoft.CSharp;
 using NUnit.Framework;
+using System.Text;
+using System.Linq;
 
 namespace MonoTests.Microsoft.CSharp
 {
@@ -566,6 +568,39 @@ namespace MonoTests.Microsoft.CSharp
                        AssertCompileResults (results, true);
                }
 
+               [Test]
+               public void EncodingMismatch ()
+               {
+                       var source = @"
+                               #warning Trigger Some Warning
+                               public class MyClass {
+                                       public static string MyMethod () { return ""data""; }
+                               }";
+
+                       var p = new CompilerParameters () {
+                               GenerateInMemory = false,
+                               GenerateExecutable = false,
+                               IncludeDebugInformation = true,
+                               TreatWarningsAsErrors = false,
+                               TempFiles = new TempFileCollection (_tempDir, true),
+                       };
+
+                       var prov = new CSharpCodeProvider ();
+                       CompilerResults results;
+
+                       var prev = Console.OutputEncoding;
+                       try {
+                               Console.OutputEncoding = Encoding.Unicode;
+
+                               results = prov.CompileAssemblyFromSource (p, source);
+                       } finally {
+                               Console.OutputEncoding = prev;
+                       }
+
+                       Assert.IsNotNull (results.Errors);
+                       Assert.IsTrue (results.Output.Cast<string>().ToArray ()[1].Contains ("Trigger Some Warning"));
+               }
+
                private static string CreateTempDirectory ()
                {
                        // create a uniquely named zero-byte file
index dbc4110cb20c65a6822e4568331fc90b36091cd7..ec9d6b1bb0a4acadf905e1c9e8135ce34aa5f8ed 100644 (file)
@@ -190,7 +190,7 @@ namespace MonoTests.System.ComponentModel.Design.Serialization {
                {
 #if MOBILE
                        // ensure the property is not linked out of the application since it make the test fails
-                       Assert.NotNull (Thread.CurrentPrincipal, "pre-test");
+                       Assert.IsNotNull (Thread.CurrentPrincipal, "pre-test");
 #endif
                        PropertyInfo pi = typeof (Thread).GetProperty ("CurrentPrincipal");
 
@@ -213,7 +213,7 @@ namespace MonoTests.System.ComponentModel.Design.Serialization {
                {
 #if MOBILE
                        // ensure the property is not linked out of the application since it make the test fails
-                       Assert.NotNull (Thread.CurrentPrincipal, "pre-test");
+                       Assert.IsNotNull (Thread.CurrentPrincipal, "pre-test");
 #endif
                        PropertyInfo pi = typeof (Thread).GetProperty ("CurrentPrincipal");
 
index 19a47097a7d84a270b7a491340627317e5754887..2cbdb6838ca70d001a1c3478acd40a7d2871a302 100644 (file)
@@ -1,13 +1,17 @@
 using NUnit.Framework;
 using System;
+using System.Net;
 using System.Net.NetworkInformation;
+using System.Threading;
 
 namespace MonoTests.System.Net.NetworkInformation
 {
        [TestFixture]
-       public class PingTest
+       public partial class PingTest
        {
-               [Test] 
+               partial void AndroidShouldPingWork (ref bool shouldWork);
+
+               [Test]
                public void PingFail()
                {
 #if MONOTOUCH
@@ -24,10 +28,99 @@ namespace MonoTests.System.Net.NetworkInformation
 #if MONOTOUCH
                        Assert.Ignore ("Ping implementation is broken on MT (requires sudo access)");
 #else
-                       var p = new Ping ().Send ("127.0.0.1");
-                       Assert.AreEqual(IPStatus.Success, p.Status);
+                       bool shouldWork = true;
+                       AndroidShouldPingWork (ref shouldWork);
+                       if (shouldWork) {
+                               var p = new Ping ().Send ("127.0.0.1");
+                               Assert.AreEqual(IPStatus.Success, p.Status);
+                       } else
+                               Assert.Ignore ("Ping will not work on this Android device");
 #endif
                }               
+
+               [Test]
+#if MONOTOUCH
+               [Ignore("Ping implementation is broken on MT (requires sudo access)")]
+#endif
+               public void SendAsyncIPV4Succeeds()
+               {
+                       var testIp = IPAddress.Loopback;
+                       var ping = new Ping ();
+                       PingReply reply = null;
+
+                       using (var waiter = new AutoResetEvent (false)) {
+                               ping.PingCompleted += new PingCompletedEventHandler ( 
+                                       (s, e) => {
+                                               reply = e.Reply;
+                                               (e.UserState as AutoResetEvent) ?.Set ();
+                                       });
+
+                               ping.SendAsync (testIp, waiter);
+
+                               waiter.WaitOne (TimeSpan.FromSeconds (8));
+                       }
+
+                       Assert.AreEqual (IPStatus.Success, reply.Status);
+               }
+
+               [Test]
+#if MONOTOUCH
+               [Ignore("Ping implementation is broken on MT (requires sudo access)")]
+#endif
+               public void SendAsyncIPV4Fails()
+               {
+                       var testIp = IPAddress.Parse("192.0.2.0");
+                       var ping = new Ping ();
+                       PingReply reply = null;
+
+                       using (var waiter = new AutoResetEvent (false)) {
+                               ping.PingCompleted += new PingCompletedEventHandler ( 
+                                       (s, e) => {
+                                               reply = e.Reply;
+                                               (e.UserState as AutoResetEvent) ?.Set ();
+                                       });
+
+                               ping.SendAsync (testIp, waiter);
+
+                               waiter.WaitOne (TimeSpan.FromSeconds (8));
+                       }
+
+                       Assert.AreNotEqual (IPStatus.Success, reply.Status);
+               }
+
+               [Test]
+#if MONOTOUCH
+               [Ignore("Ping implementation is broken on MT (requires sudo access)")]
+#endif
+               public void SendPingAsyncIPV4Succeeds()
+               {
+                       var testIp = IPAddress.Loopback;
+                       var ping = new Ping ();
+                       var task = ping.SendPingAsync (testIp);
+
+                       task.Wait();
+
+                       var result = task.Result;
+
+                       Assert.AreEqual (IPStatus.Success, result.Status);
+               }
+
+               [Test]
+#if MONOTOUCH
+               [Ignore("Ping implementation is broken on MT (requires sudo access)")]
+#endif
+               public void SendPingAsyncIPV4Fails()
+               {
+                       var testIp = IPAddress.Parse("192.0.2.0");
+                       var ping = new Ping ();
+                       var task = ping.SendPingAsync (testIp);
+
+                       task.Wait();
+
+                       var result = task.Result;
+
+                       Assert.AreNotEqual (IPStatus.Success, result.Status);
+               }
        }
 }
 
index cea6bb18c14aabe8003407800c9af58a4d809714..68118776fbefcff773d1c199d356a57b86f6c5b1 100644 (file)
@@ -95,80 +95,6 @@ public class SslStreamTest {
                }
        }
 
-       [Test]
-       public void ClientCipherSuitesCallback ()
-       {
-               try {
-                       ServicePointManager.ClientCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                               return new List<string> { prefix + "RSA_WITH_AES_128_CBC_SHA" };
-                       };
-                       // client will only offers AES 128 - that's fine since the server support it (and many more ciphers)
-                       AuthenticateClientAndServer_ClientSendsNoData ();
-               }
-               finally {
-                       ServicePointManager.ClientCipherSuitesCallback = null;
-               }
-       }
-
-       [Test]
-       public void ServerCipherSuitesCallback ()
-       {
-               try {
-                       ServicePointManager.ServerCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                                       return new List<string> { prefix + "RSA_WITH_AES_256_CBC_SHA" };
-                       };
-                       // server only accept AES 256 - that's fine since the client support it (and many more ciphers)
-                       AuthenticateClientAndServer_ClientSendsNoData ();
-               }
-               finally {
-                       ServicePointManager.ServerCipherSuitesCallback = null;
-               }
-       }
-
-       [Test]
-       public void CipherSuitesCallbacks ()
-       {
-               try {
-                       ServicePointManager.ClientCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                               return new List<string> { prefix + "RSA_WITH_AES_128_CBC_SHA", prefix + "RSA_WITH_AES_256_CBC_SHA" };
-                       };
-                       ServicePointManager.ServerCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                               return new List<string> { prefix + "RSA_WITH_AES_128_CBC_SHA", prefix + "RSA_WITH_AES_256_CBC_SHA" };
-                       };
-                       // both client and server supports AES (128 and 256) - server will select 128 (first choice)
-                       AuthenticateClientAndServer_ClientSendsNoData ();
-               }
-               finally {
-                       ServicePointManager.ClientCipherSuitesCallback = null;
-                       ServicePointManager.ServerCipherSuitesCallback = null;
-               }
-       }
-
-       [Test]
-       public void MismatchedCipherSuites ()
-       {
-               try {
-                       ServicePointManager.ClientCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                               return new List<string> { prefix + "RSA_WITH_AES_128_CBC_SHA" };
-                       };
-                       ServicePointManager.ServerCipherSuitesCallback += (SecurityProtocolType p, IEnumerable<string> allCiphers) => {
-                               string prefix = p == SecurityProtocolType.Tls ? "TLS_" : "SSL_";
-                               return new List<string> { prefix + "RSA_WITH_AES_256_CBC_SHA" };
-                       };
-                       // mismatch! server will refuse and send back an alert
-                       AuthenticateClientAndServer (false, false);
-               }
-               finally {
-                       ServicePointManager.ClientCipherSuitesCallback = null;
-                       ServicePointManager.ServerCipherSuitesCallback = null;
-               }
-       }
-
        private void StartClientAndAuthenticate (ClientServerState state, 
                                                 IPEndPoint endPoint) {
                try {
index f137139a55f6f110dedb325a862eba722d69572b..d59d39fad89d232798a341ce06bdd238b3da044f 100644 (file)
@@ -106,11 +106,11 @@ namespace MonoTests.System.Net.Sockets
                        bool res = clientSocket.SendAsync (e);
                        if (res) {
                                if (!m.WaitOne (1500))
-                                       throw new TimeoutException ();
+                                       Assert.Fail ("Timeout #1");
                        }
 
                        if (!mainEvent.WaitOne (1500))
-                               throw new TimeoutException ();
+                               Assert.Fail ("Timeout #2");
                        if (error != null)
                                throw error;
 
@@ -124,13 +124,13 @@ namespace MonoTests.System.Net.Sockets
                        res = clientSocket.SendAsync (e);
                        if (res) {
                                if (!m.WaitOne (1500))
-                                       throw new TimeoutException ();
+                                       Assert.Fail ("Timeout #3");
                        }
 
                        if (!mainEvent.WaitOne (1500))
-                               throw new TimeoutException ();
+                               Assert.Fail ("Timeout #4");
                        if (error != null)
                                throw error;
                }
        }
-}
\ No newline at end of file
+}
index a53a5d5624ab010ece48667b8bfe72719d856110..2b12d7019bffad7b8ebc05bd816b8e773a684871 100755 (executable)
@@ -573,8 +573,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.DontFragment = true;
                                Assert.Fail ("DontFragment #1");
                        } catch (NotSupportedException) {
-                       } catch {
-                               Assert.Fail ("DontFragment #2");
                        } finally {
                                sock.Close ();
                        }
@@ -592,8 +590,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("EnableBroadcastDefaultTcp #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode, "EnableBroadcastDefaultTcp #2");
-                       } catch {
-                               Assert.Fail ("EnableBroadcastDefaultTcp #2");
                        } finally {
                                sock.Close ();
                        }
@@ -623,8 +619,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("EnableBroadcastChangeTcp #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode, "EnableBroadcastChangeTcp #2");
-                       } catch {
-                               Assert.Fail ("EnableBroadcastChangeTcp #2");
                        } finally {
                                sock.Close ();
                        }
@@ -793,8 +787,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("MulticastLoopbackDefaultTcp #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode, "MulticastLoopbackDefaultTcp #2");
-                       } catch {
-                               Assert.Fail ("MulticastLoopbackDefaultTcp #2");
                        } finally {
                                sock.Close ();
                        }
@@ -812,8 +804,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("MulticastLoopbackChangeTcp #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode, "MulticastLoopbackChangeTcp #2");
-                       } catch {
-                               Assert.Fail ("MulticastLoopbackChangeTcp #2");
                        } finally {
                                sock.Close ();
                        }
@@ -997,7 +987,6 @@ namespace MonoTests.System.Net.Sockets
                }
 
                [Test]
-               [Category ("NotOnMac")] // Mac doesn't throw when overflowing the ttl
                public void TtlChangeOverflow ()
                {
                        Socket sock = new Socket (AddressFamily.InterNetwork,
@@ -1007,11 +996,9 @@ namespace MonoTests.System.Net.Sockets
                        try {
                                sock.Ttl = 256;
                                Assert.Fail ("TtlChangeOverflow #1");
-                       } catch (SocketException ex) {
-                               Assert.AreEqual (10022, ex.ErrorCode,
+                       } catch (ArgumentOutOfRangeException ex) {
+                               Assert.AreEqual ("value", ex.ParamName,
                                                 "TtlChangeOverflow #2");
-                       } catch {
-                               Assert.Fail ("TtlChangeoverflow #3");
                        } finally {
                                sock.Close ();
                        }
@@ -1024,8 +1011,6 @@ namespace MonoTests.System.Net.Sockets
                        } catch (SocketException ex) {
                                Assert.AreEqual (10022, ex.ErrorCode,
                                                 "TtlChangeOverflow #5");
-                       } catch {
-                               Assert.Fail ("TtlChangeOverflow #6");
                        } finally {
                                sock.Close ();
                        }
@@ -1139,8 +1124,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.SendTimeout = -2;
                                Assert.Fail ("SendTimeoutChange #8");
                        } catch (ArgumentOutOfRangeException) {
-                       } catch {
-                               Assert.Fail ("SendTimeoutChange #9");
                        } finally {
                                sock.Close ();
                        }
@@ -1198,8 +1181,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.ReceiveTimeout = -2;
                                Assert.Fail ("ReceiveTimeoutChange #8");
                        } catch (ArgumentOutOfRangeException) {
-                       } catch {
-                               Assert.Fail ("ReceiveTimeoutChange #9");
                        } finally {
                                sock.Close ();
                        }
@@ -1257,8 +1238,6 @@ namespace MonoTests.System.Net.Sockets
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode,
                                                 "NoDelayDefaultUdp #2");
-                       } catch {
-                               Assert.Fail ("NoDelayDefaultUdp #3");
                        } finally {
                                sock.Close ();
                        }
@@ -1277,8 +1256,6 @@ namespace MonoTests.System.Net.Sockets
                        } catch (SocketException ex) {
                                Assert.AreEqual (10042, ex.ErrorCode,
                                                 "NoDelayChangeUdp #2");
-                       } catch {
-                               Assert.Fail ("NoDelayChangeUdp #3");
                        } finally {
                                sock.Close ();
                        }
@@ -1491,8 +1468,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("BeginAcceptSocketUdp #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10022, ex.ErrorCode, "BeginAcceptSocketUdp #2");
-                       } catch {
-                               Assert.Fail ("BeginAcceptSocketUdp #3");
                        } finally {
                                acc.Close ();
                                sock.Close ();
@@ -1524,8 +1499,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.BeginAccept (acc, 256, BADCallback, sock);
                                Assert.Fail ("BeginAcceptSocketBound #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("BeginAcceptSocketBound #2");
                        } finally {
                                acc.Close ();
                                sock.Close ();
@@ -1608,8 +1581,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.BeginAccept (acc, 256, BADCallback, null);
                                Assert.Fail ("BeginAcceptSocketClosed #1");
                        } catch (ObjectDisposedException) {
-                       } catch {
-                               Assert.Fail ("BeginAcceptSocketClosed #2");
                        } finally {
                                acc.Close ();
                        }
@@ -1638,8 +1609,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.BeginAccept (acc, 256, BADCallback, null);
                                Assert.Fail ("BeginAcceptSocketAccClosed #1");
                        } catch (ObjectDisposedException) {
-                       } catch {
-                               Assert.Fail ("BeginAcceptSocketAccClosed #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1710,8 +1679,6 @@ namespace MonoTests.System.Net.Sockets
                                                   sock);
                                Assert.Fail ("BeginConnectAddressPortNull #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectAddressPortNull #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1733,8 +1700,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.BeginConnect (ip, ep.Port, BCCallback, sock);
                                Assert.Fail ("BeginConnectAddressPortListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectAddressPortListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1880,8 +1845,6 @@ namespace MonoTests.System.Net.Sockets
                                                   sock);
                                Assert.Fail ("BeginConnectMultipleNull #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectMultipleNull #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1910,8 +1873,6 @@ namespace MonoTests.System.Net.Sockets
                                                   sock);
                                Assert.Fail ("BeginConnectMultipleListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectMultipleListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1948,8 +1909,6 @@ namespace MonoTests.System.Net.Sockets
                                                   BCCallback, sock);
                                Assert.Fail ("BeginConnectHostPort #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectHostPort #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1972,8 +1931,6 @@ namespace MonoTests.System.Net.Sockets
                                                   BCCallback, sock);
                                Assert.Fail ("BeginConnectHostPortListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectHostPortListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -1992,8 +1949,6 @@ namespace MonoTests.System.Net.Sockets
                                                   sock);
                                Assert.Fail ("BeginConnectHostPortNotIP #1");
                        } catch (NotSupportedException) {
-                       } catch {
-                               Assert.Fail ("BeginConnectHostPortNotIP #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2102,8 +2057,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("BeginSendNotConnected #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10057, ex.ErrorCode, "BeginSendNotConnected #2");
-                       } catch {
-                               Assert.Fail ("BeginSendNotConnected #3");
                        } finally {
                                sock.Close ();
                        }
@@ -2142,8 +2095,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("BindTwice #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10022, ex.ErrorCode, "BindTwice #2");
-                       } catch {
-                               Assert.Fail ("BindTwice #3");
                        } finally {
                                sock.Close ();
                        }
@@ -2212,8 +2163,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect (ip, 1249);
                                Assert.Fail ("ConnectAddressPortNull #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("ConnectAddressPortNull #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2235,8 +2184,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect (ip, ep.Port);
                                Assert.Fail ("ConnectAddressPortListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("ConnectAddressPortListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2359,8 +2306,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect (ips, 1251);
                                Assert.Fail ("ConnectMultipleNull #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("ConnectMultipleNull #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2388,8 +2333,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect (ips, ep.Port);
                                Assert.Fail ("ConnectMultipleListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("ConnectMultipleListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2425,8 +2368,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect ((string)null, 0);
                                Assert.Fail ("ConnectHostPort #1");
                        } catch (ArgumentNullException) {
-                       } catch {
-                               Assert.Fail ("ConnectHostPort #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2448,8 +2389,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect ("localhost", ep.Port);
                                Assert.Fail ("ConnectHostPortListen #1");
                        } catch (InvalidOperationException) {
-                       } catch {
-                               Assert.Fail ("ConnectHostPortListen #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2467,8 +2406,6 @@ namespace MonoTests.System.Net.Sockets
                                sock.Connect ("localhost", 0);
                                Assert.Fail ("ConnectHostPortNotIP #1");
                        } catch (NotSupportedException) {
-                       } catch {
-                               Assert.Fail ("ConnectHostPortNotIP #2");
                        } finally {
                                sock.Close ();
                        }
@@ -2672,8 +2609,6 @@ namespace MonoTests.System.Net.Sockets
                                Assert.Fail ("ListenNotBound #1");
                        } catch (SocketException ex) {
                                Assert.AreEqual (10022, ex.ErrorCode, "ListenNotBound #2");
-                       } catch {
-                               Assert.Fail ("ListenNotBound #3");
                        } finally {
                                sock.Close ();
                        }
@@ -3483,43 +3418,34 @@ namespace MonoTests.System.Net.Sockets
                [Test]
                public void UdpDoubleBind ()
                {
-                       Socket s = new Socket (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
-                       s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
-                       
-                       var ep = new IPEndPoint (IPAddress.Any, NetworkHelpers.FindFreePort ());
-                       s.Bind (ep);
-                       
-                       Socket ss = new Socket (AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
-                       ss.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, 1);
-                       
-                       ss.Bind (new IPEndPoint (IPAddress.Any, ep.Port));
+                       using (Socket s = new Socket (AddressFamily.InterNetwork,
+                                               SocketType.Dgram, ProtocolType.Udp))
+                       using (Socket ss = new Socket (AddressFamily.InterNetwork,
+                                               SocketType.Dgram, ProtocolType.Udp)) {
+                               var supportsReuseAddress = true;
+                               try {
+                                       s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
+                               } catch (SocketException e) {
+                                       // Exception is thrown when ReuseAddress is not supported
+                                       Assert.AreEqual ((int) SocketError.OperationNotSupported, e.NativeErrorCode,
+                                                       "Expected SocketError.OperationNotSupported");
+                                       supportsReuseAddress = false;
+                               }
 
-                       // If we make it this far, we succeeded.
-                       
-                       ss.Close ();
-                       s.Close ();
-               }
+                               var ep = new IPEndPoint (IPAddress.Any, NetworkHelpers.FindFreePort ());
+                               s.Bind (ep);
 
-#if MONOTOUCH
-               // when the linker is enabled then reflection won't work and would throw an NRE
-               // this is also always true for iOS - so we do not need to poke internals
-               static bool SupportsPortReuse ()
-               {
-                       return true;
-               }
-#else
-               static bool? supportsPortReuse;
-               static bool SupportsPortReuse ()
-               {
-                       if (supportsPortReuse.HasValue)
-                               return supportsPortReuse.Value;
+                               if (supportsReuseAddress)
+                                       ss.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
 
-                       supportsPortReuse = (bool) typeof (Socket).GetMethod ("SupportsPortReuse",
-                                       BindingFlags.Static | BindingFlags.NonPublic)
-                                       .Invoke (null, new object [] {});
-                       return supportsPortReuse.Value;
+                               try {
+                                       ss.Bind (new IPEndPoint (IPAddress.Any, ep.Port));
+                                       if (!supportsReuseAddress)
+                                               Assert.Fail ("Reusing address is not supported, exception was expected on second bind.");
+                               } catch (SocketException e) {
+                               }
+                       }
                }
-#endif
 
                // Test case for bug #31557
                [Test]
@@ -3529,22 +3455,30 @@ namespace MonoTests.System.Net.Sockets
                                                SocketType.Stream, ProtocolType.Tcp))
                        using (Socket ss = new Socket (AddressFamily.InterNetwork,
                                                SocketType.Stream, ProtocolType.Tcp)) {
-                               s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
+                               var supportsReuseAddress = true;
+                               try {
+                                       s.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
+                               } catch (SocketException e) {
+                                       // Exception is thrown when ReuseAddress is not supported
+                                       Assert.AreEqual ((int) SocketError.OperationNotSupported, e.NativeErrorCode,
+                                                       "Expected SocketError.OperationNotSupported");
+                                       supportsReuseAddress = false;
+                               }
+
                                var ep = new IPEndPoint (IPAddress.Any, NetworkHelpers.FindFreePort ());
                                s.Bind (ep);
                                s.Listen(1);
 
-                               ss.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
+                               if (supportsReuseAddress)
+                                       ss.SetSocketOption (SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
 
-                               Exception ex = null;
                                try {
                                        ss.Bind (new IPEndPoint (IPAddress.Any, ep.Port));
                                        ss.Listen(1);
+                                       if (!supportsReuseAddress)
+                                               Assert.Fail ("Reusing address is not supported, exception was expected on second bind.");
                                } catch (SocketException e) {
-                                       ex = e;
                                }
-
-                               Assert.AreEqual (SupportsPortReuse (), ex == null);
                        }
                }
 
@@ -4294,7 +4228,22 @@ namespace MonoTests.System.Net.Sockets
                [Test]
                public void SendAsyncFile ()
                {
-                       Socket serverSocket = StartSocketServer ();
+                       Socket serverSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
+
+                       serverSocket.Bind (new IPEndPoint (IPAddress.Loopback, 0));
+                       serverSocket.Listen (1);
+
+                       var mReceived = new ManualResetEvent (false);
+
+                       serverSocket.BeginAccept (AsyncCall => {
+                               byte[] bytes = new byte [1024];
+
+                               Socket listener = (Socket)AsyncCall.AsyncState;
+                               Socket client = listener.EndAccept (AsyncCall);
+                               client.Receive (bytes, bytes.Length, 0);
+                               client.Close ();
+                               mReceived.Set ();
+                       }, serverSocket);
                        
                        Socket clientSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                        clientSocket.Connect (serverSocket.LocalEndPoint);
@@ -4312,18 +4261,19 @@ namespace MonoTests.System.Net.Sockets
                                        sw.Write (buffer);
                                }
 
-                               var m = new ManualResetEvent (false);
+                               var mSent = new ManualResetEvent (false);
 
                                // Async Send File to server
                                clientSocket.BeginSendFile(temp, (ar) => {
                                        Socket client = (Socket) ar.AsyncState;
                                        client.EndSendFile (ar);
-                                       m.Set ();
+                                       mSent.Set ();
                                }, clientSocket);
 
-                               if (!m.WaitOne (1500))
+                               if (!mSent.WaitOne (1500))
+                                       throw new TimeoutException ();
+                               if (!mReceived.WaitOne (1500))
                                        throw new TimeoutException ();
-                               m.Reset ();
                        } finally {
                                if (File.Exists (temp))
                                        File.Delete (temp);
@@ -4383,30 +4333,6 @@ namespace MonoTests.System.Net.Sockets
                        }
                }
 
-               Socket StartSocketServer ()
-               {
-
-                       Socket listenSocket = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
-                       
-                       listenSocket.Bind (new IPEndPoint (IPAddress.Loopback, NetworkHelpers.FindFreePort ()));
-                       listenSocket.Listen (1);
-
-                       listenSocket.BeginAccept (new AsyncCallback (ReceiveCallback), listenSocket);
-                       
-                       return listenSocket;
-               }
-
-               public static void ReceiveCallback (IAsyncResult AsyncCall)
-               {
-                       byte[] bytes = new byte [1024];
-
-                       Socket listener = (Socket)AsyncCall.AsyncState;
-                       Socket client = listener.EndAccept (AsyncCall);
-                       client.Receive (bytes, bytes.Length, 0);
-                       client.Close ();
-               }
-
                [Test]
                public void UdpMulticasTimeToLive ()
                {
index fe3769fd5455e49f1795d6cd89d16be27f12fc1a..a1b5f51cdd2ec37df3ae8037cfc242a9986c4ecb 100644 (file)
@@ -9,7 +9,7 @@
 // \r
 \r
 using System;\r
-using System.Collections;\r
+using System.Linq;\r
 using System.Net;\r
 using System.Net.Sockets;\r
 using System.Threading;\r
@@ -55,8 +55,9 @@ namespace MonoTests.System.Net
 \r
                        IAsyncResult async = Dns.BeginResolve (site1Dot, null, null);\r
                        IPHostEntry entry = Dns.EndResolve (async);\r
-                       SubTestValidIPHostEntry (entry);\r
-                       Assert.AreEqual (site1Dot, entry.AddressList [0].ToString ());\r
+                       SubTestValidIPHostEntry (entry);
+                       var ip = GetIPv4Address (entry);\r
+                       Assert.AreEqual (site1Dot, ip.ToString ());\r
                }\r
 \r
                void ResolveCallback (IAsyncResult ar)\r
@@ -205,12 +206,21 @@ namespace MonoTests.System.Net
                        }\r
                }\r
 \r
+               static IPAddress GetIPv4Address (IPHostEntry h)\r
+               {\r
+                       var al = h.AddressList.FirstOrDefault (x => x.AddressFamily == AddressFamily.InterNetwork);\r
+                       if (al == null)\r
+                               Assert.Ignore ("Could not resolve an IPv4 address as required by this test case, e.g. running on an IPv6 only network");\r
+                       return al;\r
+               }\r
+\r
                void SubTestGetHostByName (string siteName, string siteDot)\r
                {\r
                        IPHostEntry h = Dns.GetHostByName (siteName);\r
                        SubTestValidIPHostEntry (h);\r
                        Assert.AreEqual (siteName, h.HostName, "siteName");\r
-                       Assert.AreEqual (siteDot, h.AddressList [0].ToString (), "siteDot");\r
+                       var ip = GetIPv4Address (h);\r
+                       Assert.AreEqual (siteDot, ip.ToString (), "siteDot");\r
                }\r
 \r
                [Test]\r
@@ -287,7 +297,8 @@ namespace MonoTests.System.Net
                        IPAddress addr = new IPAddress (IPAddress.NetworkToHostOrder ((int) site1IP));\r
                        IPHostEntry h = Dns.GetHostByAddress (addr);\r
                        SubTestValidIPHostEntry (h);\r
-                       Assert.AreEqual (addr.ToString (), h.AddressList [0].ToString ());\r
+                       var ip = GetIPv4Address (h);\r
+                       Assert.AreEqual (addr.ToString (), ip.ToString ());\r
                }\r
 \r
                [Test]\r
@@ -295,8 +306,9 @@ namespace MonoTests.System.Net
                {\r
                        IPAddress addr = new IPAddress (IPAddress.NetworkToHostOrder ((int) site2IP));\r
                        IPHostEntry h = Dns.GetHostByAddress (addr);\r
-                       SubTestValidIPHostEntry (h);\r
-                       Assert.AreEqual (addr.ToString (), h.AddressList [0].ToString ());\r
+                       SubTestValidIPHostEntry (h);
+                       var ip = GetIPv4Address (h);\r
+                       Assert.AreEqual (addr.ToString (), ip.ToString ());\r
                }\r
 \r
                [Test]\r
index 8d6ee23de6e57f4c6979715142c2ed79318f3d65..6793d2a48fdeffefa3c47d532c664f915bcc4330 100644 (file)
@@ -660,7 +660,7 @@ namespace MonoTests.System.Net
                                Assert.AreEqual (typeof (ArgumentOutOfRangeException), ex.GetType (), "#3");
                                Assert.IsNotNull (ex.Message, "#4");
                                Assert.IsNotNull (ex.ParamName, "#5");
-                               Assert.IsFalse (ex.ParamName == "value", "#6");
+                               Assert.AreEqual ("value", ex.ParamName, "#6");
                                Assert.IsNull (ex.InnerException, "#7");
                        }
                }
index 77fb73e3f00ed1404dbe81fe1a68294f5d7068a2..3afff1226ae85d5d8207c551ca5a2dac459f6cec 100644 (file)
@@ -154,7 +154,7 @@ namespace MonoTests.System.Net {
                        Send (ns, "GET / HTTP/1.1\r\n\r\n"); // No host
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 400", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 400"));
                }
 
                [Test]
@@ -166,7 +166,7 @@ namespace MonoTests.System.Net {
                        Send (ns, "GET / HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n"); // no prefix
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 400", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 400"));
                }
 
                [Test]
@@ -204,7 +204,7 @@ namespace MonoTests.System.Net {
                                string response = Receive (ns, 512);
                                ns.Close ();
                                listener.Close ();
-                               StringAssert.StartsWith ("HTTP/1.1 400", response, String.Format ("Failed on {0}", (int) b));
+                               Assert.IsTrue(response.StartsWith ("HTTP/1.1 400"), String.Format ("Failed on {0}", (int) b));
                        }
                }
 
@@ -217,7 +217,7 @@ namespace MonoTests.System.Net {
                        Send (ns, "POST /test4/ HTTP/1.1\r\nHost: 127.0.0.1\r\n\r\n"); // length required
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 411", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 411"));
                }
 
                [Test]
@@ -229,7 +229,7 @@ namespace MonoTests.System.Net {
                        Send (ns, "POST / HTTP/1.1\r\nHost: 127.0.0.1\r\nTransfer-Encoding: pepe\r\n\r\n"); // not implemented
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 501", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 501"));
                }
 
                [Test]
@@ -242,7 +242,7 @@ namespace MonoTests.System.Net {
                        Send (ns, "POST /test6/ HTTP/1.1\r\nHost: 127.0.0.1\r\nTransfer-Encoding: identity\r\n\r\n");
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 501", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 501"));
                }
 
                [Test]
@@ -257,8 +257,8 @@ namespace MonoTests.System.Net {
                        ctx.Response.Close ();
                        string response = Receive (ns, 1024);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 200", response);
-                       StringAssert.Contains ("Transfer-Encoding: chunked", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 200"));
+                       Assert.IsTrue(response.Contains ("Transfer-Encoding: chunked"));
                }
 
                [Test]
@@ -274,7 +274,7 @@ namespace MonoTests.System.Net {
                        ctx.Response.Close ();
                        string response = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 200", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 200"));
                        Assert.IsTrue (-1 == response.IndexOf ("Transfer-Encoding: chunked"));
                }
 
@@ -290,7 +290,7 @@ namespace MonoTests.System.Net {
                        string response = ReceiveWithTimeout (ns, 512, 1000, out timeout);
                        ns.Close ();
                        Assert.IsFalse (timeout);
-                       StringAssert.StartsWith ("HTTP/1.1 411", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 411"));
                }
 
                [Test]
@@ -306,7 +306,7 @@ namespace MonoTests.System.Net {
                        string response = ReceiveWithTimeout (ns, 512, 1000, out timeout);
                        ns.Close ();
                        Assert.IsFalse (timeout);
-                       StringAssert.StartsWith ("HTTP/1.1 411", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 411"));
                }
 
                [Test]
@@ -320,7 +320,7 @@ namespace MonoTests.System.Net {
                        ns.GetSocket ().Shutdown (SocketShutdown.Send);
                        string input = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 400", input);
+                       Assert.IsTrue(input.StartsWith ("HTTP/1.1 400"));
                }
 
                [Test]
@@ -334,7 +334,7 @@ namespace MonoTests.System.Net {
                        ns.GetSocket ().Shutdown (SocketShutdown.Send);
                        string input = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 400", input);
+                       Assert.IsTrue(input.StartsWith ("HTTP/1.1 400"));
                }
 
                [Test]
@@ -348,7 +348,7 @@ namespace MonoTests.System.Net {
                        ns.GetSocket ().Shutdown (SocketShutdown.Send);
                        string input = Receive (ns, 512);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 400", input);
+                       Assert.IsTrue(input.StartsWith ("HTTP/1.1 400"));
                }
 
                HttpListenerRequest test14_request;
@@ -448,8 +448,8 @@ namespace MonoTests.System.Net {
                        ctx.Response.Close ();
                        string response = Receive (ns, 1024);
                        ns.Close ();
-                       StringAssert.StartsWith ("HTTP/1.1 200", response);
-                       StringAssert.Contains ("Transfer-Encoding: chunked", response);
+                       Assert.IsTrue(response.StartsWith ("HTTP/1.1 200"));
+                       Assert.IsTrue(response.Contains ("Transfer-Encoding: chunked"));
                }
 
                [Test]
index c088e4e14e2ddeb71509bbda356c4d7761d12c66..6ff1b33260ed2ab7e82883d4f600a12e89136888 100644 (file)
@@ -30,6 +30,7 @@
 using System;
 using System.IO;
 using System.Net;
+using System.Net.NetworkInformation;
 using System.Net.Sockets;
 using System.Text;
 using System.Collections.Generic;
@@ -194,15 +195,22 @@ namespace MonoTests.System.Net
                [Test]
                public void HttpRequestIsLocal ()
                {
-                       var ips = new List<IPAddress> (Dns.GetHostAddresses (Dns.GetHostName ()));
+                       var port = NetworkHelpers.FindFreePort ();
+                       var ips = new List<IPAddress> ();
                        ips.Add (IPAddress.Loopback);
+                       foreach (var adapter in NetworkInterface.GetAllNetworkInterfaces ()) {
+                               foreach (var ip in adapter.GetIPProperties ().UnicastAddresses) {
+                                       ips.Add (ip.Address);
+                               }
+                       }
+
                        foreach (var ip in ips) {
                                if (ip.AddressFamily != AddressFamily.InterNetwork)
                                        continue;
 
                                HttpListener listener = HttpListener2Test.CreateAndStartListener (
-                                       "http://" + ip + ":9000/HttpRequestIsLocal/");
-                               NetworkStream ns = HttpListener2Test.CreateNS (ip, 9000);
+                                       "http://" + ip + ":" + port + "/HttpRequestIsLocal/");
+                               NetworkStream ns = HttpListener2Test.CreateNS (ip, port);
                                HttpListener2Test.Send (ns, "GET /HttpRequestIsLocal/ HTTP/1.0\r\n\r\n");
                                HttpListenerContext ctx = listener.GetContext ();
                                HttpListenerRequest request = ctx.Request;
index 2776bb742b4d995fbab276275a1dd56428375e70..ee6c82895e3e7ae5914ca2ffb463a39cc7fdb9d8 100644 (file)
@@ -1718,7 +1718,9 @@ namespace MonoTests.System.Net
                                Where = "first write";
                                StreamWriter writer = new StreamWriter (ns, Encoding.ASCII);
                                writer.Write (  "HTTP/1.1 401 Unauthorized\r\n" +
-                                               "WWW-Authenticate: NTLM\r\n" +
+                                       "WWW-Authenticate: ignore\r\n" +
+                                       "WWW-Authenticate: NTLM\r\n" +
+                                       "WWW-Authenticate: ignore,K\r\n" +
                                                "Content-Length: 5\r\n\r\nWRONG");
 
                                writer.Flush ();
@@ -2309,7 +2311,6 @@ namespace MonoTests.System.Net
                        completed [1] = new ManualResetEvent (false);
 
                        using (ListenerScope scope = new ListenerScope (processor, port, completed [0])) {
-                               ManualResetEvent clientCompleted = new ManualResetEvent (false);
                                Uri address = new Uri (string.Format ("http://localhost:{0}", port));
                                HttpWebRequest client = (HttpWebRequest) WebRequest.Create (address);
 
index e2fbcadabd8f3b6be0268557f7a2e066d3d16bca..f3c9ad8367119b15814a51509d33550b8609b37d 100644 (file)
@@ -145,16 +145,8 @@ public class IPAddressTest
                "0xff.0x7f.0x20.0xf", "255.127.32.15",
                "0.0.0.0", IPAddress.Any.ToString(),
                "255.255.255.255", IPAddress.Broadcast.ToString(),
-               "12.1.1.3 abc", "12.1.1.3",
-               "12.1 .1.2", "12.0.0.1",
-               "12.1 .zzzz.2", "12.0.0.1",
                "12.1.7", "12.1.0.7",
                "12", "0.0.0.12",
-               "12.5.3 foo.67.test.test.7FFFFFFFFFfaFFF789FFFFFFFFFFFFFFF", "12.5.0.3",
-               "12.1 foo.bar.test.test.baf", "12.0.0.1",
-               "12.1.4.6 foo.bar.test.test.baf", "12.1.4.6",
-               "12.3 foo.bar.test.test.4", "12.0.0.3",
-               "12 foo.bar.test.test.baf", "0.0.0.12",
                "65536", "0.1.0.0",
                "65535", "0.0.255.255",
                "20.65535", "20.0.255.255",
@@ -187,6 +179,14 @@ public class IPAddressTest
                "12...",
                "  ",
                "7848198702",
+               "12.1.1.3 abc",
+               "12.1 .1.2",
+               "12.1 .zzzz.2",
+               "12.5.3 foo.67.test.test.7FFFFFFFFFfaFFF789FFFFFFFFFFFFFFF",
+               "12.1 foo.bar.test.test.baf",
+               "12.1.4.6 foo.bar.test.test.baf",
+               "12.3 foo.bar.test.test.4",
+               "12 foo.bar.test.test.baf",
        };
 
        static byte [] ipv4MappedIPv6Prefix = new byte [] { 0,0, 0,0, 0,0, 0,0, 0,0, 0xFF,0xFF };
@@ -197,8 +197,8 @@ public class IPAddressTest
                Assert.AreEqual ((long) 0, IPAddress.Any.Address, "#1");
                Assert.AreEqual ((long) 0xFFFFFFFF, IPAddress.Broadcast.Address, "#2");
                long loopback = IPAddress.HostToNetworkOrder (BitConverter.IsLittleEndian ? 
-                                                             0x7f000001 : 
-                                                             0x0100007f);
+                                                                 0x7f000001 : 
+                                                                 0x0100007f);
                Assert.AreEqual (loopback, IPAddress.Loopback.Address, "#3");
                Assert.AreEqual ((long) 0xFFFFFFFF, IPAddress.None.Address, "#4");
        }
@@ -241,8 +241,8 @@ public class IPAddressTest
        [Test]
        public void IsLoopbackV6 ()
        {
-               if (!Socket.SupportsIPv6)
-                       Assert.Ignore ("IPv6 must be enabled in machine.config");
+//             if (!Socket.SupportsIPv6)
+//                     Assert.Ignore ("IPv6 must be enabled in machine.config");
 
                IPAddress ip = IPAddress.IPv6Loopback;
                Assert.IsTrue (IPAddress.IsLoopback (ip), "#1");
@@ -277,24 +277,16 @@ public class IPAddressTest
        [Test]
        public void Address ()
        {
-               // hm, lame, anything is accepted by ms.net
-               /*
                try {
                        IPAddress ip1 = new IPAddress (0x0000000100000000);
-                       Assertion.Fail ("#1");
+                       Assert.Fail ("#1");
                } catch (ArgumentOutOfRangeException) {}
+               
                IPAddress ip = IPAddress.Parse ("127.0.0.1");
                ip.Address = 0;
                ip.Address = 0xffffffff;
-               try {
-                       ip.Address = -1;
-                       Assertion.Fail ("#2");
-               } catch (ArgumentOutOfRangeException) {}
-               try {
-                       ip.Address = 0x0000000100000000;
-                       Assertion.Fail ("#3");
-               } catch (ArgumentOutOfRangeException) {}
-               */
+               ip.Address = -1;
+               ip.Address = 0x0000000100000000;
        }
 
        [Test]
@@ -620,8 +612,8 @@ public class IPAddressTest
        [Test]
        public void ParseWrongV6 ()
        {
-               if (!Socket.SupportsIPv6)
-                       Assert.Ignore ("IPv6 must be enabled in machine.config");
+               //if (!Socket.SupportsIPv6)
+               //      Assert.Ignore ("IPv6 must be enabled in machine.config");
 
                for (int i = 0; i < ipv6ParseWrong.Length; i++) {
                        string ipAddress = ipv6ParseWrong [i];
@@ -631,14 +623,12 @@ public class IPAddressTest
                                Assert.Fail ("#1:" + i + " (" + ipAddress + ")");
                        } catch (FormatException ex) {
                                Assert.AreEqual (typeof (FormatException), ex.GetType (), "#2:" + i);
-                               Assert.IsNull (ex.InnerException, "#3:" + i);
+                               Assert.AreEqual(typeof(SocketException), ex.InnerException.GetType (), "#3:" + i);
                                Assert.IsNotNull (ex.Message, "#4:" + i);
                        }
                }
        }
 
-#if NET_4_5
-
        [Test]
        public void MapToIPv6 ()
        {
@@ -673,8 +663,6 @@ public class IPAddressTest
                return true;
        }
 
-#endif
-
        [Test]
        public void EqualsFromBytes ()
        {
@@ -686,6 +674,18 @@ public class IPAddressTest
 
        }
 
+       [Test]
+       [Category ("NotDotNet")]
+       public void UnixInterfaceNameAsZoneIndex ()
+       {
+               var ip = IPAddress.Parse ("fe80::bae8:56ff:fe47:af7e%en0");
+
+               // Should be en0 but it's of long type!
+               Assert.AreEqual (0, ip.ScopeId);
+               
+               Assert.AreEqual ("fe80::bae8:56ff:fe47:af7e", ip.ToString ());
+       }
+
 }
 }
 
index 63a6b3e52b3e2ffd2c27acab0f8c8e547e035ddc..346f35bdeacd358202f49bad9a130cef91bd0066 100644 (file)
@@ -219,7 +219,7 @@ public class ServicePointTest
 
                ServicePointManager.DnsRefreshTimeout = dnsRefreshTimeout;
 
-               uri = new Uri ("http://www.google.com/");
+               uri = new Uri ("http://localhost/");
                sp = ServicePointManager.FindServicePoint (uri);
 
                hostEntryProperty = typeof (ServicePoint).GetProperty ("HostEntry", BindingFlags.NonPublic | BindingFlags.Instance);
index d88c9864e23191eb010c44619bdc5eafabb78ef3..0257ff50fecd19026c2de0e1019aa883ddebb3b0 100644 (file)
@@ -123,11 +123,6 @@ namespace MonoTests.System.Net
                        Assert.AreEqual (1, p.BypassList.Length, "#4");
                }
 
-               [Test]
-               public void GetProxy ()
-               {
-               }
-
                [Test]
                public void IsByPassed ()
                {
index 4aa40ff84e75af8e636bd9bfb6d4a4f106e85d8b..7179e186f33987fde7de157ab0cc31975c94b9e0 100644 (file)
@@ -36,7 +36,6 @@ using System.Security.Cryptography;
 namespace MonoTests.System.Security.Cryptography {
 
        [TestFixture]
-
        public class OidTest {
 
                static string invalidOid = "1.0";
@@ -97,7 +96,7 @@ namespace MonoTests.System.Security.Cryptography {
                public void ConstructorStringStringNull () 
                {
                        Oid o = new Oid (validOid, null);
-                       Assert.IsNull (o.FriendlyName, "FriendlyName");
+                       Assert.AreEqual ("RSA", o.FriendlyName, "FriendlyName");
                        Assert.AreEqual (validOid, o.Value, "Value");
                }
 
@@ -136,7 +135,7 @@ namespace MonoTests.System.Security.Cryptography {
                        Oid o = new Oid (validOid, invalidName);
                        Assert.AreEqual (invalidName, o.FriendlyName, "FriendlyName");
                        o.FriendlyName = null;
-                       Assert.IsNull (o.FriendlyName, "FriendlyName-Null");
+                       Assert.AreEqual ("RSA", o.FriendlyName, "FriendlyName-Null");
                }
 
                [Test]
@@ -212,8 +211,15 @@ namespace MonoTests.System.Security.Cryptography {
                        o.FriendlyName = "sha512";
                        Assert.AreEqual (o.Value, "2.16.840.1.101.3.4.2.3", "sha512 Value from FriendlyName");
 
+                       o = new Oid ("2.16.840.1.101.3.4.2.2");
+                       Assert.AreEqual ("2.16.840.1.101.3.4.2.2", o.Value, "sha384 Value");
+                       Assert.AreEqual ("sha384", o.FriendlyName, "sha384 FriendlyName");
+
+                       o = new Oid ("1.2.840.113549.1.1.12");
+                       Assert.AreEqual ("1.2.840.113549.1.1.12", o.Value, "sha384RSA Value");
+                       Assert.AreEqual ("sha384RSA", o.FriendlyName, "sha384RSA FriendlyName");
+
                        // TODO: add other well known oid as we find them
                }
        }
 }
-
index e30968bf5adad0a3b22dcdf945de6579205a4b17..db3a57adab565ceadca022b8836d78ba7aec4563 100644 (file)
@@ -180,6 +180,15 @@ namespace MonoTests.System.Threading {
                        Assert.IsTrue (created, "Created");
                }
 
+               [Test]
+               public void Constructor_CreatedWithSameName ()
+               {
+                       var s1 = new Semaphore(1, 5, "name");
+                       bool created;
+                       var s2 = new Semaphore(1, 5, "name", out created);
+                       Assert.IsFalse (created);
+               }
+
                [Test]
                [Category ("MobileNotWorking")]
                public void Constructor_IntIntStringBoolSecurity ()
index 2b6a95ff768e56529024f14abce4e5f0c7cab5fd..3dd8cf239af06c93b0219b6d7aacabf5b0cef022 100644 (file)
@@ -40,7 +40,6 @@ namespace MonoTests.System.Timers
        public class TimerTest
        {
                Timer timer;
-               int _elapsedCount;
 
                [SetUp]
                public void SetUp ()
@@ -287,19 +286,46 @@ namespace MonoTests.System.Timers
                        Assert.IsFalse (timer.Enabled, "#3");
                }
 
-               [Test] // bug #325368
+               [Test] // bug https://bugzilla.novell.com/show_bug.cgi?id=325368
                public void EnabledInElapsed ()
                {
-                       _elapsedCount = 0;
+                       var elapsedCount = 0;
+                       var mre = new ST.ManualResetEventSlim ();
                        timer = new Timer (50);
                        timer.AutoReset = false;
-                       timer.Elapsed += new ElapsedEventHandler (EnabledInElapsed_Elapsed);
+                       timer.Elapsed += (s, e) =>
+                       {
+                               elapsedCount++;
+                               if (elapsedCount == 1)
+                                       timer.Enabled = true;
+                               else if (elapsedCount == 2)
+                                       mre.Set ();
+                       };
                        timer.Start ();
 
-                       ST.Thread.Sleep (200);
+                       Assert.IsTrue (mre.Wait (500), "#1 re-enabling timer in Elapsed didn't work");
+                       Assert.AreEqual (2, elapsedCount, "#2 wrong elapsedCount");
                        timer.Stop ();
+               }
 
-                       Assert.IsTrue (_elapsedCount == 2,  "#1 loss of events");
+               [Test]
+               public void AutoResetEventFalseStopsFiringElapsed ()
+               {
+                       var elapsedCount = 0;
+                       var mre = new ST.ManualResetEventSlim ();
+                       timer = new Timer (50);
+                       timer.AutoReset = false;
+                       timer.Elapsed += (s, e) =>
+                       {
+                               elapsedCount++;
+                               if (elapsedCount > 1)
+                                       mre.Set ();
+                       };
+                       timer.Start ();
+
+                       Assert.IsFalse (mre.Wait (500), "#1 AutoResetEvent=false didn't stop firing Elapsed, elapsedCount=" + elapsedCount);
+                       Assert.AreEqual (1, elapsedCount, "#2 wrong elapsedCount");
+                       timer.Stop ();
                }
 
                [Test]
@@ -308,14 +334,6 @@ namespace MonoTests.System.Timers
                        Assert.IsTrue (new RaceTest (true).Success, "#1");
                        Assert.IsTrue (new RaceTest (false).Success, "#2");
                }
-
-               void EnabledInElapsed_Elapsed (object sender, ElapsedEventArgs e)
-               {
-                       _elapsedCount++;
-                       Timer t = sender as Timer;
-                       if (_elapsedCount == 1)
-                               t.Enabled = true;
-               }
        }
 
        class RaceTest
index a01e0accc2fb580acd4c5e279ea39f8b7b7625c3..59ef15dd76430231d670c9668085cec93c662ec8 100644 (file)
@@ -138,7 +138,7 @@ namespace MonoTests.System
                        b.UserName = "myname";
                        Assert.AreEqual ("myname", b.Uri.UserInfo, "2.UserName");
                        b.Password = "mypwd";
-                       Assert.AreEqual ("myname", b.Uri.UserInfo, "2.Password");
+                       Assert.AreEqual ("myname:mypwd", b.Uri.UserInfo, "2.Password");
                        Assert.AreEqual ("/", b.Uri.LocalPath, "2.Uri.LocalPath");
 
                        b = new UriBuilder ("mailto", "contoso.com");
index 66823040979ee53892ab5709195005d8a7f5591f..6cffcb02105ebdb869da7bb4c3a377c8828945e2 100644 (file)
@@ -356,7 +356,7 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [ExpectedException (typeof (ArgumentNullException))]
+               [ExpectedException (typeof (NullReferenceException))]
                public void IsBaseOf_UriNull ()
                {
                        UnitTestUriParser p = new UnitTestUriParser ();
@@ -364,7 +364,7 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [ExpectedException (typeof (ArgumentNullException))]
+               [ExpectedException (typeof (NullReferenceException))]
                public void IsBaseOf_NullUri ()
                {
                        UnitTestUriParser p = new UnitTestUriParser ();
@@ -372,7 +372,6 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void IsWellFormedOriginalString ()
                {
                        UnitTestUriParser p = new UnitTestUriParser ();
@@ -381,7 +380,6 @@ namespace MonoTests.System {
 
                [Test]
                [ExpectedException (typeof (NullReferenceException))]
-               [Category ("NotWorking")]
                public void IsWellFormedOriginalString_Null ()
                {
                        UnitTestUriParser p = new UnitTestUriParser ();
@@ -389,7 +387,6 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void OnNewUri ()
                {
                        string scheme = prefix + "on.new.uri";
@@ -420,7 +417,6 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void OnRegister2 ()
                {
                        string scheme = prefix + "onregister2";
@@ -442,7 +438,6 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void Resolve ()
                {
                        UriFormatException error = null;
@@ -451,7 +446,6 @@ namespace MonoTests.System {
                }
 
                [Test]
-               [Category ("NotWorking")]
                public void Resolve_UriNull ()
                {
                        UriFormatException error = null;
@@ -461,7 +455,6 @@ namespace MonoTests.System {
 
                [Test]
                [ExpectedException (typeof (NullReferenceException))]
-               [Category ("NotWorking")]
                public void Resolve_NullUri ()
                {
                        UriFormatException error = null;
@@ -500,7 +493,6 @@ namespace MonoTests.System {
 
                [Test]
                [ExpectedException (typeof (ArgumentOutOfRangeException))]
-               [Category ("NotWorking")]
                public void IsKnownScheme_ExtraSpace ()
                {
                        // same result for space before, inside or after the scheme
index 405c16d93094a5195f576dec95d2b5f5a318dccb..9f5b848af0cb21d9e4af05662fceaa4c10b85a08 100644 (file)
@@ -21,21 +21,12 @@ namespace MonoTests.System
        [TestFixture]
        public class UriTest
        {
-               protected bool isWin32 = false;
-               public bool IriParsing;
+               bool isWin32;
 
                [TestFixtureSetUp]
                public void GetReady ()
                {
                        isWin32 = (Path.DirectorySeparatorChar == '\\');
-
-                       //Make sure Uri static constructor is called
-                       Uri.EscapeDataString ("");
-
-                       FieldInfo iriParsingField = typeof (Uri).GetField ("s_IriParsing",
-                               BindingFlags.Static | BindingFlags.GetField | BindingFlags.NonPublic);
-                       if (iriParsingField != null)
-                               IriParsing = (bool)iriParsingField.GetValue (null);
                }
 
                [Test]
@@ -605,10 +596,7 @@ namespace MonoTests.System
                        Uri u1 = new Uri("http://localhost:8080/test.aspx?ReturnUrl=%2fSearchDoc%2fSearcher.aspx");
                        Uri u2 = new Uri("http://localhost:8080/test.aspx?ReturnUrl=%252fSearchDoc%252fSearcher.aspx");
 
-                       if (IriParsing)
-                               Assert.AreEqual ("http://localhost:8080/test.aspx?ReturnUrl=%2fSearchDoc%2fSearcher.aspx", u1.ToString (), "QE1");
-                       else
-                               Assert.AreEqual ("http://localhost:8080/test.aspx?ReturnUrl=/SearchDoc/Searcher.aspx", u1.ToString (), "QE1");
+                       Assert.AreEqual ("http://localhost:8080/test.aspx?ReturnUrl=%2fSearchDoc%2fSearcher.aspx", u1.ToString (), "QE1");
 
                        Assert.AreEqual ("http://localhost:8080/test.aspx?ReturnUrl=%252fSearchDoc%252fSearcher.aspx", u2.ToString (), "QE2");
                }
@@ -897,11 +885,10 @@ namespace MonoTests.System
                }
 
                [Test]
-               [Category("NotDotNet")]
                public void CheckHostName1 ()
                {
                        // reported to MSDN Product Feedback Center (FDBK28671)
-                       Assert.AreEqual (UriHostNameType.Unknown, Uri.CheckHostName (":11:22:33:44:55:66:77:88"), "#36 known to fail with ms.net: this is not a valid IPv6 address.");
+                       Assert.AreEqual (UriHostNameType.IPv6, Uri.CheckHostName (":11:22:33:44:55:66:77:88"), "#36 known to fail with ms.net: this is not a valid IPv6 address.");
                }
 
                [Test]
@@ -1211,14 +1198,6 @@ namespace MonoTests.System
                        Assert.AreEqual ("http://www.xxx.com/bar/foo/foobar.htm?z=0&y=5" + (char) 0xa9, uri1.MakeRelative (uri8), "#14");
                }
 
-               [Test]
-               [Category ("NotWorking")]
-               public void RelativeUri ()
-               {
-                       var u = new Uri ("/foo/bar");
-                       Assert.IsFalse (u.IsAbsoluteUri, "#1");
-               }
-
                [Test]
                public void RelativeFragmentUri ()
                {
@@ -1736,6 +1715,16 @@ namespace MonoTests.System
                        Assert.AreEqual ("file", unixuri.Scheme, "UnixAbsoluteFilePath_WithSpecialChars #2");
                }
 
+               [Test]
+               [Category ("NotDotNet")]
+               public void UnixAbsolutePath_ReplaceRelative ()
+               {
+                       var u1 = new Uri ("/Users/demo/Projects/file.xml");
+                       var u2 = new Uri (u1, "b.jpg");
+
+                       Assert.AreEqual ("file:///Users/demo/Projects/b.jpg", u2.ToString ());
+               }
+
                [Test]
                public void RelativeUriWithColons ()
                {
@@ -1934,26 +1923,26 @@ namespace MonoTests.System
                                Uri uri;
 
                                uri = new Uri ("/foo", DotNetRelativeOrAbsolute);
-                               Assert.IsFalse (uri.IsAbsoluteUri);
+                               Assert.IsFalse (uri.IsAbsoluteUri, "#2");
                                
-                               Uri.TryCreate("/foo", DotNetRelativeOrAbsolute, out uri);
-                               Assert.IsFalse (uri.IsAbsoluteUri);
+                               Assert.IsTrue (Uri.TryCreate("/foo", DotNetRelativeOrAbsolute, out uri), "#3");
+                               Assert.IsFalse (uri.IsAbsoluteUri, "#3a");
 
                                if (useDotNetRelativeOrAbsoluteField != null) {
                                        uri = new Uri ("/foo", UriKind.RelativeOrAbsolute);
-                                       Assert.IsTrue (uri.IsAbsoluteUri);
+                                       Assert.IsTrue (uri.IsAbsoluteUri, "#4");
 
-                                       Uri.TryCreate("/foo", UriKind.RelativeOrAbsolute, out uri);
-                                       Assert.IsTrue (uri.IsAbsoluteUri);
+                                       Assert.IsTrue (Uri.TryCreate("/foo", UriKind.RelativeOrAbsolute, out uri), "#5");
+                                       Assert.IsTrue (uri.IsAbsoluteUri, "#5a");
 
                                        useDotNetRelativeOrAbsoluteField.SetValue (null, true);
                                }
 
                                uri = new Uri ("/foo", UriKind.RelativeOrAbsolute);
-                               Assert.IsFalse (uri.IsAbsoluteUri);
+                               Assert.IsFalse (uri.IsAbsoluteUri, "#10");
 
-                               Uri.TryCreate("/foo", DotNetRelativeOrAbsolute, out uri);
-                               Assert.IsFalse (uri.IsAbsoluteUri);
+                               Assert.IsTrue (Uri.TryCreate("/foo", UriKind.RelativeOrAbsolute, out uri), "#11");
+                               Assert.IsFalse (uri.IsAbsoluteUri, "#11a");
                        } finally {
                                if (useDotNetRelativeOrAbsoluteField != null)
                                        useDotNetRelativeOrAbsoluteField.SetValue (null, useDotNetRelativeOrAbsoluteOld);
@@ -2038,42 +2027,50 @@ namespace MonoTests.System
                        var baseUri = new Uri ("http://test.com", UriKind.Absolute);
                        var relUri = new Uri ("path/dot./", UriKind.Relative);
                        var uri = new Uri (baseUri, relUri);
-                       if (IriParsing)
-                               Assert.AreEqual ("http://test.com/path/dot./", uri.ToString ());
-                       else
-                               Assert.AreEqual ("http://test.com/path/dot/", uri.ToString ());
+                       Assert.AreEqual ("http://test.com/path/dot./", uri.ToString ());
                }
-       }
 
-       // Tests non default IriParsing
-       [TestFixture]
-       public class UriTestAux : UriTest
-       {
-               private FieldInfo iriParsingField;
-               private bool originalIriParsing;
+               [Test]
+               public void GuardedIPv6Address ()
+               {
+                       var x = new Uri ("asfd://[::1]:123/");
+                       Assert.AreEqual ("[::1]", x.Host, "#1");
+               }
 
-               [TestFixtureSetUp]
-               public void GetReady2 ()
+               [Test]
+               public void CombineWithUserSchema ()
                {
-                       isWin32 = (Path.DirectorySeparatorChar == '\\');
+                       var baseUri = new Uri ("zip:mem:///");
+                       var relativeUrl = "zip:mem:///foo/bar.txt";
 
-                       //Make sure Uri static constructor is called
-                       Uri.EscapeDataString ("");
+                       var result = new Uri (baseUri, relativeUrl);
 
-                       iriParsingField = typeof (Uri).GetField ("s_IriParsing",
-                               BindingFlags.Static | BindingFlags.GetField | BindingFlags.NonPublic);
+                       Assert.AreEqual ("zip:mem:///foo/bar.txt", result.ToString ());
+               }
 
-                       originalIriParsing = (bool) iriParsingField.GetValue (null);
+               [Test]
+               public void Scheme_msapp ()
+               {
+                       var uri = new Uri ("ms-app://s-1-15-2-1613647288");
+                       Assert.AreEqual ("ms-app", uri.Scheme);
+               }
 
-                       IriParsing = !originalIriParsing;
+               [Test]
+               public void CombineWithUnixAbsolutePath ()
+               {
+                       var a = new Uri ("http://localhost/");
+                       var b = new Uri ("/foo", UriKind.RelativeOrAbsolute);
+                       var res = new Uri (a, b);
 
-                       iriParsingField.SetValue (null, IriParsing);
+                       Assert.AreEqual ("http://localhost/foo", res.ToString ());
                }
 
-               [TestFixtureTearDown]
-               public void TearDown ()
+               [Test]
+               public void ImplicitUnixFileWithUnicode ()
                {
-                       iriParsingField.SetValue (null, originalIriParsing);
+                       string value = "/Library/Frameworks/System.Runtim…ee";
+                       Uri uri;
+                       Assert.IsTrue (Uri.TryCreate (value, UriKind.Absolute, out uri));
                }
        }
 }
index 4bb3791c6d412f070cd861899fa16ce814be4574..821cf273ff89dc941b1c065ca58d2e85863c8b90 100644 (file)
@@ -79,51 +79,26 @@ System.Net.Mail/SmtpStatusCode.cs
 ../referencesource/System/net/System/Net/mail/TransferEncoding.cs
 ../referencesource/System/net/System/Net/mail/WriteStateInfoBase.cs
 ../referencesource/System/net/System/Net/mail/mediatypenames.cs
-System.Net.NetworkInformation/DuplicateAddressDetectionState.cs
-System.Net.NetworkInformation/GatewayIPAddressInformation.cs
-System.Net.NetworkInformation/GatewayIPAddressInformationCollection.cs
+System.Net.NetworkInformation/IcmpV4Statistics.cs
+System.Net.NetworkInformation/IcmpV6Statistics.cs
 System.Net.NetworkInformation/IPAddressCollection.cs
-System.Net.NetworkInformation/IPAddressInformation.cs
-System.Net.NetworkInformation/IPAddressInformationCollection.cs
 System.Net.NetworkInformation/IPGlobalProperties.cs
 System.Net.NetworkInformation/IPGlobalStatistics.cs
 System.Net.NetworkInformation/IPInterfaceProperties.cs
-System.Net.NetworkInformation/IPStatus.cs
 System.Net.NetworkInformation/IPv4InterfaceProperties.cs
 System.Net.NetworkInformation/IPv4InterfaceStatistics.cs
 System.Net.NetworkInformation/IPv6InterfaceProperties.cs
-System.Net.NetworkInformation/IcmpV4Statistics.cs
-System.Net.NetworkInformation/IcmpV6Statistics.cs
 System.Net.NetworkInformation/LinuxNetworkInterfaceMarshal.cs
 System.Net.NetworkInformation/MacOsNetworkInterfaceMarshal.cs
-System.Net.NetworkInformation/MulticastIPAddressInformation.cs
-System.Net.NetworkInformation/MulticastIPAddressInformationCollection.cs
-System.Net.NetworkInformation/NetBiosNodeType.cs
-System.Net.NetworkInformation/NetworkAddressChangedEventHandler.cs
-System.Net.NetworkInformation/NetworkAvailabilityChangedEventHandler.cs
-System.Net.NetworkInformation/NetworkAvailabilityEventArgs.cs
 System.Net.NetworkInformation/NetworkChange.cs
-System.Net.NetworkInformation/NetworkInformationAccess.cs
-System.Net.NetworkInformation/NetworkInformationException.cs
 System.Net.NetworkInformation/NetworkInterface.cs
-System.Net.NetworkInformation/NetworkInterfaceComponent.cs
-System.Net.NetworkInformation/NetworkInterfaceType.cs
-System.Net.NetworkInformation/OperationalStatus.cs
-System.Net.NetworkInformation/PhysicalAddress.cs
 System.Net.NetworkInformation/Ping.cs
 System.Net.NetworkInformation/PingCompletedEventArgs.cs
 System.Net.NetworkInformation/PingCompletedEventHandler.cs
-System.Net.NetworkInformation/PingException.cs
-System.Net.NetworkInformation/PingOptions.cs
-System.Net.NetworkInformation/PingReply.cs
-System.Net.NetworkInformation/PrefixOrigin.cs
-System.Net.NetworkInformation/SuffixOrigin.cs
-System.Net.NetworkInformation/TcpConnectionInformation.cs
-System.Net.NetworkInformation/TcpState.cs
 System.Net.NetworkInformation/TcpStatistics.cs
 System.Net.NetworkInformation/UdpStatistics.cs
 System.Net.NetworkInformation/UnicastIPAddressInformation.cs
-System.Net.NetworkInformation/UnicastIPAddressInformationCollection.cs
+System.Net.NetworkInformation/Win32NetworkInterfaceMarshal.cs
 ../referencesource/System/net/System/Net/SecureProtocols/AuthenticatedStream.cs
 ../referencesource/System/net/System/Net/SecureProtocols/NegotiateEnumTypes.cs
 System.Net.Security/EncryptionPolicy.cs
@@ -132,7 +107,6 @@ System.Net.Security/NegotiateStream.cs
 System.Net.Security/RemoteCertificateValidationCallback.cs
 System.Net.Security/SslPolicyErrors.cs
 System.Net.Security/SslStream.cs
-System.Net/SocketAddress.cs
 System.Net/SocketPermissionAttribute.cs
 System.Net/SocketPermission.cs
 ../referencesource/System/net/System/Net/Sockets/AddressFamily.cs
@@ -165,98 +139,57 @@ System.Net.Sockets/TcpListener.cs
 System.Net.Sockets/UdpClient.cs
 ../referencesource/System/net/System/Net/Sockets/UdpReceiveResult.cs
 System.Net/AuthenticationManager.cs
-System.Net/AuthenticationSchemeSelector.cs
-System.Net/AuthenticationSchemes.cs
-System.Net/Authorization.cs
 System.Net/BasicClient.cs
 System.Net/BindIPEndPoint.cs
 System.Net/ChunkStream.cs
 System.Net/ChunkedInputStream.cs
-System.Net/ConnectionModes.cs
-System.Net/CredentialCache.cs
 System.Net/DecompressionMethods.cs
 System.Net/DefaultCertificatePolicy.cs
 System.Net/DigestClient.cs
 System.Net/Dns.cs
-System.Net/DnsEndPoint.cs
-System.Net/EndPoint.cs
 System.Net/EndPointListener.cs
 System.Net/EndPointManager.cs
 System.Net/EndpointPermission.cs
-System.Net/FileWebRequest.cs
-System.Net/FileWebRequestCreator.cs
-System.Net/FileWebResponse.cs
 System.Net/FtpAsyncResult.cs
 System.Net/FtpDataStream.cs
 System.Net/FtpRequestCreator.cs
 System.Net/FtpStatus.cs
-System.Net/FtpStatusCode.cs
 System.Net/FtpWebRequest.cs
 System.Net/FtpWebResponse.cs
-System.Net/GlobalProxySelection.cs
 System.Net/HttpConnection.cs
 System.Net/HttpListener.cs
 System.Net/HttpListenerBasicIdentity.cs
 System.Net/HttpListenerContext.cs
-System.Net/HttpListenerException.cs
 System.Net/HttpListenerPrefixCollection.cs
 System.Net/HttpListenerRequest.cs
 System.Net/HttpListenerResponse.cs
 System.Net/HttpListenerTimeoutManager.cs
 System.Net/HttpRequestCreator.cs
-System.Net/HttpRequestHeader.cs
-System.Net/HttpResponseHeader.cs
-System.Net/HttpStatusCode.cs
 System.Net/HttpStreamAsyncResult.cs
-System.Net/HttpVersion.cs
 System.Net/HttpWebRequest.cs
 System.Net/HttpWebResponse.cs
-System.Net/IAuthenticationModule.cs
-System.Net/ICertificatePolicy.cs
-System.Net/ICredentialLookup.cs
 System.Net/ICredentialPolicy.cs
-System.Net/ICredentialsByHost.cs
-System.Net/IPAddress.cs
-System.Net/IPAddress.cs
-System.Net/IPEndPoint.cs
-System.Net/IPHostEntry.cs
-System.Net/IPv6Address.cs
 System.Net/IPv6Address.cs
 System.Net/IWebConnectionState.cs
-System.Net/IWebProxy.cs
 System.Net/IWebProxyScript.cs
-System.Net/IWebRequestCreate.cs
 System.Net/ListenerAsyncResult.cs
 System.Net/ListenerPrefix.cs
 System.Net/MacProxy.cs
 System.Net/MonoHttpDate.cs
 System.Net/NetConfig.cs
-System.Net/NetworkAccess.cs
 System.Net/NetworkCredential.cs
 System.Net/NtlmClient.cs
-System.Net/ProtocolViolationException.cs
 System.Net/RequestStream.cs
 System.Net/ResponseStream.cs
-System.Net/SecurityProtocolType.cs
 System.Net/ServicePoint.cs
 System.Net/ServicePointManager.cs
 System.Net/ServicePointManager.extra.cs
 System.Net/SimpleAsyncResult.cs
-System.Net/SocketAddress.cs
-System.Net/TransportContext.cs
-System.Net/TransportType.cs
 System.Net/WebAsyncResult.cs
 System.Net/WebConnection.cs
 System.Net/WebConnectionData.cs
 System.Net/WebConnectionGroup.cs
 System.Net/WebConnectionStream.cs
-System.Net/WebException.cs
-System.Net/WebExceptionStatus.cs
-System.Net/WebHeaderCollection.cs
-System.Net/WebProxy.cs
-System.Net/WebRequest.cs
-System.Net/WebRequestMethods.cs
-System.Net/WebResponse.cs
 System.Net.WebSockets/ClientWebSocket.cs
 System.Net.WebSockets/ClientWebSocketOptions.cs
 System.Net.WebSockets/HttpListenerWebSocketContext.cs
@@ -331,33 +264,13 @@ System.Security.Cryptography.X509Certificates/X509VerificationFlags.cs
 System.Security.Cryptography/AsnEncodedData.cs
 System.Security.Cryptography/AsnEncodedDataCollection.cs
 System.Security.Cryptography/AsnEncodedDataEnumerator.cs
-System.Security.Cryptography/Oid.cs
-System.Security.Cryptography/OidCollection.cs
-System.Security.Cryptography/OidEnumerator.cs
-System.Security.Cryptography/OidGroup.cs
-System.Threading/Semaphore.cs
 System.Threading/ThreadExceptionEventArgs.cs
 System.Threading/ThreadExceptionEventHandler.cs
 System.Timers/ElapsedEventArgs.cs
-System/DefaultUriParser.cs
-System/FileStyleUriParser.cs
-System/FtpStyleUriParser.cs
-System/GenericUriParser.cs
-System/GenericUriParserOptions.cs
-System/HttpStyleUriParser.cs
 System/IOSelector.cs
-System/NetPipeStyleUriParser.cs
-System/NetTcpStyleUriParser.cs
-System/NewsStyleUriParser.cs
 System/Platform.cs
 System/SRDescriptionAttribute.cs
-System/Uri.cs
-System/UriBuilder.cs
-System/UriHelper.cs
-System/UriParser.cs
 System/UriTypeConverter.cs
-System/UriElements.cs
-System/UriParseComponents.cs
 System.Windows.Input/ICommand.cs
 
 Mono.Net.Security/CallbackHelpers.cs
@@ -375,18 +288,20 @@ Mono.Net.Security/MonoTlsStream.cs
 Mono.Net.Security/NoReflectionHelper.cs
 Mono.Net.Security/SystemCertificateValidator.cs
 
+ReferenceSources/AutoWebProxyScriptEngine.cs
 ReferenceSources/AssertWrapper.cs
+ReferenceSources/CAPI.cs
 ReferenceSources/EnvironmentHelpers.cs
+ReferenceSources/HttpApi.cs
 ReferenceSources/Internal.cs
 ReferenceSources/HttpSysSettings.cs
 ReferenceSources/Logging.cs
 ReferenceSources/NativeMethods.cs
+ReferenceSources/RequestCacheProtocol.cs
 ReferenceSources/SettingsSectionInternal.cs
 ReferenceSources/Socket.cs
 ReferenceSources/SR.cs
 ReferenceSources/SRCategoryAttribute.cs
-ReferenceSources/SystemNetworkCredential.cs
-ReferenceSources/WebHeaderCollectionType.cs
 ReferenceSources/Win32Exception.cs
 
 ../referencesource/System/regex/system/text/regularexpressions/Regex.cs
@@ -743,36 +658,147 @@ ReferenceSources/Win32Exception.cs
 ../referencesource/System/compmod/system/diagnostics/TraceSwitch.cs
 ../referencesource/System/compmod/system/diagnostics/traceutils.cs
 
+../referencesource/System/net/System/_DomainName.cs
+../referencesource/System/net/System/_IPv4Address.cs
+../referencesource/System/net/System/_IPv6Address.cs
+../referencesource/System/net/System/_UncName.cs
+../referencesource/System/net/System/_UriSyntax.cs
+../referencesource/System/net/System/GenericUriParser.cs
+../referencesource/System/net/System/IriHelper.cs
+../referencesource/System/net/System/URI.cs
+../referencesource/System/net/System/uribuilder.cs
 ../referencesource/System/net/System/UriEnumTypes.cs
+../referencesource/System/net/System/UriExt.cs
 ../referencesource/System/net/System/URIFormatException.cs
+../referencesource/System/net/System/UriHelper.cs
 ../referencesource/System/net/System/UriHostNameType.cs
+../referencesource/System/net/System/UriParserTemplates.cs
 ../referencesource/System/net/System/URIPartial.cs
+../referencesource/System/net/System/UriScheme.cs
 
 ../referencesource/System/net/System/Net/_BufferOffsetSize.cs
+../referencesource/System/net/System/Net/_Connection.cs
+../referencesource/System/net/System/Net/_emptywebproxy.cs
+../referencesource/System/net/System/Net/_HeaderInfo.cs
+../referencesource/System/net/System/Net/_HeaderInfoTable.cs
+../referencesource/System/net/System/Net/_HTTPDateParse.cs
+../referencesource/System/net/System/Net/_IStreams.cs
+../referencesource/System/net/System/Net/_NetRes.cs
 ../referencesource/System/net/System/Net/_LazyAsyncResult.cs
 ../referencesource/System/net/System/Net/_LoggingObject.cs
+../referencesource/System/net/System/Net/_PooledStream.cs
+../referencesource/System/net/System/Net/_ProxyChain.cs
 ../referencesource/System/net/System/Net/_ScatterGatherBuffers.cs
+../referencesource/System/net/System/Net/_Semaphore.cs
+../referencesource/System/net/System/Net/_TimerThread.cs
+../referencesource/System/net/System/Net/_WebProxyDataBuilder.cs
+../referencesource/System/net/System/Net/AuthenticationScheme.cs
+../referencesource/System/net/System/Net/AuthenticationSchemeSelector.cs
+../referencesource/System/net/System/Net/Authorization.cs
+../referencesource/System/net/System/Net/CredentialCache.cs
 ../referencesource/System/net/System/Net/cookie.cs
 ../referencesource/System/net/System/Net/cookiecollection.cs
 ../referencesource/System/net/System/Net/cookiecontainer.cs
 ../referencesource/System/net/System/Net/cookieexception.cs
+../referencesource/System/net/System/Net/connectionpool.cs
+../referencesource/System/net/System/Net/DnsEndPoint.cs
+../referencesource/System/net/System/Net/EndPoint.cs
+../referencesource/System/net/System/Net/FtpStatusCode.cs
+../referencesource/System/net/System/Net/filewebrequest.cs
+../referencesource/System/net/System/Net/filewebresponse.cs
+../referencesource/System/net/System/Net/GlobalProxySelection.cs
+../referencesource/System/net/System/Net/HttpListenerException.cs
 ../referencesource/System/net/System/Net/HttpListenerRequestUriBuilder.cs
+../referencesource/System/net/System/Net/HttpRequestHeader.cs
+../referencesource/System/net/System/Net/HttpResponseHeader.cs
+../referencesource/System/net/System/Net/HttpStatusCode.cs
+../referencesource/System/net/System/Net/HttpVersion.cs
+../referencesource/System/net/System/Net/IAuthenticationModule.cs
+../referencesource/System/net/System/Net/ICertificatePolicy.cs
+../referencesource/System/net/System/Net/ICredentials.cs
+../referencesource/System/net/System/Net/ICredentialsByHost.cs
 ../referencesource/System/net/System/Net/Internal.cs
+../referencesource/System/net/System/Net/IPAddress.cs
+../referencesource/System/net/System/Net/IPEndPoint.cs
+../referencesource/System/net/System/Net/IPHostEntry.cs
+../referencesource/System/net/System/Net/iwebproxy.cs
+../referencesource/System/net/System/Net/IWebProxyFinder.cs
+../referencesource/System/net/System/Net/IWebRequestCreate.cs
+../referencesource/System/net/System/Net/NetworkAccess.cs
+../referencesource/System/net/System/Net/ProtocolViolationException.cs
+../referencesource/System/net/System/Net/TransportContext.cs
+../referencesource/System/net/System/Net/TransportType.cs
 ../referencesource/System/net/System/Net/UnicodeDecodingConformance.cs
 ../referencesource/System/net/System/Net/UnicodeEncodingConformance.cs
 ../referencesource/System/net/System/Net/ServicePointManager.cs
+../referencesource/System/net/System/Net/SocketAddress.cs
 ../referencesource/System/net/System/Net/webclient.cs
+../referencesource/System/net/System/Net/WebException.cs
+../referencesource/System/net/System/Net/WebExceptionStatus.cs
+../referencesource/System/net/System/Net/WebHeaderCollection.cs
 ../referencesource/System/net/System/Net/WebPermission.cs
+../referencesource/System/net/System/Net/webproxy.cs
+../referencesource/System/net/System/Net/WebRequestMethods.cs
+../referencesource/System/net/System/Net/WebRequest.cs
+../referencesource/System/net/System/Net/WebResponse.cs
 ../referencesource/System/net/System/Net/WebUtility.cs
 ../referencesource/System/net/System/Net/WriteStreamClosedEventArgs.cs
 
+../referencesource/System/net/System/Net/Cache/RequestCache.cs
+../referencesource/System/net/System/Net/Cache/RequestCacheEntry.cs
 ../referencesource/System/net/System/Net/Cache/RequestCachePolicy.cs
+../referencesource/System/net/System/Net/Cache/RequestCacheManager.cs
+
+../referencesource/System/net/System/Net/Configuration/DefaultProxySection.cs
 
 ../referencesource/System/net/System/Net/Sockets/IPProtectionLevel.cs
 ../referencesource/System/net/System/Net/Sockets/NetworkStream.cs
+
+../referencesource/System/net/System/Net/NetworkInformation/DuplicateAddressDetectionState.cs
+../referencesource/System/net/System/Net/NetworkInformation/GatewayIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/GatewayIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPGlobalProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPGlobalStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPInterfaceProperties.cs
 ../referencesource/System/net/System/Net/NetworkInformation/IPInterfaceStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPStatus.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPv4InterfaceProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IPv6InterfaceProperties.cs
+../referencesource/System/net/System/Net/NetworkInformation/IcmpV4Statistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/IcmpV6Statistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/MulticastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/MulticastIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkAddressChange.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInformationException.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInformationPermission.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInterface.cs
+../referencesource/System/net/System/Net/NetworkInformation/NetworkInterfaceComponent.cs
+../referencesource/System/net/System/Net/NetworkInformation/OperationalStatus.cs
+../referencesource/System/net/System/Net/NetworkInformation/PhysicalAddress.cs
+../referencesource/System/net/System/Net/NetworkInformation/PingOptions.cs
+../referencesource/System/net/System/Net/NetworkInformation/PingReply.cs
+../referencesource/System/net/System/Net/NetworkInformation/PrefixOrigin.cs
 ../referencesource/System/net/System/Net/NetworkInformation/ScopeLevel.cs
+../referencesource/System/net/System/Net/NetworkInformation/SuffixOrigin.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemGatewayIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemMulticastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemUnicastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/SystemTcpConnection.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpConnection.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpState.cs
+../referencesource/System/net/System/Net/NetworkInformation/TcpStatistics.cs
+../referencesource/System/net/System/Net/NetworkInformation/UdpStatistics.cs
 ../referencesource/System/net/System/Net/NetworkInformation/UnicastIPAddressInformation.cs
+../referencesource/System/net/System/Net/NetworkInformation/UnicastIPAddressInformationCollection.cs
+../referencesource/System/net/System/Net/NetworkInformation/interfacetype.cs
+../referencesource/System/net/System/Net/NetworkInformation/nodetype.cs
+../referencesource/System/net/System/Net/NetworkInformation/pingexception.cs
+
+../referencesource/System/sys/system/IO/ports/InternalResources.cs
 
 ../referencesource/System/sys/system/runtime/interopservices/DefaultParameterValueAttribute.cs
 ../referencesource/System/sys/system/runtime/interopservices/handlecollector.cs
@@ -780,6 +806,13 @@ ReferenceSources/Win32Exception.cs
 ../referencesource/System/sys/system/runtime/versioning/FrameworkName.cs
 
 ../referencesource/System/sys/system/threading/Barrier.cs
+../referencesource/System/sys/system/threading/semaphore.cs
+
+../referencesource/System/security/system/security/Authentication/ExtendedProtection/TokenBinding.cs
+
+../referencesource/System/security/system/security/cryptography/oid.cs
+
+../referencesource/System/security/system/security/cryptography/x509/x509utils.cs
 
 ../referencesource/System/security/system/security/permissions/typedescriptorpermission.cs
 
diff --git a/mcs/class/System/mobile_static_System_test.dll.exclude.sources b/mcs/class/System/mobile_static_System_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..8f84347
--- /dev/null
@@ -0,0 +1,190 @@
+Microsoft.CSharp/CodeGeneratorFromCompileUnitTest.cs
+Microsoft.CSharp/CodeGeneratorFromExpressionTest.cs
+Microsoft.CSharp/CodeGeneratorFromNamespaceTest.cs
+Microsoft.CSharp/CodeGeneratorFromStatementTest.cs
+Microsoft.CSharp/CodeGeneratorFromTypeTest.cs
+Microsoft.CSharp/CodeGeneratorIdentifierTest.cs
+Microsoft.CSharp/CodeGeneratorTestBase.cs
+Microsoft.CSharp/CodeGeneratorTypeOutputTest.cs
+Microsoft.CSharp/CSharpCodeProviderCas.cs
+Microsoft.CSharp/CSharpCodeProviderTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromBinaryOperatorTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromCompileUnitTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromExpressionTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromNamespaceTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromStatementTest.cs
+Microsoft.VisualBasic/CodeGeneratorFromTypeTest.cs
+Microsoft.VisualBasic/CodeGeneratorTestBase.cs
+Microsoft.VisualBasic/VBCodeProviderCas.cs
+Microsoft.VisualBasic/VBCodeProviderTest.cs
+System.CodeDom/CodeArgumentReferenceExpressionCas.cs
+System.CodeDom/CodeArgumentReferenceExpressionTest.cs
+System.CodeDom/CodeArrayCreateExpressionCas.cs
+System.CodeDom/CodeArrayCreateExpressionTest.cs
+System.CodeDom/CodeArrayIndexerExpressionCas.cs
+System.CodeDom/CodeAssignStatementCas.cs
+System.CodeDom/CodeAttachEventStatementCas.cs
+System.CodeDom/CodeAttachEventStatementTest.cs
+System.CodeDom/CodeAttributeArgumentCas.cs
+System.CodeDom/CodeAttributeArgumentCollectionCas.cs
+System.CodeDom/CodeAttributeArgumentCollectionTest.cs
+System.CodeDom/CodeAttributeArgumentTest.cs
+System.CodeDom/CodeAttributeDeclarationCas.cs
+System.CodeDom/CodeAttributeDeclarationCollectionCas.cs
+System.CodeDom/CodeAttributeDeclarationCollectionTest.cs
+System.CodeDom/CodeAttributeDeclarationTest.cs
+System.CodeDom/CodeBaseReferenceExpressionCas.cs
+System.CodeDom/CodeBinaryOperatorExpressionCas.cs
+System.CodeDom/CodeCastExpressionCas.cs
+System.CodeDom/CodeCastExpressionTest.cs
+System.CodeDom/CodeCatchClauseCas.cs
+System.CodeDom/CodeCatchClauseCollectionCas.cs
+System.CodeDom/CodeCatchClauseCollectionTest.cs
+System.CodeDom/CodeCatchClauseTest.cs
+System.CodeDom/CodeChecksumPragmaCas.cs
+System.CodeDom/CodeChecksumPragmaTest.cs
+System.CodeDom/CodeCommentStatementCas.cs
+System.CodeDom/CodeCommentStatementCollectionCas.cs
+System.CodeDom/CodeCommentStatementCollectionTest.cs
+System.CodeDom/CodeCompileUnitCas.cs
+System.CodeDom/CodeConditionStatementCas.cs
+System.CodeDom/CodeConstructorCas.cs
+System.CodeDom/CodeConstructorTest.cs
+System.CodeDom/CodeDefaultValueExpressionCas.cs
+System.CodeDom/CodeDefaultValueExpressionTest.cs
+System.CodeDom/CodeDelegateCreateExpressionCas.cs
+System.CodeDom/CodeDelegateCreateExpressionTest.cs
+System.CodeDom/CodeDelegateInvokeExpressionCas.cs
+System.CodeDom/CodeDirectionExpressionCas.cs
+System.CodeDom/CodeDirectiveCas.cs
+System.CodeDom/CodeDirectiveCollectionCas.cs
+System.CodeDom/CodeDirectiveCollectionTest.cs
+System.CodeDom/CodeEntryPointMethodCas.cs
+System.CodeDom/CodeEventReferenceExpressionCas.cs
+System.CodeDom/CodeEventReferenceExpressionTest.cs
+System.CodeDom/CodeExpressionCas.cs
+System.CodeDom/CodeExpressionCollectionCas.cs
+System.CodeDom/CodeExpressionCollectionTest.cs
+System.CodeDom/CodeExpressionStatementCas.cs
+System.CodeDom/CodeFieldReferenceExpressionCas.cs
+System.CodeDom/CodeGotoStatementCas.cs
+System.CodeDom/CodeGotoStatementTest.cs
+System.CodeDom/CodeIndexerExpressionCas.cs
+System.CodeDom/CodeIterationStatementCas.cs
+System.CodeDom/CodeLabeledStatementTest.cs
+System.CodeDom/CodeLinePragmaCas.cs
+System.CodeDom/CodeLinePragmaTest.cs
+System.CodeDom/CodeMemberEventCas.cs
+System.CodeDom/CodeMemberFieldCas.cs
+System.CodeDom/CodeMemberFieldTest.cs
+System.CodeDom/CodeMemberMethodCas.cs
+System.CodeDom/CodeMemberMethodTest.cs
+System.CodeDom/CodeMemberPropertyCas.cs
+System.CodeDom/CodeMemberPropertyTest.cs
+System.CodeDom/CodeMethodInvokeExpressionCas.cs
+System.CodeDom/CodeMethodInvokeExpressionTest.cs
+System.CodeDom/CodeMethodReferenceExpressionCas.cs
+System.CodeDom/CodeMethodReferenceExpressionTest.cs
+System.CodeDom/CodeMethodReturnStatementCas.cs
+System.CodeDom/CodeNamespaceCas.cs
+System.CodeDom/CodeNamespaceCollectionCas.cs
+System.CodeDom/CodeNamespaceCollectionTest.cs
+System.CodeDom/CodeNamespaceImportCas.cs
+System.CodeDom/CodeNamespaceImportCollectionCas.cs
+System.CodeDom/CodeNamespaceImportCollectionTest.cs
+System.CodeDom/CodeNamespaceImportTest.cs
+System.CodeDom/CodeNamespaceTest.cs
+System.CodeDom/CodeObjectCas.cs
+System.CodeDom/CodeObjectCreateExpressionCas.cs
+System.CodeDom/CodeObjectCreateExpressionTest.cs
+System.CodeDom/CodeParameterDeclarationExpressionCas.cs
+System.CodeDom/CodeParameterDeclarationExpressionCollectionCas.cs
+System.CodeDom/CodeParameterDeclarationExpressionCollectionTest.cs
+System.CodeDom/CodeParameterDeclarationExpressionTest.cs
+System.CodeDom/CodePrimitiveExpressionCas.cs
+System.CodeDom/CodePropertyReferenceExpressionCas.cs
+System.CodeDom/CodePropertyReferenceExpressionTest.cs
+System.CodeDom/CodePropertySetValueReferenceExpressionCas.cs
+System.CodeDom/CodeRegionDirectiveCas.cs
+System.CodeDom/CodeRegionDirectiveTest.cs
+System.CodeDom/CodeRemoveEventStatementCas.cs
+System.CodeDom/CodeRemoveEventStatementTest.cs
+System.CodeDom/CodeSnippetCompileUnitCas.cs
+System.CodeDom/CodeSnippetCompileUnitTest.cs
+System.CodeDom/CodeSnippetExpressionCas.cs
+System.CodeDom/CodeSnippetExpressionTest.cs
+System.CodeDom/CodeSnippetStatementCas.cs
+System.CodeDom/CodeSnippetStatementTest.cs
+System.CodeDom/CodeSnippetTypeMemberCas.cs
+System.CodeDom/CodeSnippetTypeMemberTest.cs
+System.CodeDom/CodeStatementCas.cs
+System.CodeDom/CodeStatementCollectionCas.cs
+System.CodeDom/CodeStatementCollectionTest.cs
+System.CodeDom/CodeThisReferenceExpressionCas.cs
+System.CodeDom/CodeThrowExceptionStatementCas.cs
+System.CodeDom/CodeTryCatchFinallyStatementCas.cs
+System.CodeDom/CodeTypeConstructorCas.cs
+System.CodeDom/CodeTypeConstructorTest.cs
+System.CodeDom/CodeTypeDeclarationCas.cs
+System.CodeDom/CodeTypeDeclarationCollectionCas.cs
+System.CodeDom/CodeTypeDeclarationCollectionTest.cs
+System.CodeDom/CodeTypeDelegateCas.cs
+System.CodeDom/CodeTypeDelegateTest.cs
+System.CodeDom/CodeTypeMemberCas.cs
+System.CodeDom/CodeTypeMemberCollectionCas.cs
+System.CodeDom/CodeTypeMemberCollectionTest.cs
+System.CodeDom/CodeTypeOfExpressionCas.cs
+System.CodeDom/CodeTypeOfExpressionTest.cs
+System.CodeDom/CodeTypeParameterCas.cs
+System.CodeDom/CodeTypeParameterCollectionTest.cs
+System.CodeDom/CodeTypeParameterTest.cs
+System.CodeDom/CodeTypeReferenceCas.cs
+System.CodeDom/CodeTypeReferenceCollectionCas.cs
+System.CodeDom/CodeTypeReferenceCollectionTest.cs
+System.CodeDom/CodeTypeReferenceExpressionCas.cs
+System.CodeDom/CodeTypeReferenceExpressionTest.cs
+System.CodeDom/CodeTypeReferenceTest.cs
+System.CodeDom/CodeVariableDeclarationStatementCas.cs
+System.CodeDom/CodeVariableDeclarationStatementTest.cs
+System.CodeDom/CodeVariableReferenceExpressionCas.cs
+System.CodeDom/CodeVariableReferenceExpressionTest.cs
+System.CodeDom.Compiler/CodeCompilerCas.cs
+System.CodeDom.Compiler/CodeDomProviderCas.cs
+System.CodeDom.Compiler/CodeGeneratorCas.cs
+System.CodeDom.Compiler/CodeGeneratorFromTypeTestBase.cs
+System.CodeDom.Compiler/CodeGeneratorGenerateFromCompileUnitTest.cs
+System.CodeDom.Compiler/CodeGeneratorOptionsCas.cs
+System.CodeDom.Compiler/CodeGeneratorOptionsTest.cs
+System.CodeDom.Compiler/CodeGeneratorTest.cs
+System.CodeDom.Compiler/CodeGeneratorTestBase.cs
+System.CodeDom.Compiler/CodeParserCas.cs
+System.CodeDom.Compiler/CompilerErrorCas.cs
+System.CodeDom.Compiler/CompilerErrorCollectionCas.cs
+System.CodeDom.Compiler/CompilerInfoCas.cs
+System.CodeDom.Compiler/CompilerParametersCas.cs
+System.CodeDom.Compiler/CompilerResultsCas.cs
+System.CodeDom.Compiler/ExecutorCas.cs
+System.CodeDom.Compiler/ExecutorTest.cs
+System.CodeDom.Compiler/GeneratedCodeAttributeCas.cs
+System.CodeDom.Compiler/GeneratedCodeAttributeTest.cs
+System.CodeDom.Compiler/IndentedTextWriterCas.cs
+System.CodeDom.Compiler/IndentedTextWriterTest.cs
+System.CodeDom.Compiler/TempFileCollectionCas.cs
+System.CodeDom.Compiler/TempFileCollectionTest.cs
+System.Configuration/ApplicationSettingsBaseTest.cs
+System.Configuration/ConfigurationExceptionTest.cs
+System.Configuration/ConfigXmlDocumentTest.cs
+System.Configuration/LocalFileSettingsProviderTest.cs
+System.Configuration/SettingElementTest.cs
+System.Configuration/SettingsBaseTest.cs
+System.Configuration/SettingsPropertyCollectionTest.cs
+System.Configuration/SettingsPropertyTest.cs
+System.Configuration/SettingsPropertyValueCollectionTest.cs
+System.Configuration/SettingsPropertyValueTest.cs
+System.Configuration.Provider
+System.Configuration.Provider/ProviderBaseTest.cs
+System.IO.Ports/SerialPortTest.cs
+System.Web/AspNetHostingPermissionAttributeCas.cs
+System.Web/AspNetHostingPermissionAttributeTest.cs
+System.Web/AspNetHostingPermissionCas.cs
+System.Web/AspNetHostingPermissionTest.cs
diff --git a/mcs/class/System/mobile_static_System_test.dll.excludes b/mcs/class/System/mobile_static_System_test.dll.excludes
deleted file mode 100644 (file)
index 8f84347..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-Microsoft.CSharp/CodeGeneratorFromCompileUnitTest.cs
-Microsoft.CSharp/CodeGeneratorFromExpressionTest.cs
-Microsoft.CSharp/CodeGeneratorFromNamespaceTest.cs
-Microsoft.CSharp/CodeGeneratorFromStatementTest.cs
-Microsoft.CSharp/CodeGeneratorFromTypeTest.cs
-Microsoft.CSharp/CodeGeneratorIdentifierTest.cs
-Microsoft.CSharp/CodeGeneratorTestBase.cs
-Microsoft.CSharp/CodeGeneratorTypeOutputTest.cs
-Microsoft.CSharp/CSharpCodeProviderCas.cs
-Microsoft.CSharp/CSharpCodeProviderTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromBinaryOperatorTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromCompileUnitTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromExpressionTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromNamespaceTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromStatementTest.cs
-Microsoft.VisualBasic/CodeGeneratorFromTypeTest.cs
-Microsoft.VisualBasic/CodeGeneratorTestBase.cs
-Microsoft.VisualBasic/VBCodeProviderCas.cs
-Microsoft.VisualBasic/VBCodeProviderTest.cs
-System.CodeDom/CodeArgumentReferenceExpressionCas.cs
-System.CodeDom/CodeArgumentReferenceExpressionTest.cs
-System.CodeDom/CodeArrayCreateExpressionCas.cs
-System.CodeDom/CodeArrayCreateExpressionTest.cs
-System.CodeDom/CodeArrayIndexerExpressionCas.cs
-System.CodeDom/CodeAssignStatementCas.cs
-System.CodeDom/CodeAttachEventStatementCas.cs
-System.CodeDom/CodeAttachEventStatementTest.cs
-System.CodeDom/CodeAttributeArgumentCas.cs
-System.CodeDom/CodeAttributeArgumentCollectionCas.cs
-System.CodeDom/CodeAttributeArgumentCollectionTest.cs
-System.CodeDom/CodeAttributeArgumentTest.cs
-System.CodeDom/CodeAttributeDeclarationCas.cs
-System.CodeDom/CodeAttributeDeclarationCollectionCas.cs
-System.CodeDom/CodeAttributeDeclarationCollectionTest.cs
-System.CodeDom/CodeAttributeDeclarationTest.cs
-System.CodeDom/CodeBaseReferenceExpressionCas.cs
-System.CodeDom/CodeBinaryOperatorExpressionCas.cs
-System.CodeDom/CodeCastExpressionCas.cs
-System.CodeDom/CodeCastExpressionTest.cs
-System.CodeDom/CodeCatchClauseCas.cs
-System.CodeDom/CodeCatchClauseCollectionCas.cs
-System.CodeDom/CodeCatchClauseCollectionTest.cs
-System.CodeDom/CodeCatchClauseTest.cs
-System.CodeDom/CodeChecksumPragmaCas.cs
-System.CodeDom/CodeChecksumPragmaTest.cs
-System.CodeDom/CodeCommentStatementCas.cs
-System.CodeDom/CodeCommentStatementCollectionCas.cs
-System.CodeDom/CodeCommentStatementCollectionTest.cs
-System.CodeDom/CodeCompileUnitCas.cs
-System.CodeDom/CodeConditionStatementCas.cs
-System.CodeDom/CodeConstructorCas.cs
-System.CodeDom/CodeConstructorTest.cs
-System.CodeDom/CodeDefaultValueExpressionCas.cs
-System.CodeDom/CodeDefaultValueExpressionTest.cs
-System.CodeDom/CodeDelegateCreateExpressionCas.cs
-System.CodeDom/CodeDelegateCreateExpressionTest.cs
-System.CodeDom/CodeDelegateInvokeExpressionCas.cs
-System.CodeDom/CodeDirectionExpressionCas.cs
-System.CodeDom/CodeDirectiveCas.cs
-System.CodeDom/CodeDirectiveCollectionCas.cs
-System.CodeDom/CodeDirectiveCollectionTest.cs
-System.CodeDom/CodeEntryPointMethodCas.cs
-System.CodeDom/CodeEventReferenceExpressionCas.cs
-System.CodeDom/CodeEventReferenceExpressionTest.cs
-System.CodeDom/CodeExpressionCas.cs
-System.CodeDom/CodeExpressionCollectionCas.cs
-System.CodeDom/CodeExpressionCollectionTest.cs
-System.CodeDom/CodeExpressionStatementCas.cs
-System.CodeDom/CodeFieldReferenceExpressionCas.cs
-System.CodeDom/CodeGotoStatementCas.cs
-System.CodeDom/CodeGotoStatementTest.cs
-System.CodeDom/CodeIndexerExpressionCas.cs
-System.CodeDom/CodeIterationStatementCas.cs
-System.CodeDom/CodeLabeledStatementTest.cs
-System.CodeDom/CodeLinePragmaCas.cs
-System.CodeDom/CodeLinePragmaTest.cs
-System.CodeDom/CodeMemberEventCas.cs
-System.CodeDom/CodeMemberFieldCas.cs
-System.CodeDom/CodeMemberFieldTest.cs
-System.CodeDom/CodeMemberMethodCas.cs
-System.CodeDom/CodeMemberMethodTest.cs
-System.CodeDom/CodeMemberPropertyCas.cs
-System.CodeDom/CodeMemberPropertyTest.cs
-System.CodeDom/CodeMethodInvokeExpressionCas.cs
-System.CodeDom/CodeMethodInvokeExpressionTest.cs
-System.CodeDom/CodeMethodReferenceExpressionCas.cs
-System.CodeDom/CodeMethodReferenceExpressionTest.cs
-System.CodeDom/CodeMethodReturnStatementCas.cs
-System.CodeDom/CodeNamespaceCas.cs
-System.CodeDom/CodeNamespaceCollectionCas.cs
-System.CodeDom/CodeNamespaceCollectionTest.cs
-System.CodeDom/CodeNamespaceImportCas.cs
-System.CodeDom/CodeNamespaceImportCollectionCas.cs
-System.CodeDom/CodeNamespaceImportCollectionTest.cs
-System.CodeDom/CodeNamespaceImportTest.cs
-System.CodeDom/CodeNamespaceTest.cs
-System.CodeDom/CodeObjectCas.cs
-System.CodeDom/CodeObjectCreateExpressionCas.cs
-System.CodeDom/CodeObjectCreateExpressionTest.cs
-System.CodeDom/CodeParameterDeclarationExpressionCas.cs
-System.CodeDom/CodeParameterDeclarationExpressionCollectionCas.cs
-System.CodeDom/CodeParameterDeclarationExpressionCollectionTest.cs
-System.CodeDom/CodeParameterDeclarationExpressionTest.cs
-System.CodeDom/CodePrimitiveExpressionCas.cs
-System.CodeDom/CodePropertyReferenceExpressionCas.cs
-System.CodeDom/CodePropertyReferenceExpressionTest.cs
-System.CodeDom/CodePropertySetValueReferenceExpressionCas.cs
-System.CodeDom/CodeRegionDirectiveCas.cs
-System.CodeDom/CodeRegionDirectiveTest.cs
-System.CodeDom/CodeRemoveEventStatementCas.cs
-System.CodeDom/CodeRemoveEventStatementTest.cs
-System.CodeDom/CodeSnippetCompileUnitCas.cs
-System.CodeDom/CodeSnippetCompileUnitTest.cs
-System.CodeDom/CodeSnippetExpressionCas.cs
-System.CodeDom/CodeSnippetExpressionTest.cs
-System.CodeDom/CodeSnippetStatementCas.cs
-System.CodeDom/CodeSnippetStatementTest.cs
-System.CodeDom/CodeSnippetTypeMemberCas.cs
-System.CodeDom/CodeSnippetTypeMemberTest.cs
-System.CodeDom/CodeStatementCas.cs
-System.CodeDom/CodeStatementCollectionCas.cs
-System.CodeDom/CodeStatementCollectionTest.cs
-System.CodeDom/CodeThisReferenceExpressionCas.cs
-System.CodeDom/CodeThrowExceptionStatementCas.cs
-System.CodeDom/CodeTryCatchFinallyStatementCas.cs
-System.CodeDom/CodeTypeConstructorCas.cs
-System.CodeDom/CodeTypeConstructorTest.cs
-System.CodeDom/CodeTypeDeclarationCas.cs
-System.CodeDom/CodeTypeDeclarationCollectionCas.cs
-System.CodeDom/CodeTypeDeclarationCollectionTest.cs
-System.CodeDom/CodeTypeDelegateCas.cs
-System.CodeDom/CodeTypeDelegateTest.cs
-System.CodeDom/CodeTypeMemberCas.cs
-System.CodeDom/CodeTypeMemberCollectionCas.cs
-System.CodeDom/CodeTypeMemberCollectionTest.cs
-System.CodeDom/CodeTypeOfExpressionCas.cs
-System.CodeDom/CodeTypeOfExpressionTest.cs
-System.CodeDom/CodeTypeParameterCas.cs
-System.CodeDom/CodeTypeParameterCollectionTest.cs
-System.CodeDom/CodeTypeParameterTest.cs
-System.CodeDom/CodeTypeReferenceCas.cs
-System.CodeDom/CodeTypeReferenceCollectionCas.cs
-System.CodeDom/CodeTypeReferenceCollectionTest.cs
-System.CodeDom/CodeTypeReferenceExpressionCas.cs
-System.CodeDom/CodeTypeReferenceExpressionTest.cs
-System.CodeDom/CodeTypeReferenceTest.cs
-System.CodeDom/CodeVariableDeclarationStatementCas.cs
-System.CodeDom/CodeVariableDeclarationStatementTest.cs
-System.CodeDom/CodeVariableReferenceExpressionCas.cs
-System.CodeDom/CodeVariableReferenceExpressionTest.cs
-System.CodeDom.Compiler/CodeCompilerCas.cs
-System.CodeDom.Compiler/CodeDomProviderCas.cs
-System.CodeDom.Compiler/CodeGeneratorCas.cs
-System.CodeDom.Compiler/CodeGeneratorFromTypeTestBase.cs
-System.CodeDom.Compiler/CodeGeneratorGenerateFromCompileUnitTest.cs
-System.CodeDom.Compiler/CodeGeneratorOptionsCas.cs
-System.CodeDom.Compiler/CodeGeneratorOptionsTest.cs
-System.CodeDom.Compiler/CodeGeneratorTest.cs
-System.CodeDom.Compiler/CodeGeneratorTestBase.cs
-System.CodeDom.Compiler/CodeParserCas.cs
-System.CodeDom.Compiler/CompilerErrorCas.cs
-System.CodeDom.Compiler/CompilerErrorCollectionCas.cs
-System.CodeDom.Compiler/CompilerInfoCas.cs
-System.CodeDom.Compiler/CompilerParametersCas.cs
-System.CodeDom.Compiler/CompilerResultsCas.cs
-System.CodeDom.Compiler/ExecutorCas.cs
-System.CodeDom.Compiler/ExecutorTest.cs
-System.CodeDom.Compiler/GeneratedCodeAttributeCas.cs
-System.CodeDom.Compiler/GeneratedCodeAttributeTest.cs
-System.CodeDom.Compiler/IndentedTextWriterCas.cs
-System.CodeDom.Compiler/IndentedTextWriterTest.cs
-System.CodeDom.Compiler/TempFileCollectionCas.cs
-System.CodeDom.Compiler/TempFileCollectionTest.cs
-System.Configuration/ApplicationSettingsBaseTest.cs
-System.Configuration/ConfigurationExceptionTest.cs
-System.Configuration/ConfigXmlDocumentTest.cs
-System.Configuration/LocalFileSettingsProviderTest.cs
-System.Configuration/SettingElementTest.cs
-System.Configuration/SettingsBaseTest.cs
-System.Configuration/SettingsPropertyCollectionTest.cs
-System.Configuration/SettingsPropertyTest.cs
-System.Configuration/SettingsPropertyValueCollectionTest.cs
-System.Configuration/SettingsPropertyValueTest.cs
-System.Configuration.Provider
-System.Configuration.Provider/ProviderBaseTest.cs
-System.IO.Ports/SerialPortTest.cs
-System.Web/AspNetHostingPermissionAttributeCas.cs
-System.Web/AspNetHostingPermissionAttributeTest.cs
-System.Web/AspNetHostingPermissionCas.cs
-System.Web/AspNetHostingPermissionTest.cs
diff --git a/mcs/class/System/monodroid_System_test.dll.exclude.sources b/mcs/class/System/monodroid_System_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..1aea9da
--- /dev/null
@@ -0,0 +1,83 @@
+#include mobile_static_System_test.dll.exclude.sources
+#include monodroid_System_test.dll.new-exclude.sources
+Microsoft.Win32/IntranetZoneCredentialPolicyCas.cs
+Microsoft.Win32/IntranetZoneCredentialPolicyTest.cs
+Microsoft.Win32/PowerModeChangedEventArgsCas.cs
+Microsoft.Win32/SessionEndedEventArgsCas.cs
+Microsoft.Win32/SessionEndingEventArgsCas.cs
+Microsoft.Win32/SessionSwitchEventArgsCas.cs
+Microsoft.Win32/SessionSwitchEventArgsTest.cs
+Microsoft.Win32/SystemEventsCas.cs
+Microsoft.Win32/TimerElapsedEventArgsCas.cs
+Microsoft.Win32/UserPreferenceChangedEventArgsCas.cs
+Microsoft.Win32/UserPreferenceChangingEventArgsCas.cs
+System.Collections.Concurrent/CollectionStressTestHelper.cs
+System.Collections.Specialized/BitVector32Cas.cs
+System.Collections.Specialized/CollectionsUtilCas.cs
+System.Collections.Specialized/HybridDictionaryCas.cs
+System.Collections.Specialized/ListDictionaryCas.cs
+System.Collections.Specialized/NameObjectCollectionBaseCas.cs
+System.Collections.Specialized/NameValueCollectionCas.cs
+System.Collections.Specialized/OrderedDictionaryCas.cs
+System.Collections.Specialized/StringCollectionCas.cs
+System.Collections.Specialized/StringDictionaryCas.cs
+System.ComponentModel.Design.Serialization/InstanceDescriptorCas.cs
+System/FileStyleUriParserCas.cs
+System/FtpStyleUriParserCas.cs
+System/GenericUriParserCas.cs
+System/GopherStyleUriParserCas.cs
+System/HttpStyleUriParserCas.cs
+System.IO.Compression/DeflateStreamCas.cs
+System.IO.Compression/GZipStreamCas.cs
+System/LdapStyleUriParserCas.cs
+System.Net/DnsCas.cs
+System.Net/FileWebRequestCas.cs
+System.Net/HttpListener2Test.cs
+System.Net/HttpListenerRequestTest.cs
+System.Net/HttpWebRequestCas.cs
+System/NetPipeStyleUriParserCas.cs
+System.Net.Sockets/NetworkStreamCas.cs
+System.Net.Sockets/SocketCas.cs
+System.Net.Sockets/TcpClientCas.cs
+System/NetTcpStyleUriParserCas.cs
+System/NewsStyleUriParserCas.cs
+System.Security.Cryptography.X509Certificates/PublicKeyCas.cs
+System.Security.Cryptography.X509Certificates/X500DistinguishedNameCas.cs
+System.Security.Cryptography.X509Certificates/X509BasicConstraintsExtensionCas.cs
+System.Security.Cryptography.X509Certificates/X509CertificateCollectionCas.cs
+System.Security.Cryptography.X509Certificates/X509ChainCas.cs
+System.Security.Cryptography.X509Certificates/X509ChainPolicyCas.cs
+System.Security.Cryptography.X509Certificates/X509EnhancedKeyUsageExtensionCas.cs
+System.Security.Cryptography.X509Certificates/X509ExtensionCas.cs
+System.Security.Cryptography.X509Certificates/X509KeyUsageExtensionCas.cs
+System.Security.Cryptography.X509Certificates/X509StoreCas.cs
+System.Security.Cryptography.X509Certificates/X509SubjectKeyIdentifierExtensionCas.cs
+System.Security.Permissions/ResourcePermissionBaseCas.cs
+System.Security.Permissions/ResourcePermissionBaseEntryCas.cs
+System.Security.Permissions/ResourcePermissionBaseEntryTest.cs
+System.Security.Permissions/ResourcePermissionBaseTest.cs
+System.Security.Permissions/StorePermissionAttributeCas.cs
+System.Security.Permissions/StorePermissionAttributeTest.cs
+System.Security.Permissions/StorePermissionCas.cs
+System.Security.Permissions/StorePermissionTest.cs
+System.Text.RegularExpressions/CaptureCas.cs
+System.Text.RegularExpressions/CaptureCollectionCas.cs
+System.Text.RegularExpressions/GroupCas.cs
+System.Text.RegularExpressions/GroupCollectionCas.cs
+System.Text.RegularExpressions/MatchCas.cs
+System.Text.RegularExpressions/MatchCollectionCas.cs
+System.Text.RegularExpressions/RegexCas.cs
+System.Text.RegularExpressions/RegexCompilationInfoCas.cs
+System.Text.RegularExpressions/RegexRunnerCas.cs
+System.Text.RegularExpressions/RegexRunnerFactoryCas.cs
+System.Threading/SemaphoreCas.cs
+System.Threading/SemaphoreFullExceptionCas.cs
+System.Threading/ThreadExceptionEventArgsCas.cs
+System.Timers/ElapsedEventArgsCas.cs
+System.Timers/TimerCas.cs
+System.Timers/TimersDescriptionAttributeCas.cs
+System/UriBuilderCas.cs
+System/UriCas.cs
+System/UriFormatExceptionCas.cs
+System/UriParserCas.cs
+System/UriTypeConverterCas.cs
diff --git a/mcs/class/System/monodroid_System_test.dll.new-exclude.sources b/mcs/class/System/monodroid_System_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..5e78519
--- /dev/null
@@ -0,0 +1,2 @@
+System.Net/HttpWebRequestTest.cs
+System.Net.Sockets/SocketAcceptAsyncTest.cs
diff --git a/mcs/class/System/monodroid_System_test.dll.sources b/mcs/class/System/monodroid_System_test.dll.sources
new file mode 100644 (file)
index 0000000..3944a95
--- /dev/null
@@ -0,0 +1 @@
+#include System_test.dll.sources
index f359a27bd0595f21c32773c3e1f1fd4424904bcf..cff36539f3bee4d78e7a34495ad889df5509b2bd 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index f06409b2b3d7fcf661710ece4a5faa73b9dcbc46..ed37cbc38ad5a2b1f4ca4ae9b79219d53b750ec1 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 842c1ed0ebe00b59e48bc1392671abaa8d8fb563..d3eaf78bc820a95b976ea944eaf6115929fe57d1 100644 (file)
@@ -6,7 +6,7 @@ LIBRARY = WindowsBase.dll
 LIB_REFS = System System.Xml
 LIB_MCS_FLAGS = -unsafe
 TEST_MCS_FLAGS = -unsafe
-TEST_LIB_REFS = WindowsBase System System.Xml System.Core
+TEST_LIB_REFS = WindowsBase System System.Xml System.Core System.IO.Compression
 
 ifeq (2.0, $(FRAMEWORK_VERSION))
 LIB_MCS_FLAGS += -d:NET_3_0
index 96ea9a5403b45bdae370068ca187d7763be6b3d8..e4b4ae11d2a1633aea6487a63fab392315db1c22 100644 (file)
@@ -457,6 +457,8 @@ namespace System.IO.Packaging {
 
                internal static void WriteRelationships (Dictionary <string, PackageRelationship> relationships, Stream stream)
                {
+                       stream.SetLength(0);
+
                        XmlDocument doc = new XmlDocument ();
                        XmlNamespaceManager manager = new XmlNamespaceManager (doc.NameTable);
                        manager.AddNamespace ("rel", RelationshipNamespace);
index 435e1d5ab7cfe656c637725b4d4c9739d3f5dfa3..783350b09344a6943326be5ae5eafa28a5e589b3 100644 (file)
@@ -95,8 +95,10 @@ namespace System.IO.Packaging {
                {
                        // Ensure that all the data has been read out of the package
                        // stream already. Otherwise we'll lose data when we recreate the zip
-                       foreach (ZipPackagePart part in Parts.Values)
-                               part.GetStream ().Dispose ();
+                       foreach (ZipPackagePart part in Parts.Values) {
+                               if (part.Package != null)
+                                       part.GetStream ().Dispose ();
+                       }
                        
                        // Empty the package stream
                        PackageStream.Position = 0;
@@ -107,6 +109,9 @@ namespace System.IO.Packaging {
 
                                // Write all the part streams
                                foreach (ZipPackagePart part in Parts.Values) {
+                                       if (part.Package == null)
+                                               continue;
+
                                        Stream partStream = part.GetStream ();
                                        partStream.Seek (0, SeekOrigin.Begin);
                                        
index 6ce92d31e57dddeea54db7eac175339197aa5b64..ade937eea58027764bfe61d863d9054b68346adf 100644 (file)
@@ -184,5 +184,33 @@ namespace MonoTests.System.IO.Packaging {
                                                         d.RelationshipType == node.Attributes["Type"].InnerText));\r
             }\r
         }\r
+\r
+        [Test]\r
+        public void CheckRelationshipDeletion ()\r
+        {\r
+            AddThreeRelationShips ();\r
+            package.Flush ();\r
+\r
+            foreach (PackageRelationship p in new List<PackageRelationship> (package.GetRelationships ()).Skip(1))\r
+                package.DeleteRelationship (p.Id);\r
+\r
+            PackagePart part = package.GetPart (new Uri ("/_rels/.rels", UriKind.Relative));\r
+            Assert.IsNotNull (package.GetPart (new Uri ("/_RELS/.RELS", UriKind.Relative)), "#0");\r
+            package.Flush ();\r
+            Assert.IsNotNull (part, "#1");\r
+\r
+            Stream stream = part.GetStream ();\r
+            Assert.IsTrue (stream.Length > 0, "#2a");\r
+\r
+            XmlDocument doc = new XmlDocument ();\r
+            XmlNamespaceManager manager = new XmlNamespaceManager (doc.NameTable);\r
+            manager.AddNamespace("rel", "http://schemas.openxmlformats.org/package/2006/relationships");\r
+            doc.Load (new StreamReader (stream));\r
+\r
+            Assert.IsNotNull (doc.SelectSingleNode ("/rel:Relationships", manager), "#2b");\r
+\r
+            XmlNodeList list = doc.SelectNodes ("/rel:Relationships/*", manager);\r
+            Assert.AreEqual (1, list.Count);\r
+        }\r
     }\r
 }\r
index 933449052f315ffeeae6104c5434135423bf1793..9a1aa2ea4fb7006c4dae06c4b1b1a4bea1a2d3b6 100644 (file)
@@ -27,6 +27,7 @@
 using System;\r
 using System.Collections.Generic;\r
 using System.IO;\r
+using System.IO.Compression;\r
 using System.IO.Packaging;\r
 using System.Linq;\r
 using System.Text;\r
@@ -116,7 +117,7 @@ namespace MonoTests.System.IO.Packaging {
             package = Package.Open (path);\r
             package.Close ();\r
             package = Package.Open (path);\r
-        }\r
+        } \r
                \r
                [Test]\r
                public void Close_FileStreamNotClosed ()\r
@@ -416,5 +417,27 @@ namespace MonoTests.System.IO.Packaging {
             File.Create (path).Close ();\r
             package = Package.Open (path, FileMode.OpenOrCreate, FileAccess.Write);\r
         }\r
+\r
+        [Test]\r
+        public void Check_ZipDateTime ()\r
+        {\r
+            using (var zipStream = new FileStream (path, FileMode.OpenOrCreate, FileAccess.ReadWrite))\r
+            using (package = Package.Open (zipStream, FileMode.OpenOrCreate)) {\r
+                var part = package.CreatePart (new Uri ("/test", UriKind.Relative), "test/type");\r
+                using (var stream = part.GetStream ())\r
+                    stream.Write (new byte [1024 * 1024], 0, 1024 * 1024);\r
+            }\r
+\r
+            using (var stream = new FileStream (path, FileMode.Open, FileAccess.Read))\r
+            using (var archive = new ZipArchive(stream))\r
+            {                \r
+                foreach (var entry in archive.Entries)\r
+                {\r
+                    Assert.AreEqual (DateTime.Now.Year, entry.LastWriteTime.Year);\r
+                    Assert.AreEqual (DateTime.Now.Month, entry.LastWriteTime.Month);\r
+                    Assert.AreEqual (DateTime.Now.Day, entry.LastWriteTime.Day);\r
+                }\r
+            }\r
+        }           \r
     }\r
 }\r
index 1bd14f7aa3173cebe550d6b646b6e1172cc49968..5ac7164723c0f5473c203026edc0d7e2748e3e89 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 2cbea32a40ce4174ddd8a89b55f8975cf11584f9..2a81a73959bba6ddcf3595874bb9651989261160 100644 (file)
@@ -5,9 +5,11 @@
 //
 
 using System;
+using System.Runtime.InteropServices;
 
 namespace zipsharp
 {
+       [StructLayoutAttribute (LayoutKind.Sequential)]
        struct ZipFileInfo
        {
                ZipTime date;
@@ -38,7 +40,7 @@ namespace zipsharp
                public ZipFileInfo (DateTime fileTime)
                {
                        date = new ZipTime (fileTime);
-                       dosDate = new IntPtr ((int)fileTime.ToFileTime ());
+                       dosDate = IntPtr.Zero;
                        internalFileAttributes = IntPtr.Zero;
                        externalFileAttributes = IntPtr.Zero;
                }
index 2736df9410d31eafd67219677f04fbe3f186166c..e2c3abb66ca539a39524f6c8f9406f9b83755020 100644 (file)
@@ -25,13 +25,13 @@ namespace zipsharp
                        minute = (uint) time.Minute;
                        hour = (uint) time.Hour;
                        day = (uint) time.Day;
-                       month = (uint) time.Month;
+                       month = (uint) time.Month - 1;
                        year = (uint) time.Year;
                }
 
                public DateTime Date
                {
-                       get { return new DateTime ((int) year, (int) month, (int) day, (int) hour, (int) minute, (int) second); }
+                       get { return new DateTime ((int) year, (int) month + 1, (int) day, (int) hour, (int) minute, (int) second); }
                }
        }
 }
diff --git a/mcs/class/corlib/Mono/RuntimeHandles.cs b/mcs/class/corlib/Mono/RuntimeHandles.cs
new file mode 100644 (file)
index 0000000..f6d0827
--- /dev/null
@@ -0,0 +1,95 @@
+//
+// Wrapper handles for Mono Runtime internal structs
+//
+// Authors:
+//   Aleksey Kliger <aleksey@xamarin.com>
+//   Rodrigo Kumpera <kumpera@xamarin.com>
+//
+// Copyright 2016 Dot net foundation.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+using System.Runtime.CompilerServices;
+
+namespace Mono {
+
+       internal struct RuntimeClassHandle {
+               unsafe RuntimeStructs.MonoClass* value;
+
+               internal unsafe RuntimeClassHandle (RuntimeStructs.MonoClass* value) {
+                       this.value = value;
+               }
+
+               internal unsafe RuntimeClassHandle (IntPtr ptr) {
+                       this.value = (RuntimeStructs.MonoClass*) ptr;
+               }
+
+               internal unsafe RuntimeStructs.MonoClass* Value {
+                       get { return value; }
+               }
+
+               public override bool Equals (object obj)
+               {
+                       if (obj == null || GetType () != obj.GetType ())
+                               return false;
+
+                       unsafe { return value == ((RuntimeClassHandle)obj).Value; }
+               }
+
+               public override int GetHashCode ()
+               {
+                       unsafe { return ((IntPtr)value).GetHashCode (); }
+               }
+
+               public bool Equals (RuntimeClassHandle handle)
+               {
+                       unsafe { return value == handle.Value; }
+               }
+
+               public static bool operator == (RuntimeClassHandle left, Object right)
+               {
+                       return (right != null) && (right is RuntimeClassHandle) && left.Equals ((RuntimeClassHandle)right);
+               }
+
+               public static bool operator != (RuntimeClassHandle left, Object right)
+               {
+                       return (right == null) || !(right is RuntimeClassHandle) || !left.Equals ((RuntimeClassHandle)right);
+               }
+
+               public static bool operator == (Object left, RuntimeClassHandle right)
+               {
+                       return (left != null) && (left is RuntimeClassHandle) && ((RuntimeClassHandle)left).Equals (right);
+               }
+
+               public static bool operator != (Object left, RuntimeClassHandle right)
+               {
+                       return (left == null) || !(left is RuntimeClassHandle) || !((RuntimeClassHandle)left).Equals (right);
+               }
+
+               [MethodImpl(MethodImplOptions.InternalCall)]
+               internal unsafe extern static IntPtr GetTypeFromClass (RuntimeStructs.MonoClass *klass);
+
+               internal RuntimeTypeHandle GetTypeHandle ()
+               {
+                       unsafe { return new RuntimeTypeHandle (GetTypeFromClass (value)); }
+               }
+       }
+
+       internal struct RuntimeRemoteClassHandle {
+               unsafe RuntimeStructs.RemoteClass* value;
+
+               internal unsafe RuntimeRemoteClassHandle (RuntimeStructs.RemoteClass* value)
+               {
+                       this.value = value;
+               }
+
+               internal RuntimeClassHandle ProxyClass {
+                       get {
+                               unsafe {
+                                       return new RuntimeClassHandle (value->proxy_class);
+                               }
+                       }
+               }
+       }
+}
diff --git a/mcs/class/corlib/Mono/RuntimeStructs.cs b/mcs/class/corlib/Mono/RuntimeStructs.cs
new file mode 100644 (file)
index 0000000..c445346
--- /dev/null
@@ -0,0 +1,34 @@
+//
+// Mono runtime native structs surfaced to managed code.
+//
+// Authors:
+//   Aleksey Kliger <aleksey@xamarin.com>
+//   Rodrigo Kumpera <kumpera@xamarin.com>
+//
+// Copyright 2016 Dot net foundation.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+//
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Mono {
+       internal class RuntimeStructs {
+               // class-internals.h MonoRemoteClass
+               [StructLayout(LayoutKind.Sequential)]
+               internal unsafe struct RemoteClass {
+                       internal IntPtr default_vtable;
+                       internal IntPtr xdomain_vtable;
+                       internal MonoClass* proxy_class;
+                       internal IntPtr proxy_class_name;
+                       internal uint interface_count;
+                       // FIXME: How to represent variable-length array struct member?
+                       // MonoClass* interfaces [];
+               }
+
+               internal struct MonoClass {
+               }
+       }
+
+}
+       
index bedcf1af0c14a5bb94af6c4dc4bfc29dc8fc19a8..f577efcd5ca871464b7ed8ca65b028a35086fd98 100644 (file)
@@ -41,14 +41,78 @@ using System.Runtime.Serialization;
 
 namespace System
 {
+       // Contains information about the type which is expensive to compute
+       [StructLayout (LayoutKind.Sequential)]
+       internal class MonoTypeInfo {
+               // this is the displayed form: special characters
+               // ,+*&*[]\ in the identifier portions of the names
+               // have been escaped with a leading backslash (\)
+               public string full_name;
+               public MonoCMethod default_ctor;
+       }
+
+       [StructLayout (LayoutKind.Sequential)]
        partial class RuntimeType
        {
+               [NonSerialized]
+               MonoTypeInfo type_info;
+
                internal Object GenericCache;
 
-               internal virtual MonoCMethod GetDefaultConstructor ()
+               internal RuntimeType (Object obj)
+               {
+                       throw new NotImplementedException ();
+               }
+
+               internal MonoCMethod GetDefaultConstructor ()
+               {
+                       MonoCMethod ctor = null;
+
+                       if (type_info == null)
+                               type_info = new MonoTypeInfo ();
+                       else
+                               ctor = type_info.default_ctor;
+
+                       if (ctor == null) {
+                               var ctors = GetConstructors (BindingFlags.Public | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly);
+
+                               for (int i = 0; i < ctors.Length; ++i) {
+                                       if (ctors [i].GetParametersCount () == 0) {
+                                               type_info.default_ctor = ctor = (MonoCMethod) ctors [i];
+                                               break;
+                                       }
+                               }
+                       }
+
+                       return ctor;
+               }
+
+               [MethodImplAttribute(MethodImplOptions.InternalCall)]
+               extern MethodInfo GetCorrespondingInflatedMethod (MethodInfo generic);
+
+               [MethodImplAttribute(MethodImplOptions.InternalCall)]
+               extern ConstructorInfo GetCorrespondingInflatedConstructor (ConstructorInfo generic);
+
+               internal override MethodInfo GetMethod (MethodInfo fromNoninstanciated)
+                {
+                       if (fromNoninstanciated == null)
+                               throw new ArgumentNullException ("fromNoninstanciated");
+                        return GetCorrespondingInflatedMethod (fromNoninstanciated);
+                }
+
+               internal override ConstructorInfo GetConstructor (ConstructorInfo fromNoninstanciated)
                {
-                       // TODO: Requires MonoType
-                       throw new NotSupportedException ();
+                       if (fromNoninstanciated == null)
+                               throw new ArgumentNullException ("fromNoninstanciated");
+                        return GetCorrespondingInflatedConstructor (fromNoninstanciated);
+               }
+
+               internal override FieldInfo GetField (FieldInfo fromNoninstanciated)
+               {
+                       /* create sensible flags from given FieldInfo */
+                       BindingFlags flags = fromNoninstanciated.IsStatic ? BindingFlags.Static : BindingFlags.Instance;
+                       flags |= fromNoninstanciated.IsPublic ? BindingFlags.Public : BindingFlags.NonPublic;
+                       return GetField (fromNoninstanciated.Name, flags);
                }
 
                string GetDefaultMemberName ()
@@ -586,12 +650,6 @@ namespace System
                        get;
                }
 
-               public override string FullName {
-                       get {
-                               throw new NotImplementedException ();
-                       }
-               }
-
                public extern override string Name {
                        [MethodImplAttribute(MethodImplOptions.InternalCall)]
                        get;
@@ -624,5 +682,32 @@ namespace System
                        get { return get_core_clr_security_level () == 1; }
                }
 #endif
+
+               public override int GetHashCode()
+               {
+                       Type t = UnderlyingSystemType;
+                       if (t != null && t != this)
+                               return t.GetHashCode ();
+                       return (int)_impl.Value;
+               }
+
+               public override string FullName {
+                       get {
+                               string fullName;
+                               // This doesn't need locking
+                               if (type_info == null)
+                                       type_info = new MonoTypeInfo ();
+                               if ((fullName = type_info.full_name) == null)
+                                       fullName = type_info.full_name = getFullName (true, false);
+
+                               return fullName;
+                       }
+               }
+
+               internal override bool IsUserType {
+                       get {
+                               return false;
+                       }
+               }
        }
 }
index 6acc3c4ec774b4cae241f81b159399f4949920d4..6a6fcd36f5abe114d6eaa3751587690b41811a6c 100644 (file)
@@ -1038,16 +1038,6 @@ namespace System.Reflection.Emit
                        return (str == "neutral" ? String.Empty : str);
                }
 
-               internal override AssemblyName UnprotectedGetName ()
-               {
-                       AssemblyName an = base.UnprotectedGetName ();
-                       if (sn != null) {
-                               an.SetPublicKey (sn.PublicKey);
-                               an.SetPublicKeyToken (sn.PublicKeyToken);
-                       }
-                       return an;
-               }
-
                /*Warning, @typeArguments must be a mscorlib internal array. So make a copy before passing it in*/
                internal Type MakeGenericType (Type gtd, Type[] typeArguments)
                {
@@ -1124,7 +1114,15 @@ namespace System.Reflection.Emit
 
                public override AssemblyName GetName (bool copiedName)
                {
-                       return base.GetName (copiedName);
+                       AssemblyName aname = new AssemblyName ();
+                       FillName (this, aname);
+
+                       if (sn != null) {
+                               aname.SetPublicKey (sn.PublicKey);
+                               aname.SetPublicKeyToken (sn.PublicKeyToken);
+                       }
+                       return aname;
+
                }
 
                [MonoTODO ("This always returns an empty array")]
index 0bba65f4693a630934df471360618a9d26b4b2f7..f75802198eb67a4197a3349dfec49280b206c666 100644 (file)
@@ -423,18 +423,11 @@ namespace System.Reflection {
                internal extern static void InternalGetAssemblyName (string assemblyFile, AssemblyName aname);
 
                [MethodImplAttribute (MethodImplOptions.InternalCall)]
-               static extern void FillName (Assembly ass, AssemblyName aname);
+               static extern internal void FillName (Assembly ass, AssemblyName aname);
 
-               [MonoTODO ("copiedName == true is not supported")]
                public virtual AssemblyName GetName (Boolean copiedName)
                {
-#if !MOBILE
-                       // CodeBase, which is restricted, will be copied into the AssemblyName object so...
-                       if (SecurityManager.SecurityEnabled) {
-                               GetCodeBase (true); // this will ensure the Demand is made
-                       }
-#endif
-                       return UnprotectedGetName ();
+                       throw new NotImplementedException ();
                }
 
                public virtual AssemblyName GetName ()
@@ -442,14 +435,6 @@ namespace System.Reflection {
                        return GetName (false);
                }
 
-               // the security runtime requires access to the assemblyname (e.g. to get the strongname)
-               internal virtual AssemblyName UnprotectedGetName ()
-               {
-                       AssemblyName aname = new AssemblyName ();
-                       FillName (this, aname);
-                       return aname;
-               }
-
                public override string ToString ()
                {
                        // note: ToString work without requiring CodeBase (so no checks are needed)
index 34051bd8368e1e1cebe60a5e72d0aa6ad65a4a76..c433bc93dc8866598b839801f6ccb0effbaea6b3 100644 (file)
@@ -37,6 +37,7 @@ using System.Collections.Generic;
 using System.Runtime.Serialization;
 using System.Threading;
 using System.Diagnostics.Contracts;
+using System.Security;
 using System.Security.Policy;
 using System.Security.Permissions;
 
@@ -128,9 +129,11 @@ namespace System.Reflection {
 
                 if (!suppressSecurityChecks)
                 {
+#if FEATURE_MONO_CAS
 #pragma warning disable 618
                     new SecurityPermission(SecurityPermissionFlag.ControlEvidence).Demand();
 #pragma warning restore 618
+#endif
                 }
             }
 
@@ -149,6 +152,22 @@ namespace System.Reflection {
                        return LoadWithPartialNameInternal (an.ToString (), securityEvidence, ref stackMark);
                }
 
+               // the security runtime requires access to the assemblyname (e.g. to get the strongname)
+               public override AssemblyName GetName (bool copiedName)
+               {
+
+#if !MOBILE
+                       // CodeBase, which is restricted, will be copied into the AssemblyName object so...
+                       if (SecurityManager.SecurityEnabled) {
+                               var _ = CodeBase; // this will ensure the Demand is made
+                       }
+#endif
+
+                       AssemblyName aname = new AssemblyName ();
+                       FillName (this, aname);
+                       return aname;
+               }
+
        }
 
        [ComVisible (true)]
index 04c0c5670863215cc7f35d8bec6d2db80fca9b72..c93233dfffb57af19d0eaa9cc7092a2125e01739 100644 (file)
@@ -438,7 +438,7 @@ namespace System.Reflection {
                        foreach (Type type in methodInstantiation) {
                                if (type == null)
                                        throw new ArgumentNullException ();
-                               if (!(type is MonoType))
+                               if (!(type is RuntimeType))
                                        hasUserType = true;
                        }
 
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ArrayWithOffset.cs b/mcs/class/corlib/System.Runtime.InteropServices/ArrayWithOffset.cs
deleted file mode 100644 (file)
index 1ad70d3..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-//
-// System.Runtime.InteropServices.ArrayWithOffset.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Novell, Inc.  http://www.ximian.com
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Runtime.InteropServices {
-
-       [Serializable]
-       [ComVisible (true)]
-       public struct ArrayWithOffset {
-               object array;
-               int offset;
-
-               public ArrayWithOffset (object array, int offset)
-               {
-                       this.array = array;
-                       this.offset = offset;
-               }
-
-               public override bool Equals (object obj)
-               {
-                       if (obj == null)
-                               return false;
-                       if (!(obj is ArrayWithOffset))
-                               return false;
-                       ArrayWithOffset other = (ArrayWithOffset) obj;
-
-                       return (other.array == array && other.offset == offset);
-               }
-
-               public bool Equals (ArrayWithOffset obj)
-               {
-                       return obj.array == array && obj.offset == offset;
-               }
-
-               public static bool operator == (ArrayWithOffset a, ArrayWithOffset b)
-               {
-                       return a.Equals (b);
-               }
-
-               public static bool operator != (ArrayWithOffset a, ArrayWithOffset b)
-               {
-                       return !a.Equals (b);
-               }
-
-               public override int GetHashCode ()
-               {
-                       return offset;
-               }
-
-               public object GetArray ()
-               {
-                       return array;
-               }                               
-
-               public int GetOffset ()
-               {
-                       return offset;
-               }                               
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/AssemblyRegistrationFlags.cs b/mcs/class/corlib/System.Runtime.InteropServices/AssemblyRegistrationFlags.cs
deleted file mode 100644 (file)
index 244e727..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-//
-// System.Runtime.InteropServices.AssemblyRegistrationFlags.cs
-//
-// Author:
-//   Kevin Winchester (kwin@ns.sympatico.ca)
-//
-// (C) 2002 Kevin Winchester
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Runtime.InteropServices
-{
-       [Flags]
-       [ComVisible(true)]
-       public enum AssemblyRegistrationFlags {
-               None = 0,
-               SetCodeBase,
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/BStrWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/BStrWrapper.cs
deleted file mode 100644 (file)
index 5f392b8..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-//
-// System.Runtime.InteropServices.BStrWrapper
-//
-// Author:
-//   Kazuki Oikawa  (kazuki@panicode.com)
-//
-
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public sealed class BStrWrapper
-       {
-               string _value;
-
-               public BStrWrapper (string value)
-               {
-                       _value = value;
-               }
-               
-               public BStrWrapper (object value)
-               {
-                       _value = (string)value;
-               }
-
-               public string WrappedObject { get { return _value; } }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/COMException.cs b/mcs/class/corlib/System.Runtime.InteropServices/COMException.cs
deleted file mode 100644 (file)
index f7ad9af..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// COMException.cs - COM Exception
-//
-// Author:
-//     Sebastien Pouliot  <sebastien@ximian.com>
-//
-// (C) 2002 Motus Technologies Inc. (http://www.motus.com)
-// Copyright (C) 2004, 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices {
-
-[Serializable]
-[ComVisible (true)]
-public class COMException : ExternalException {
-
-       public COMException () 
-               : base () {}
-
-       public COMException (string message) 
-               : base (message) {}
-
-       public COMException (string message, Exception inner) 
-               : base (message, inner) {}
-
-       public COMException (string message, int errorCode) 
-               : base (message, errorCode) {}
-
-       protected COMException (SerializationInfo info, StreamingContext context) 
-               : base (info, context) {}
-
-       public override string ToString ()
-       {
-               return String.Format (
-                       "{0} (0x{1:x}): {2} {3}{4}{5}",
-                       GetType (), HResult, Message, InnerException == null ? String.Empty : InnerException.ToString (),
-                       Environment.NewLine, StackTrace != null ? StackTrace : String.Empty);
-       }
-} 
-
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/CallingConvention.cs b/mcs/class/corlib/System.Runtime.InteropServices/CallingConvention.cs
deleted file mode 100644 (file)
index 4dab193..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-// CallingConvention.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Fri, 7 Sep 2001 16:33:29 UTC
-// Source file: AllTypes.xml
-// URL: http://msdn.microsoft.com/net/ecma/AllTypes.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Runtime.InteropServices {
-
-       [Serializable]
-       [ComVisible (true)]
-       public enum CallingConvention {
-               Winapi = 1,
-               Cdecl = 2,
-               StdCall = 3,
-               ThisCall = 4,
-               FastCall = 5,
-       } 
-
-} // System.Runtime.InteropServices
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/CharSet.cs b/mcs/class/corlib/System.Runtime.InteropServices/CharSet.cs
deleted file mode 100644 (file)
index 565380a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// CharSet.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Fri, 7 Sep 2001 16:33:35 UTC
-// Source file: AllTypes.xml
-// URL: http://msdn.microsoft.com/net/ecma/AllTypes.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Runtime.InteropServices {
-
-       [Serializable]
-       [ComVisible (true)]
-       public enum CharSet {
-               None = 1,
-               Ansi = 2,
-               Unicode = 3,
-               Auto = 4,
-       } 
-
-} // System.Runtime.InteropServices
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ComMemberType.cs b/mcs/class/corlib/System.Runtime.InteropServices/ComMemberType.cs
deleted file mode 100644 (file)
index 480d18a..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-// System.Runtime.InteropServices/ComMemberType.cs
-//
-// Paolo Molaro (lupus@ximian.com)
-//
-// (C) 2002 Ximian, Inc.
-
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public enum ComMemberType {
-               Method  = 0,
-               PropGet = 1,
-               PropSet = 2
-       }
-}
-
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/CriticalHandle.cs b/mcs/class/corlib/System.Runtime.InteropServices/CriticalHandle.cs
deleted file mode 100644 (file)
index ce50aff..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-//
-// System.Runtime.InteropServices.CriticalHandle
-//
-// Author:
-//   Kazuki Oikawa  (kazuki@panicode.com)
-//
-
-
-using System;
-using System.Runtime.ConstrainedExecution;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable
-       {
-               protected IntPtr handle;
-               bool _disposed = false;
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.MayFail)]
-               protected CriticalHandle (IntPtr invalidHandleValue)
-               {
-                       handle = invalidHandleValue;
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               ~CriticalHandle ()
-               {
-                       Dispose (false);
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               public void Close ()
-               {
-                       Dispose (true);
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               public void Dispose ()
-               {
-                       Dispose (true);
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               protected virtual void Dispose (bool disposing)
-               {
-                       if (_disposed)
-                               return;
-
-                       if (!IsInvalid){
-                               if (!_disposed && !ReleaseHandle ()) {
-                                       GC.SuppressFinalize (this);
-                               } else {
-                                       // Failed in release...
-                               }
-                       }
-                       _disposed = true;
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               protected abstract bool ReleaseHandle ();
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               protected void SetHandle (IntPtr handle)
-               {
-                       this.handle = handle;
-               }
-
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               public void SetHandleAsInvalid()
-               {
-                       _disposed = true;
-               }
-
-               public bool IsClosed {
-                       [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-                       get { return _disposed; }
-               }
-
-               public abstract bool IsInvalid {
-                       [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-                       get;
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/CurrencyWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/CurrencyWrapper.cs
deleted file mode 100644 (file)
index 5460b16..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-//
-// System.Runtime.InteropServices.CurrencyWrapper.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public sealed class CurrencyWrapper
-       {
-               Decimal currency;
-
-               public CurrencyWrapper (decimal obj)
-               {
-                       currency = obj;
-               }
-
-               public CurrencyWrapper (object obj)
-               {
-                       if (obj.GetType() != typeof(Decimal))
-                               throw new ArgumentException ("obj has to be a Decimal type");
-                       currency = (Decimal)obj;
-               }
-
-               public decimal WrappedObject {
-                       get { return currency; }
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/DispatchWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/DispatchWrapper.cs
deleted file mode 100644 (file)
index dfc5a2a..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-//
-// System.Runtime.InteropServices.DispatchWrapper.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if !FULL_AOT_RUNTIME
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public sealed class DispatchWrapper
-       {
-               object wrappedObject;
-
-               public DispatchWrapper (object obj)
-               {
-                       Marshal.GetIDispatchForObject (obj);
-                       wrappedObject = obj;
-               }
-
-               public object WrappedObject {
-                       get { return wrappedObject; }
-               }
-       }
-}
-#endif
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ErrorWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/ErrorWrapper.cs
deleted file mode 100644 (file)
index 4bf947a..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-//
-// System.Runtime.InteropServices.ErrorWrapper.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-#if !FULL_AOT_RUNTIME
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public sealed class ErrorWrapper
-       {
-               int errorCode;
-
-               public ErrorWrapper (Exception e)
-               {
-                       this.errorCode = Marshal.GetHRForException (e);
-               }
-
-               public ErrorWrapper (int errorCode)
-               {
-                       this.errorCode = errorCode;
-               }
-
-               public ErrorWrapper (object errorCode)
-               {
-                       if (errorCode.GetType() != typeof(int))
-                               throw new ArgumentException ("errorCode has to be an int type");
-                       this.errorCode = (int)errorCode;
-               }
-
-               public int ErrorCode {
-                       get { return errorCode; }
-               }
-       }
-}
-#endif
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ExternalException.cs b/mcs/class/corlib/System.Runtime.InteropServices/ExternalException.cs
deleted file mode 100644 (file)
index f149ed3..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-//
-// System.Runtime.InteropServices.ExternalException.cs
-//
-// Author:
-//   Miguel De Icaza (miguel@ximian.com)
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Runtime.Serialization;
-using System.Globalization;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       [ComVisible (true)]
-       public class ExternalException : SystemException
-       {
-               public ExternalException ()
-                       : base (Locale.GetText ("External exception"))
-               {
-                       HResult = -2147467259;
-               }
-
-               public ExternalException (string message)
-                       : base (message)
-               {
-                       HResult = -2147467259;
-               }
-
-               protected ExternalException(SerializationInfo info, StreamingContext context)
-                       : base (info, context) {
-               }
-
-               public ExternalException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       HResult = -2147467259;
-               }
-
-               public ExternalException (string message, int errorCode)
-                       : base (message)
-               {
-                       HResult = errorCode;
-               }
-
-               public virtual int ErrorCode {
-                       get {
-                               return HResult;
-                       }
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/HandleRef.cs b/mcs/class/corlib/System.Runtime.InteropServices/HandleRef.cs
deleted file mode 100644 (file)
index d61d3bc..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-//
-// System.Runtime.InteropServices.HandleRef
-//
-// Author:
-//   Tim Coleman (tim@timcoleman.com)
-//
-// Copyright (C) 2003 Tim Coleman
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Runtime.InteropServices {
-       [ComVisible (true)]
-       public struct HandleRef {
-
-               #region Fields
-
-               object wrapper;
-               IntPtr handle;
-
-               #endregion // Fields
-
-               #region Constructors
-
-               public HandleRef (object wrapper, IntPtr handle)
-               {
-                       this.wrapper = wrapper;
-                       this.handle = handle;
-               }
-
-               #endregion // Constructors
-
-               #region Properties
-
-               public IntPtr Handle {
-                       get { return handle; }
-               }
-
-               public object Wrapper {
-                       get { return wrapper; }
-               }
-
-               #endregion // Properties
-
-               #region Type Conversions
-
-               public static explicit operator IntPtr (HandleRef value)
-               {
-                       return value.Handle;
-               }
-               
-               #endregion // Type Conversions
-               public static IntPtr ToIntPtr(HandleRef value)
-               {
-                       return value.Handle; 
-                       // Why did MS add a function for this?
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ICustomAdapter.cs b/mcs/class/corlib/System.Runtime.InteropServices/ICustomAdapter.cs
deleted file mode 100644 (file)
index 6ad1e35..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-//
-// System.Runtime.InteropServices.ICustomAdapter.cs
-//
-// Author:
-//   Kevin Winchester (kwin@ns.sympatico.ca)
-//
-// (C) 2002 Kevin Winchester
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Runtime.InteropServices {
-
-       [ComVisible (true)]
-       public interface ICustomAdapter {
-               [return: MarshalAs (UnmanagedType.IUnknown)]
-               object GetUnderlyingObject ();
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ICustomFactory.cs b/mcs/class/corlib/System.Runtime.InteropServices/ICustomFactory.cs
deleted file mode 100644 (file)
index 2f22d28..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-//
-// System.Runtime.InteropServices.ICustomFactory.cs
-//
-// Author:
-//   Kevin Winchester (kwin@ns.sympatico.ca)
-//
-// (C) 2002 Kevin Winchester
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Runtime.InteropServices {
-
-       [ComVisible (true)]
-       public interface ICustomFactory {
-               MarshalByRefObject CreateInstance (Type serverType);
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ICustomMarshaler.cs b/mcs/class/corlib/System.Runtime.InteropServices/ICustomMarshaler.cs
deleted file mode 100644 (file)
index 629a976..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-//
-// System.Runtime.InteropServices.ICustomMarshaler.cs
-//
-// Author:
-//   Kevin Winchester (kwin@ns.sympatico.ca)
-//
-// (C) 2002 Kevin Winchester
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Runtime.InteropServices {
-
-       [ComVisible (true)]
-       public interface ICustomMarshaler {
-               void CleanUpManagedData (object ManagedObj);
-               void CleanUpNativeData (IntPtr pNativeData);
-               int GetNativeDataSize ();
-               IntPtr MarshalManagedToNative (object ManagedObj);
-               object MarshalNativeToManaged (IntPtr pNativeData);
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/IRegistrationServices.cs b/mcs/class/corlib/System.Runtime.InteropServices/IRegistrationServices.cs
deleted file mode 100644 (file)
index 415f2a9..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-//
-// System.Runtime.InteropServices.IRegistrationServices.cs
-//
-// Author:
-//   Kevin Winchester (kwin@ns.sympatico.ca)
-//
-// (C) 2002 Kevin Winchester
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Reflection;
-using System.Security.Permissions;
-namespace System.Runtime.InteropServices {
-
-       [ComVisible(true)]
-       [Guid("CCBD682C-73A5-4568-B8B0-C7007E11ABA2")]
-       public interface IRegistrationServices {
-               Guid GetManagedCategoryGuid ();
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               string GetProgIdForType (Type type);
-
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               Type[] GetRegistrableTypesInAssembly (Assembly assembly);
-
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               bool RegisterAssembly (Assembly assembly, AssemblyRegistrationFlags flags);
-
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               void RegisterTypeForComClients (Type type, ref Guid g);
-               
-               bool TypeRepresentsComType (Type type);
-               
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               bool TypeRequiresRegistration (Type type);
-
-               [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)]
-               bool UnregisterAssembly (Assembly assembly);
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/InvalidComObjectException.cs b/mcs/class/corlib/System.Runtime.InteropServices/InvalidComObjectException.cs
deleted file mode 100644 (file)
index c484ed7..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Runtime.InteropServices.InvalidComObjectException.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]
-       [Serializable]
-       public class InvalidComObjectException : SystemException
-       {
-               private const int ErrorCode = -2146233049; // = 0x80131527
-
-               public InvalidComObjectException ()
-                       : base (Locale.GetText ("Invalid COM object is used"))
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public InvalidComObjectException (string message)
-                       : base (message)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public InvalidComObjectException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               protected InvalidComObjectException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/InvalidOleVariantTypeException.cs b/mcs/class/corlib/System.Runtime.InteropServices/InvalidOleVariantTypeException.cs
deleted file mode 100644 (file)
index d280bf4..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Runtime.InteropServices.InvalidOleVariantTypeException.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]
-       [Serializable]
-       public class InvalidOleVariantTypeException : SystemException
-       {
-               private const int ErrorCode = -2146233039; // = 0x80131531
-
-               public InvalidOleVariantTypeException ()
-                       : base (Locale.GetText ("Found native variant type cannot be marshalled to managed code"))
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public InvalidOleVariantTypeException (string message)
-                       : base (message)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public InvalidOleVariantTypeException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               protected InvalidOleVariantTypeException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/LayoutKind.cs b/mcs/class/corlib/System.Runtime.InteropServices/LayoutKind.cs
deleted file mode 100644 (file)
index 25fe51b..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-// LayoutKind.cs
-//
-// This code was automatically generated from
-// ECMA CLI XML Library Specification.
-// Generator: libgen.xsl [1.0; (C) Sergey Chaban (serge@wildwestsoftware.com)]
-// Created: Fri, 7 Sep 2001 16:33:48 UTC
-// Source file: AllTypes.xml
-// URL: http://msdn.microsoft.com/net/ecma/AllTypes.xml
-//
-// (C) 2001 Ximian, Inc.  http://www.ximian.com
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-namespace System.Runtime.InteropServices {
-
-       [ComVisible(true)]
-       [Serializable]
-       public enum LayoutKind {
-               Sequential = 0,
-               Explicit = 2,
-               Auto = 3
-       }
-       
-} 
index 24f15e3f980437e7877e372bf84a63afb6220ffb..a1b028b08c17a975da156186da5cb736e74ed47d 100644 (file)
@@ -1664,5 +1664,9 @@ namespace System.Runtime.InteropServices
                        
                        return GetFunctionPointerForDelegateInternal ((Delegate)(object)d);
                }
+
+               internal static void SetLastWin32Error (int error)
+               {
+               }
        }
 }
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/MarshalDirectiveException.cs b/mcs/class/corlib/System.Runtime.InteropServices/MarshalDirectiveException.cs
deleted file mode 100644 (file)
index 13c9c15..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Runtime.InteropServices.MarshalDirectiveException.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]
-       [Serializable]
-       public class MarshalDirectiveException : SystemException
-       {
-               private const int ErrorCode = -2146233035; // = 0x80131535
-
-               public MarshalDirectiveException ()
-                       : base (Locale.GetText ("Unsupported MarshalAsAttribute found"))
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public MarshalDirectiveException (string message)
-                       : base (message)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public MarshalDirectiveException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               protected MarshalDirectiveException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/ObjectCreationDelegate.cs b/mcs/class/corlib/System.Runtime.InteropServices/ObjectCreationDelegate.cs
deleted file mode 100644 (file)
index 92dbc2f..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-//
-// System.Runtime.InteropServices.ObjectCreationDelegate.cs
-//
-// Author:
-//   Miguel de Icaza (miguel@ximian.com)
-//
-// (C) Novell, Inc.  http://www.ximian.com
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-
-namespace System.Runtime.InteropServices {
-
-       [ComVisible(true)]
-       public delegate IntPtr ObjectCreationDelegate (IntPtr aggregator);
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/SEHException.cs b/mcs/class/corlib/System.Runtime.InteropServices/SEHException.cs
deleted file mode 100644 (file)
index e3547cb..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-//
-// System.Runtime.InteropServices.SEHException.cs
-//
-// Authors:
-//    Gonzalo Paniagua Javier <gonzalo@ximian.com>
-//
-// (c) 2003 Ximian, Inc. http://www.ximian.com
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]      
-       [Serializable]
-       public class SEHException : ExternalException
-       {
-               public SEHException ()
-               {
-               }
-
-               public SEHException (string message)
-                       : base (message)
-               {
-               }
-
-               public SEHException (string message, Exception inner)
-                       : base (message, inner)
-               {
-               }
-
-               protected SEHException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-
-               public virtual bool CanResume ()
-               {
-                       return false;
-               }
-       }
-}
-
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/SafeArrayRankMismatchException.cs b/mcs/class/corlib/System.Runtime.InteropServices/SafeArrayRankMismatchException.cs
deleted file mode 100644 (file)
index c712d91..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Runtime.InteropServices.SafeArrayRankMismatchException.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]
-       [Serializable]
-       public class SafeArrayRankMismatchException : SystemException
-       {
-               private const int ErrorCode = -2146233032; // = 0x80131538
-
-               public SafeArrayRankMismatchException ()
-                       : base (Locale.GetText ("The incoming SAVEARRAY does not match the rank of the expected managed signature"))
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public SafeArrayRankMismatchException (string message)
-                       : base (message)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public SafeArrayRankMismatchException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               protected SafeArrayRankMismatchException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/SafeArrayTypeMismatchException.cs b/mcs/class/corlib/System.Runtime.InteropServices/SafeArrayTypeMismatchException.cs
deleted file mode 100644 (file)
index e23c5f6..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// System.Runtime.InteropServices.SafeArrayTypeMismatchException.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Runtime.Serialization;
-
-namespace System.Runtime.InteropServices
-{
-       [ComVisible(true)]
-       [Serializable]
-       public class SafeArrayTypeMismatchException : SystemException
-       {
-               private const int ErrorCode = -2146233037; // = 0x80131533
-
-               public SafeArrayTypeMismatchException ()
-                       : base (Locale.GetText ("The incoming SAVEARRAY does not match the expected managed signature"))
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public SafeArrayTypeMismatchException (string message)
-                       : base (message)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               public SafeArrayTypeMismatchException (string message, Exception inner)
-                       : base (message, inner)
-               {
-                       this.HResult = ErrorCode;
-               }
-
-               protected SafeArrayTypeMismatchException (SerializationInfo info, StreamingContext context)
-                       : base (info, context)
-               {
-               }
-       }
-}
index 305c087a70237b42be089727c7f74099d3cdc16c..b5b59a1ae81ffb3f37822fd47ba5619f08d7469a 100644 (file)
@@ -227,18 +227,5 @@ namespace System.Runtime.InteropServices
                                        ReleaseHandle ();
                        }
                }
-
-               /*
-                * Implement this abstract method in your derived class to specify how to
-                * free the handle. Be careful not write any code that's subject to faults
-                * in this method (the runtime will prepare the infrastructure for you so
-                * that no jit allocations etc. will occur, but don't allocate memory unless
-                * you can deal with the failure and still free the handle).
-                * The boolean returned should be true for success and false if the runtime
-                * should fire a SafeHandleCriticalFailure MDA (CustomerDebugProbe) if that
-                * MDA is enabled.
-                */
-               [ReliabilityContract (Consistency.WillNotCorruptState, Cer.Success)]
-               protected abstract bool ReleaseHandle ();
        }
 }
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/UnknownWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/UnknownWrapper.cs
deleted file mode 100644 (file)
index ae5dda0..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-//
-// System.Runtime.InteropServices.UnknownWrapper.cs
-//
-// Author:
-//   Andreas Nahr (ClassDevelopment@A-SoftTech.com)
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable, ComVisible(true)]
-       public sealed class UnknownWrapper
-       {
-               private object InternalObject;
-
-               public UnknownWrapper (object obj)
-               {
-                       InternalObject = obj;
-               }
-
-               public object WrappedObject {
-                       get { return InternalObject; } 
-               }
-       }
-}
diff --git a/mcs/class/corlib/System.Runtime.InteropServices/VariantWrapper.cs b/mcs/class/corlib/System.Runtime.InteropServices/VariantWrapper.cs
deleted file mode 100644 (file)
index 984cd37..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-//
-// System.Runtime.InteropServices.VariantWrapper.cs
-//
-// Author:
-//   Gert Driesen (drieseng@users.sourceforge.net)
-//
-// (C) Novell, Inc.  http://www.ximian.com
-//
-
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-
-namespace System.Runtime.InteropServices
-{
-       [Serializable]
-       public sealed class VariantWrapper
-       {
-               private object _wrappedObject;
-
-               public VariantWrapper (object obj)
-               {
-                       _wrappedObject = obj;
-               }
-
-               public object WrappedObject
-               {
-                       get
-                       {
-                               return _wrappedObject;
-                       }
-               }
-       }
-}
index 3b324d1eab7076389642e0a1776b0343f9366ada..3640f7285910223220cfcb5e256bf3684937a416 100644 (file)
@@ -68,8 +68,38 @@ namespace System.Runtime.Remoting.Messaging {
                internal static String CallContextKey = "__CallContext";
                internal static String UriKey           = "__Uri";
 
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               internal extern void InitMessage (MonoMethod method, object [] out_args);
+               internal void InitMessage (MonoMethod method, object [] out_args)
+               {
+                       this.method = method;
+                       ParameterInfo[] paramInfo = method.GetParametersInternal ();
+                       int param_count = paramInfo.Length;
+                       args = new object[param_count];
+                       arg_types = new byte[param_count];
+                       asyncResult = null;
+                       call_type = CallType.Sync;
+                       names = new string[param_count];
+                       for (int i = 0; i < param_count; i++) {
+                               names[i] = paramInfo[i].Name;
+                       }
+                       bool hasOutArgs = out_args != null;
+                       int j = 0;
+                       for (int i = 0; i < param_count; i++) {
+                               byte arg_type;
+                               bool isOut = paramInfo[i].IsOut;
+                               if (paramInfo[i].ParameterType.IsByRef) {
+                                       if (hasOutArgs)
+                                               args[i] = out_args[j++];
+                                       arg_type = 2; // OUT
+                                       if (!isOut)
+                                               arg_type |= 1; // INOUT
+                               } else {
+                                       arg_type = 1; // IN
+                                       if (isOut)
+                                               arg_type |= 4; // IN, COPY OUT
+                               }
+                               arg_types[i] = arg_type;
+                       }
+               }
 
                public MonoMethodMessage (MethodBase method, object [] out_args)
                {
@@ -79,19 +109,30 @@ namespace System.Runtime.Remoting.Messaging {
                                args = null;
                }
 
-               public MonoMethodMessage (Type type, string method_name, object [] in_args)
+               internal MonoMethodMessage (MethodInfo minfo, object [] in_args, object [] out_args)
                {
-                       // fixme: consider arg types
-                       MethodInfo minfo = type.GetMethod (method_name);
-                       
-                       InitMessage ((MonoMethod)minfo, null);
+                       InitMessage ((MonoMethod)minfo, out_args);
 
                        int len = in_args.Length;
                        for (int i = 0; i < len; i++) {
                                args [i] = in_args [i];
                        }
                }
+
+               private static MethodInfo GetMethodInfo (Type type, string methodName)
+               {
+                       // fixme: consider arg types
+                       MethodInfo minfo = type.GetMethod(methodName);
+                       if (minfo == null)
+                               throw new ArgumentException (String.Format("Could not find '{0}' in {1}", methodName, type), "methodName");
+                       return minfo;
+               }
                
+               public MonoMethodMessage (Type type, string methodName, object [] in_args)
+                       : this (GetMethodInfo (type, methodName), in_args, null)
+               {
+               }
+
                public IDictionary Properties {
                        get {
                                if (properties == null) properties = new MCMDictionary (this);
index de4b921cff8671dd29568107d49ca017960ae6a6..74bc4764adcc0f09bae453359ac832b31b46f715 100644 (file)
@@ -49,8 +49,52 @@ namespace System.Runtime.Remoting.Proxies
        [StructLayout (LayoutKind.Sequential)]
        internal class TransparentProxy {
                public RealProxy _rp;
-               IntPtr _class;
+               Mono.RuntimeRemoteClassHandle _class;
                bool _custom_type_info;
+
+               unsafe internal RuntimeType GetProxyType () {
+                       RuntimeTypeHandle h = _class.ProxyClass.GetTypeHandle ();
+                       return (RuntimeType)Type.GetTypeFromHandle (h);
+               }
+
+               bool IsContextBoundObject {
+                       get { return GetProxyType ().IsContextful; }
+               }
+
+               Context TargetContext {
+                       get { return _rp._targetContext; }
+               }
+
+               bool InCurrentContext () {
+                       return IsContextBoundObject && Object.ReferenceEquals (TargetContext, Thread.CurrentContext);
+               }
+
+               internal object LoadRemoteFieldNew (IntPtr classPtr, IntPtr fieldPtr) {
+                       Mono.RuntimeClassHandle classHandle = new Mono.RuntimeClassHandle (classPtr);
+                       RuntimeFieldHandle fieldHandle = new RuntimeFieldHandle (fieldPtr);
+                       RuntimeTypeHandle typeHandle = classHandle.GetTypeHandle ();
+
+                       FieldInfo field = FieldInfo.GetFieldFromHandle (fieldHandle);
+
+                       if (InCurrentContext ()) {
+                               object o = _rp._server;
+                               return field.GetValue(o);
+                       }
+
+                       object[] inArgs = new object[] { Type.GetTypeFromHandle(typeHandle).FullName,
+                                                         field.Name };
+                       object[] outArgsMsg = new object[1];
+                       MethodInfo minfo = typeof(object).GetMethod("FieldGetter", BindingFlags.NonPublic | BindingFlags.Instance);
+                       if (minfo == null)
+                               throw new MissingMethodException ("System.Object", "FieldGetter");
+                       MonoMethodMessage msg = new MonoMethodMessage (minfo, inArgs, outArgsMsg);
+                       object[] outArgs;
+                       Exception exc;
+                       RealProxy.PrivateInvoke (_rp, msg, out exc, out outArgs);
+                       if (exc != null)
+                               throw exc;
+                       return outArgs[0];
+               }
        }
 #pragma warning restore 169, 649
        
@@ -66,7 +110,7 @@ namespace System.Runtime.Remoting.Proxies
                #region Sync with object-internals.h
                Type class_to_proxy;
                internal Context _targetContext;
-               MarshalByRefObject _server;
+               internal MarshalByRefObject _server;
                int _targetDomainId = -1;
                internal string _targetUri;
                internal Identity _objectIdentity;
index bc424ce5e2d7d40c6d6a12cc4aa88eec2f7eb76f..1b35fe1ee90b75337e05ce72f68a2e9017a9bc7f 100644 (file)
@@ -477,7 +477,7 @@ namespace System.Runtime.Remoting
                public static bool IsMethodOverloaded(IMethodMessage msg)
                {
                        const BindingFlags bfinst = BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance;
-                       MonoType type = (MonoType) msg.MethodBase.DeclaringType;
+                       RuntimeType type = (RuntimeType) msg.MethodBase.DeclaringType;
                        return type.GetMethodsByName (msg.MethodName, bfinst, false, type).Length > 1;
                }
 
index 7068882bc9ac15ee093c9649f6e19cf44ff84e59..995865a3c623a43dee23dfc4b208b99acfa6b759 100644 (file)
@@ -12,35 +12,22 @@ namespace System.Security.Cryptography.X509Certificates
                        return new X509CertificateImplApple (handle, false);
                }
 
-               public static X509CertificateImpl Import (byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags)
+               static X509CertificateImpl Import (byte[] rawData)
                {
-                       MX.X509Certificate x509;
-                       IntPtr handle;
-                       if (password == null) {
-                               handle = CFHelpers.CreateCertificateFromData (rawData);
-                               if (handle != IntPtr.Zero)
-                                       return new X509CertificateImplApple (handle, true);
+                       var handle = CFHelpers.CreateCertificateFromData (rawData);
+                       if (handle != IntPtr.Zero)
+                               return new X509CertificateImplApple (handle, true);
 
+                       MX.X509Certificate x509;
+                       try {
+                               x509 = new MX.X509Certificate (rawData);
+                       } catch (Exception e) {
                                try {
-                                       x509 = new MX.X509Certificate (rawData);
-                               } catch (Exception e) {
-                                       try {
-                                               x509 = X509Helper.ImportPkcs12 (rawData, null);
-                                       } catch {
-                                               string msg = Locale.GetText ("Unable to decode certificate.");
-                                               // inner exception is the original (not second) exception
-                                               throw new CryptographicException (msg, e);
-                                       }
-                               }
-                       } else {
-                               // try PKCS#12
-                               try {
-                                       x509 = X509Helper.ImportPkcs12 (rawData, password);
-                               }
-                               catch {
-                                       // it's possible to supply a (unrequired/unusued) password
-                                       // fix bug #79028
-                                       x509 = new MX.X509Certificate (rawData);
+                                       x509 = ImportPkcs12 (rawData, null);
+                               } catch {
+                                       string msg = Locale.GetText ("Unable to decode certificate.");
+                                       // inner exception is the original (not second) exception
+                                       throw new CryptographicException (msg, e);
                                }
                        }
 
index 1f3f1f83d1f9281914969e2139926fde093d3107..c12fa6229cf4f8ffe84d07dc5e6d309aea9a676f 100644 (file)
@@ -148,34 +148,46 @@ namespace System.Security.Cryptography.X509Certificates
                        }
                }
 
-#if !MONOTOUCH && !XAMMAC
-               public static X509CertificateImpl Import (byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags)
+               static byte[] PEM (string type, byte[] data)
                {
-                       if (nativeHelper != null)
-                               return nativeHelper.Import (rawData, password, keyStorageFlags);
+                       string pem = Encoding.ASCII.GetString (data);
+                       string header = String.Format ("-----BEGIN {0}-----", type);
+                       string footer = String.Format ("-----END {0}-----", type);
+                       int start = pem.IndexOf (header) + header.Length;
+                       int end = pem.IndexOf (footer, start);
+                       string base64 = pem.Substring (start, (end - start));
+                       return Convert.FromBase64String (base64);
+               }
 
-                       MX.X509Certificate x509;
-                       if (password == null) {
+               static byte[] ConvertData (byte[] data)
+               {
+                       if (data == null || data.Length == 0)
+                               return data;
+
+                       // does it looks like PEM ?
+                       if (data [0] != 0x30) {
                                try {
-                                       x509 = new MX.X509Certificate (rawData);
-                               } catch (Exception e) {
-                                       try {
-                                               x509 = ImportPkcs12 (rawData, null);
-                                       } catch {
-                                               string msg = Locale.GetText ("Unable to decode certificate.");
-                                               // inner exception is the original (not second) exception
-                                               throw new CryptographicException (msg, e);
-                                       }
+                                       return PEM ("CERTIFICATE", data);
+                               } catch {
+                                       // let the implementation take care of it.
                                }
-                       } else {
-                               // try PKCS#12
+                       }
+                       return data;
+               }
+
+#if !MONOTOUCH && !XAMMAC
+               static X509CertificateImpl Import (byte[] rawData)
+               {
+                       MX.X509Certificate x509;
+                       try {
+                               x509 = new MX.X509Certificate (rawData);
+                       } catch (Exception e) {
                                try {
-                                       x509 = ImportPkcs12 (rawData, password);
-                               }
-                               catch {
-                                       // it's possible to supply a (unrequired/unusued) password
-                                       // fix bug #79028
-                                       x509 = new MX.X509Certificate (rawData);
+                                       x509 = ImportPkcs12 (rawData, null);
+                               } catch {
+                                       string msg = Locale.GetText ("Unable to decode certificate.");
+                                       // inner exception is the original (not second) exception
+                                       throw new CryptographicException (msg, e);
                                }
                        }
 
@@ -183,6 +195,26 @@ namespace System.Security.Cryptography.X509Certificates
                }
 #endif
 
+               public static X509CertificateImpl Import (byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags)
+               {
+                       if (password == null) {
+                               rawData = ConvertData (rawData);
+                               return Import (rawData);
+                       }
+
+                       MX.X509Certificate x509;
+                       // try PKCS#12
+                       try {
+                               x509 = ImportPkcs12 (rawData, password);
+                       } catch {
+                               // it's possible to supply a (unrequired/unusued) password
+                               // fix bug #79028
+                               x509 = new MX.X509Certificate (rawData);
+                       }
+
+                       return new X509CertificateImplMono (x509);
+               }
+
                public static byte[] Export (X509CertificateImpl impl, X509ContentType contentType, byte[] password)
                {
                        ThrowIfContextInvalid (impl);
index f8653aad20aa9dbc99d80f3d206c214bd6f889f3..307c9d788a3c33f9ca99e9c659bc89795bf4e314 100644 (file)
@@ -251,7 +251,7 @@ namespace System.Security.Policy {
                        }
 
                        // strongnamed assemblies gets a StrongName evidence
-                       AssemblyName an = a.UnprotectedGetName ();
+                       AssemblyName an = a.GetName ();
                        byte[] pk = an.GetPublicKey ();
                        if ((pk != null) && (pk.Length > 0)) {
                                StrongNamePublicKeyBlob blob = new StrongNamePublicKeyBlob (pk);
index d78fe55eb070725940a1eb131c842c88d8ffea72..4e1427fe1be2a49be2faae58fd83ec535b308ca3 100644 (file)
@@ -582,7 +582,7 @@ namespace System.Security.Policy {
 
                internal bool IsFullTrustAssembly (Assembly a)
                {
-                       AssemblyName an = a.UnprotectedGetName ();
+                       AssemblyName an = a.GetName ();
                        StrongNamePublicKeyBlob snpkb = new StrongNamePublicKeyBlob (an.GetPublicKey ());
                        StrongNameMembershipCondition snMC = new StrongNameMembershipCondition (snpkb, an.Name, an.Version);
                        foreach (StrongNameMembershipCondition sn in full_trust_assemblies) {
index 15fbb4ad39029df6e511b002241ab9ebc47a0124..34285b39e3a76f00b3659f3148b8467ee6e4ca1e 100644 (file)
@@ -52,7 +52,11 @@ namespace System.Security {
                {
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public void Assert ()
                {
                        new PermissionSet (this).Assert ();
@@ -60,6 +64,9 @@ namespace System.Security {
 
                public abstract IPermission Copy ();
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#endif
                public void Demand ()
                {
                        // note: here we're sure it's a CAS demand
@@ -70,7 +77,11 @@ namespace System.Security {
                        new PermissionSet (this).CasOnlyDemand (3);
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public void Deny ()
                {
                        new PermissionSet (this).Deny ();
@@ -114,13 +125,21 @@ namespace System.Security {
                        return null;
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public void PermitOnly ()
                {
                        new PermissionSet (this).PermitOnly ();
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public static void RevertAll ()
                {
                        if (!SecurityManager.SecurityEnabled)
@@ -128,7 +147,11 @@ namespace System.Security {
                        throw new NotImplementedException ();
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public static void RevertAssert ()
                {
                        if (!SecurityManager.SecurityEnabled)
@@ -136,7 +159,11 @@ namespace System.Security {
                        throw new NotImplementedException ();
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public static void RevertDeny ()
                {
                        if (!SecurityManager.SecurityEnabled)
@@ -144,7 +171,11 @@ namespace System.Security {
                        throw new NotImplementedException ();
                }
 
+#if MOBILE
+               [Conditional ("FEATURE_MONO_CAS")]
+#else
                [MonoTODO ("CAS support is experimental (and unsupported). Imperative mode is not implemented.")]
+#endif
                public static void RevertPermitOnly ()
                {
                        if (!SecurityManager.SecurityEnabled)
@@ -233,5 +264,28 @@ namespace System.Security {
                        msg = String.Format (msg, target.GetType (), expected);
                        throw new ArgumentException (msg, "target");
                }
+
+#if MOBILE
+               // Workaround for CS0629
+               void IStackWalk.Assert ()
+               {
+               }
+
+               void IStackWalk.Deny ()
+               {
+               }
+
+               void IStackWalk.PermitOnly ()
+               {
+               }
+
+               void IStackWalk.Demand ()
+               {
+               }
+
+               void IPermission.Demand ()
+               {
+               }
+#endif
        }
 }
index b76c35d2d88324116507e97faef0a68db4969c08..9ec94ff97f9985ce8764e276fc3cae5cfe8dd964 100644 (file)
@@ -37,151 +37,51 @@ using System.Runtime.InteropServices;
 
 namespace System.Threading
 {
-       [ComVisible (true)]
-       public static class Monitor
+       public static partial class Monitor
        {
-               // Grabs the mutex on object 'obj', with a maximum
-               // wait time 'ms' but doesn't block - if it can't get
-               // the lock it returns false, true if it can
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private extern static bool Monitor_try_enter(object obj, int ms);
+               extern static bool Monitor_test_synchronised(object obj);
 
-               // Enter/Exit are implemented directly as icalls for performance reasons
-
-               // Acquires the mutex on object 'obj'
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               public extern static void Enter(object obj);
-
-               // Releases the mutex on object 'obj'
-               [ReliabilityContractAttribute (Consistency.WillNotCorruptState, Cer.Success)]
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               public extern static void Exit(object obj);
-
-               // Signals one of potentially many objects waiting on
-               // object 'obj'
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private extern static void Monitor_pulse(object obj);
+               extern static void Monitor_pulse(object obj);
 
-               // Checks whether object 'obj' is currently synchronised
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private extern static bool Monitor_test_synchronised(object obj);
-
-               public static void Pulse(object obj) {
-                       if(obj==null) {
-                               throw new ArgumentNullException("obj");
-                       }
-                       if(Monitor_test_synchronised(obj)==false) {
+               static void ObjPulse(Object obj)
+               {
+                       if (!Monitor_test_synchronised (obj))
                                throw new SynchronizationLockException("Object is not synchronized");
-                       }
 
-                       Monitor_pulse(obj);
+                       Monitor_pulse (obj);
                }
 
-               // Signals all of potentially many objects waiting on
-               // object 'obj'
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private extern static void Monitor_pulse_all(object obj);
-
-               public static void PulseAll(object obj) {
-                       if(obj==null) {
-                               throw new ArgumentNullException("obj");
-                       }
-                       if(Monitor_test_synchronised(obj)==false) {
-                               throw new SynchronizationLockException("Object is not synchronized");
-                       }
-
-                       Monitor_pulse_all(obj);
-               }
+               extern static void Monitor_pulse_all(object obj);
 
-               public static bool TryEnter (object obj)
+               static void ObjPulseAll(Object obj)
                {
-                       return TryEnter (obj, 0);
-               }
-
-               public static bool TryEnter (object obj, int millisecondsTimeout)
-               {
-                       if (obj == null)
-                               throw new ArgumentNullException ("obj");
-
-                       if (millisecondsTimeout == Timeout.Infinite) {
-                               Enter (obj);
-                               return true;
-                       }
-
-                       if (millisecondsTimeout < 0)
-                               throw new ArgumentException ("negative value for millisecondsTimeout", "millisecondsTimeout");
-                       
-                       return Monitor_try_enter (obj, millisecondsTimeout);
-               }
+                       if (!Monitor_test_synchronised (obj))
+                               throw new SynchronizationLockException("Object is not synchronized");
 
-               public static bool TryEnter (object obj, TimeSpan timeout)
-               {
-                       long ms = (long) timeout.TotalMilliseconds;
-                       if (ms < Timeout.Infinite || ms > Int32.MaxValue)
-                               throw new ArgumentOutOfRangeException ("timeout", "timeout out of range");
-                       
-                       return TryEnter (obj, (int) ms);
+                       Monitor_pulse_all (obj);
                }
 
-               // Waits for a signal on object 'obj' with maximum
-               // wait time 'ms'. Returns true if the object was
-               // signalled, false if it timed out
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private extern static bool Monitor_wait(object obj, int ms);
-
-               public static bool Wait (object obj)
-               {
-                       return Wait (obj, Timeout.Infinite);
-               }
+               extern static bool Monitor_wait(object obj, int ms);
 
-               public static bool Wait (object obj, int millisecondsTimeout)
+               static bool ObjWait(bool exitContext, int millisecondsTimeout, Object obj)
                {
-                       if (obj == null)
-                               throw new ArgumentNullException ("obj");
-
-                       if (millisecondsTimeout < Timeout.Infinite)
-                               throw new ArgumentOutOfRangeException ("millisecondsTimeout", "timeout out of range");
-
+                       if (millisecondsTimeout < 0 && millisecondsTimeout != (int) Timeout.Infinite)
+                               throw new ArgumentOutOfRangeException ("millisecondsTimeout");
                        if (!Monitor_test_synchronised (obj))
                                throw new SynchronizationLockException ("Object is not synchronized");
 
-                       return Monitor_wait (obj, millisecondsTimeout);
-               }
-
-               public static bool Wait (object obj, TimeSpan timeout)
-               {
-                       long ms = (long) timeout.TotalMilliseconds;
-                       if (ms < Timeout.Infinite || ms > Int32.MaxValue)
-                               throw new ArgumentOutOfRangeException ("timeout", "timeout out of range");
-
-                       return Wait (obj, (int) ms);
-               }
-
-               public static bool Wait(object obj, int millisecondsTimeout, bool exitContext) {
                        try {
 #if !DISABLE_REMOTING
                                if (exitContext)
                                        SynchronizationAttribute.ExitContext ();
 #endif
-                               return Wait (obj, millisecondsTimeout);
-                       }
-                       finally {
-#if !DISABLE_REMOTING
-                               if (exitContext)
-                                       SynchronizationAttribute.EnterContext ();
-#endif
-                       }
-               }
 
-               public static bool Wait(object obj, TimeSpan timeout, bool exitContext) {
-                       try {
-#if !DISABLE_REMOTING
-                               if (exitContext)
-                                       SynchronizationAttribute.ExitContext ();
-#endif
-                               return Wait (obj, timeout);
-                       }
-                       finally {
+                               return Monitor_wait (obj, millisecondsTimeout);
+                       } finally {
 #if !DISABLE_REMOTING
                                if (exitContext)
                                        SynchronizationAttribute.EnterContext ();
@@ -192,50 +92,27 @@ namespace System.Threading
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
                extern static void try_enter_with_atomic_var (object obj, int millisecondsTimeout, ref bool lockTaken);
 
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               extern static void enter_with_atomic_var (object obj, ref bool lockTaken);
-
-               // Can't make this an icall since it has the same name as the other Enter method
-               [MethodImpl(MethodImplOptions.AggressiveInlining)]
-               public static void Enter (object obj, ref bool lockTaken)
+               static void ReliableEnterTimeout(Object obj, int timeout, ref bool lockTaken)
                {
-                       enter_with_atomic_var (obj, ref lockTaken);
-               }
+                       if (obj == null)
+                               throw new ArgumentNullException ("obj");
+                       if (timeout < 0 && timeout != (int) Timeout.Infinite)
+                               throw new ArgumentOutOfRangeException ("millisecondsTimeout");
 
-               public static void TryEnter (object obj, ref bool lockTaken)
-               {
-                       TryEnter (obj, 0, ref lockTaken);
+                       try_enter_with_atomic_var (obj, timeout, ref lockTaken);
                }
 
-               public static void TryEnter (object obj, TimeSpan timeout, ref bool lockTaken)
+               static void ReliableEnter(Object obj, ref bool lockTaken)
                {
-                       long ms = (long) timeout.TotalMilliseconds;
-                       if (ms < Timeout.Infinite || ms > Int32.MaxValue)
-                               throw new ArgumentOutOfRangeException ("timeout", "timeout out of range");
-                       TryEnter (obj, (int)ms, ref lockTaken);
+                       ReliableEnterTimeout (obj, (int) Timeout.Infinite, ref lockTaken);
                }
 
-               public static void TryEnter (object obj, int millisecondsTimeout, ref bool lockTaken)
-               {
-                       if (obj == null)
-                               throw new ArgumentNullException ("obj");
-                       if (lockTaken)
-                               throw new ArgumentException ("lockTaken");
-
-                       if (millisecondsTimeout < 0 && millisecondsTimeout != Timeout.Infinite)
-                               throw new ArgumentException ("negative value for millisecondsTimeout", "millisecondsTimeout");
-
-                       try_enter_with_atomic_var (obj, millisecondsTimeout, ref lockTaken);
-               }               
-
-
                [MethodImplAttribute(MethodImplOptions.InternalCall)]
                extern static bool Monitor_test_owner (object obj);
 
-               public
-               static bool IsEntered (object obj)
+               static bool IsEnteredNative(Object obj)
                {
-                       return Monitor_test_owner(obj);
+                       return Monitor_test_owner (obj);
                }
        }
 }
index e10918121dd93fd162bf6452e72d8589d7d35908..de7889e827d74afd5861cbad1522b865d41fa8fb 100644 (file)
@@ -116,6 +116,7 @@ namespace System.Threading {
                private InternalThread internal_thread;
                object m_ThreadStartArg;
                object pending_exception;
+               int priority;
                #endregion
 #pragma warning restore 414
 
index 73fef7906bb639c401e1f481c212ddd2a20d0e5c..2b031f332871e671df0acdb1e5972283ddc965b7 100644 (file)
@@ -57,7 +57,7 @@ namespace System {
                 * of icalls, do not require an increment.
                 */
 #pragma warning disable 169
-               private const int mono_corlib_version = 146;
+               private const int mono_corlib_version = 151;
 #pragma warning restore 169
 
                [ComVisible (true)]
index 76b5b15e0417f6caa8d12149a8569c9e83d6eca3..8894ec98c98a6508329ec496e6dd3248269c1208 100644 (file)
@@ -49,14 +49,14 @@ namespace System
                [ThreadStatic]
                static Dictionary<Type, AttributeUsageAttribute> usage_cache;
 
-               /* Treat as user types all corlib types extending System.Type that are not MonoType and TypeBuilder */
+               /* Treat as user types all corlib types extending System.Type that are not RuntimeType and TypeBuilder */
                static bool IsUserCattrProvider (object obj)
                {
                        Type type = obj as Type;
 #if !FULL_AOT_RUNTIME
-                       if ((type is MonoType) || (type is TypeBuilder))
+                       if ((type is RuntimeType) || (type is TypeBuilder))
 #else
-                       if (type is MonoType)
+                       if (type is RuntimeType)
 #endif
                                return false;
                        if ((obj is Type))
index 0fd8fa7ec75a560f46db6323a72c2fb252bb92d3..f99efb2b7b5b524483c62255adea1614d940676e 100644 (file)
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
 
-using System.Collections.Generic;
-using System.Globalization;
-using System.Reflection;
-using System.Runtime.InteropServices;
-using System.Runtime.CompilerServices;
-using System.Runtime.Serialization;
-using System.Security;
-using System.Diagnostics.Contracts;
-using System.Threading;
-using System.Diagnostics;
-using System.Security.Permissions;
-using System.Runtime.Remoting.Activation;
-using System.Runtime;
-
 namespace System
 {
-       // Contains information about the type which is expensive to compute
-       [StructLayout (LayoutKind.Sequential)]
-       internal class MonoTypeInfo {
-               // this is the displayed form: special characters
-               // ,+*&*[]\ in the identifier portions of the names
-               // have been escaped with a leading backslash (\)
-               public string full_name;
-               public MonoCMethod default_ctor;
-       }
-
-       [Serializable]
-       [StructLayout (LayoutKind.Sequential)]
-       class MonoType : RuntimeType, ISerializable
+       // Dummy type kept because lots of external code uses
+       // this to check whenever it is running on mono.
+       sealed class MonoType : RuntimeType
        {
-               [NonSerialized]
-               MonoTypeInfo type_info;
-
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               private static extern void type_from_obj (MonoType type, Object obj);
-               
-               internal MonoType (Object obj)
-               {
-                       // this should not be used - lupus
-                       type_from_obj (this, obj);
-                       
-                       throw new NotImplementedException ();
-               }
-
-               internal override MonoCMethod GetDefaultConstructor ()
+               private MonoType ()
                {
-                       MonoCMethod ctor = null;
-                       
-                       if (type_info == null)
-                               type_info = new MonoTypeInfo ();
-                       else
-                               ctor = type_info.default_ctor;
-
-                       if (ctor == null) {
-                               var ctors = GetConstructors (BindingFlags.Public | BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly);
-
-                               for (int i = 0; i < ctors.Length; ++i) {
-                                       if (ctors [i].GetParametersCount () == 0) {
-                                               type_info.default_ctor = ctor = (MonoCMethod) ctors [i];
-                                               break;
-                                       }
-                               }
-                       }
-
-                       return ctor;
-               }
-
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               extern MethodInfo GetCorrespondingInflatedMethod (MethodInfo generic);
-
-               [MethodImplAttribute(MethodImplOptions.InternalCall)]
-               extern ConstructorInfo GetCorrespondingInflatedConstructor (ConstructorInfo generic);
-
-               internal override MethodInfo GetMethod (MethodInfo fromNoninstanciated)
-                {
-                       if (fromNoninstanciated == null)
-                               throw new ArgumentNullException ("fromNoninstanciated");
-                        return GetCorrespondingInflatedMethod (fromNoninstanciated);
-                }
-
-               internal override ConstructorInfo GetConstructor (ConstructorInfo fromNoninstanciated)
-               {
-                       if (fromNoninstanciated == null)
-                               throw new ArgumentNullException ("fromNoninstanciated");
-                        return GetCorrespondingInflatedConstructor (fromNoninstanciated);
-               }
-
-               internal override FieldInfo GetField (FieldInfo fromNoninstanciated)
-               {
-                       /* create sensible flags from given FieldInfo */
-                       BindingFlags flags = fromNoninstanciated.IsStatic ? BindingFlags.Static : BindingFlags.Instance;
-                       flags |= fromNoninstanciated.IsPublic ? BindingFlags.Public : BindingFlags.NonPublic;
-                       return GetField (fromNoninstanciated.Name, flags);
-               }
-
-               public override int GetHashCode()
-               {
-                       Type t = UnderlyingSystemType;
-                       if (t != null && t != this)
-                               return t.GetHashCode ();
-                       return (int)_impl.Value;
-               }
-
-               public override string FullName {
-                       get {
-                               string fullName;
-                               // This doesn't need locking
-                               if (type_info == null)
-                                       type_info = new MonoTypeInfo ();
-                               if ((fullName = type_info.full_name) == null)
-                                       fullName = type_info.full_name = getFullName (true, false);
-
-                               return fullName;
-                       }
-               }
-
-               internal override bool IsUserType {
-                       get {
-                               return false;
-                       }
                }
        }
 }
index 479e867f5016a6fb66aca5ba7fb37274cd0fcc88..eb6c42f097648ff77d290c66f24e2a600768da87 100644 (file)
@@ -62,7 +62,7 @@ namespace System
                        if (info == null)
                                throw new ArgumentNullException ("info");
 
-                       MonoType mt = ((MonoType) info.GetValue ("TypeObj", typeof (MonoType)));
+                       RuntimeType mt = ((RuntimeType) info.GetValue ("TypeObj", typeof (RuntimeType)));
                        value = mt.TypeHandle.Value;
                        if (value == IntPtr.Zero)
                                throw new SerializationException (Locale.GetText ("Insufficient state."));
@@ -82,7 +82,7 @@ namespace System
                        if (value == IntPtr.Zero)
                                throw new SerializationException ("Object fields may not be properly initialized");
 
-                       info.AddValue ("TypeObj", Type.GetTypeHandle (this), typeof (MonoType));
+                       info.AddValue ("TypeObj", Type.GetTypeHandle (this), typeof (RuntimeType));
                }
 
                [ReliabilityContractAttribute (Consistency.WillNotCorruptState, Cer.Success)]
index 466678053574bb701b9ca5cc44b4b37b0eb4d7b1..fc1cd5448262fa7c0dc7720e5bec7d2ec910409f 100644 (file)
@@ -873,7 +873,7 @@ namespace System
                                return true;
 
                        // We might be in the dateTime previous year's DST period
-                       return IsInDSTForYear (rule, dateTime, dateTime.Year - 1);
+                       return dateTime.Year > 1 && IsInDSTForYear (rule, dateTime, dateTime.Year - 1);
                }
 
                bool IsInDSTForYear (AdjustmentRule rule, DateTime dateTime, int year)
@@ -1221,8 +1221,10 @@ namespace System
 
                        try {
                                return ParseTZBuffer (id, buffer, length);
+                       } catch (InvalidTimeZoneException) {
+                               throw;
                        } catch (Exception e) {
-                               throw new InvalidTimeZoneException (e.Message);
+                               throw new InvalidTimeZoneException ("Time zone information file contains invalid data", e);
                        }
                }
 
@@ -1279,7 +1281,7 @@ namespace System
                        if (time_types.Count == 0)
                                throw new InvalidTimeZoneException ();
 
-                       if (time_types.Count == 1 && ((TimeType)time_types[0]).IsDst)
+                       if (time_types.Count == 1 && time_types[0].IsDst)
                                throw new InvalidTimeZoneException ();
 
                        TimeSpan baseUtcOffset = new TimeSpan (0);
@@ -1360,8 +1362,8 @@ namespace System
 
                        TimeZoneInfo tz;
                        if (adjustmentRules.Count == 0 && !storeTransition) {
-                               TimeType t = (TimeType)time_types [0];
                                if (standardDisplayName == null) {
+                                       var t = time_types [0];
                                        standardDisplayName = t.Name;
                                        baseUtcOffset = new TimeSpan (0, 0, t.Offset);
                                }
@@ -1405,6 +1407,20 @@ namespace System
                        var types = new Dictionary<int, TimeType> (count);
                        for (int i = 0; i < count; i++) {
                                int offset = ReadBigEndianInt32 (buffer, index + 6 * i);
+
+                               //
+                               // The official tz database contains timezone with GMT offsets
+                               // not only in whole hours/minutes but in seconds. This happens for years
+                               // before 1901. For example
+                               //
+                               // NAME                 GMTOFF   RULES  FORMAT  UNTIL
+                               // Europe/Madrid        -0:14:44 -      LMT     1901 Jan  1  0:00s
+                               //
+                               // .NET as of 4.6.2 cannot handle that and uses hours/minutes only, so
+                               // we remove seconds to not crash later
+                               //
+                               offset = (offset / 60) * 60;
+
                                byte is_dst = buffer [index + 6 * i + 4];
                                byte abbrev = buffer [index + 6 * i + 5];
                                types.Add (i, new TimeType (offset, (is_dst != 0), abbreviations [(int)abbrev]));
@@ -1460,7 +1476,7 @@ namespace System
 #endregion
        }
 
-       struct TimeType {
+       class TimeType {
                public readonly int Offset;
                public readonly bool IsDst;
                public string Name;
index 94ff296ced511a8752575675a1f99ad0b4eed515..007c0a44d9d314420699358453e1537b89c61e9c 100644 (file)
@@ -179,48 +179,48 @@ namespace MonoTests.Mono.Math.Arithmetic.Big {
                [Test]
                public void AgtB () 
                {
-                       Assertion.Assert(A > B);
+                       Assert.IsTrue(A > B);
                }
                
                [Test]
                public void ANotLtB () 
                {
-                       Assertion.Assert(!(A < B));
+                       Assert.IsTrue(!(A < B));
                }
                
                [Test]
                public void BNotGtA () 
                {
-                       Assertion.Assert(!(B > A));
+                       Assert.IsTrue(!(B > A));
                }
                
                [Test]
                public void AltB () 
                {
-                       Assertion.Assert(B < A);
+                       Assert.IsTrue(B < A);
                }
                
                [Test]
                public void AeqA () 
                {
-                       Assertion.Assert(A == A);
+                       Assert.IsTrue(A == A);
                }
                [Test]
                public void BeqB () 
                {
-                       Assertion.Assert(B == B);
+                       Assert.IsTrue(B == B);
                }
                
                [Test]
                public void AneqB () 
                {
-                       Assertion.Assert(A != B);
+                       Assert.IsTrue(A != B);
                }
                
                [Test]
                public void BneqA () 
                {
-                       Assertion.Assert(B != A);
+                       Assert.IsTrue(B != A);
                }
 
                #endregion
index e6ddb0fc36ea2431ba66db0be801552f2dc38893..b1ba0d26e6eccdaad8a3a6bb71161dd321269d37 100644 (file)
@@ -81,12 +81,12 @@ namespace MonoTests.Mono.Math {
 
                private void ExpectComposite (BigInteger bi)
                {
-                       Assertion.AssertEquals (false, bi.isProbablePrime ());
+                       Assert.AreEqual (false, bi.isProbablePrime ());
                }
 
                private void ExpectPrime (BigInteger bi)
                {
-                       Assertion.AssertEquals (true, bi.isProbablePrime ());
+                       Assert.AreEqual (true, bi.isProbablePrime ());
                }
        }
 
index 4b4b3b3a805435ed9d707ba690ad2a6f0df0137a..ce4f22174b18ed9442e60785e48be5e91b72d01a 100644 (file)
@@ -770,7 +770,7 @@ namespace MonoTests.System.Collections
                        for (int i = 0; i < 20; i++)
                                sl1.RemoveAt (9);
 
-                       Assert.AreEqual (30, sl1.Count, 30, "#C1");
+                       Assert.AreEqual (30, (double) sl1.Count, 30, "#C1");
                        for (int i = 0; i < 9; i++)
                                Assert.AreEqual (i, sl1 ["kala " + string.Format ("{0:D2}", i)], "#C2:" + i);
                        for (int i = 9; i < 29; i++)
index 84a9d638ed6bed978c8f2595ae5e2fd0b9328c4d..008930061e45c2c6edc9b06b9cce89f4c976a6e7 100644 (file)
@@ -1671,6 +1671,9 @@ namespace MonoTests.System.IO
                        } catch (FileNotFoundException) {
                                // Only run this test on platforms where /dev/zero exists
                                Assert.Ignore();
+                       } catch (DirectoryNotFoundException) {
+                               // Only run this test on platforms where /dev exists
+                               Assert.Ignore();
                        }
 
                        // this shouldn't throw
index de8f4bdbca5f88a655f18087835b9a5fcd091ca7..bc3416441cfad03b93e428301df40573aaff264e 100644 (file)
@@ -182,7 +182,10 @@ namespace MonoTests.System.Reflection
                        // note: only available in default appdomain
                        // http://weblogs.asp.net/asanto/archive/2003/09/08/26710.aspx
                        // Not sure we should emulate this behavior.
-#if !MONODROID
+#if __WATCHOS__
+                       Assert.IsNull (Assembly.GetEntryAssembly (), "GetEntryAssembly");
+                       Assert.IsTrue (AppDomain.CurrentDomain.IsDefaultAppDomain (), "!default appdomain");
+#elif !MONODROID
                        string fname = AppDomain.CurrentDomain.FriendlyName;
                        if (fname.EndsWith (".dll")) { // nunit-console
                                Assert.IsNull (Assembly.GetEntryAssembly (), "GetEntryAssembly");
@@ -249,7 +252,7 @@ namespace MonoTests.System.Reflection
                public void Corlib_test ()
                {
                        Assembly corlib_test = Assembly.GetExecutingAssembly ();
-#if MONODROID || MOBILE_STATIC
+#if MONODROID || MOBILE_STATIC || __WATCHOS__
                        Assert.IsNull (corlib_test.EntryPoint, "EntryPoint");
                        Assert.IsNull (corlib_test.Evidence, "Evidence");
 #elif MOBILE
@@ -1327,6 +1330,19 @@ namespace MonoTests.System.Reflection
                        Assert.AreSame (x1, x2, "#1");
                }
 #endif
+
+               class MyAssembly : Assembly { }
+
+               [Test]
+               public void CustomAssemblyImplThrows ()
+               {
+                       var ma = new MyAssembly();
+                       try {
+                               ma.GetName ();
+                               Assert.Fail ("must throw");
+                       } catch (NotImplementedException){
+                       }
+               }
        }
 
        public class TestDefinedTypes
index 065914a2ed460b40f0f220d2c8e1f47597cb6b39..c5f63a7b5bfd81712ba2ada72f72649dff5c0bd6 100644 (file)
@@ -7,6 +7,8 @@
 // (C) 2004 Motus Technologies Inc. (http://www.motus.com)
 //
 
+#if FEATURE_MONO_CAS
+
 using NUnit.Framework;
 using System;
 using System.Security;
@@ -89,3 +91,5 @@ namespace MonoTests.System.Security {
                }
        }
 }
+
+#endif
index b9d20c73abf2df6f911f288e24c7a9a5b5ca52ca..9f1d87cc0d0bdd0bc583b96299175ba1aa52d9bf 100644 (file)
@@ -304,7 +304,7 @@ namespace MonoTests.System.Threading
                                                });
                                        }
 
-                                       Assert.IsTrue (ce.Wait (1000), "#1");
+                                       Assert.IsTrue (ce.Wait (10000), "#1");
                                }
                        }
                }
index f4ecfb5d46f925eb2286e39817eeefdfe7879532..c58012a3c93442a074be04c68f44db81a2a7c557 100644 (file)
@@ -25,7 +25,7 @@
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
-
+#if FEATURE_MONO_CAS
 
 using System;
 using System.Security;
@@ -168,3 +168,4 @@ namespace MonoCasTests.System.Threading {
        }
 }
 
+#endif
\ No newline at end of file
index 1c4ae9408a0e936dcb9053181c91ca59f4ac5a29..158a9afc9424f0cb0b67358b8d588c4269273a0b 100644 (file)
@@ -144,7 +144,7 @@ namespace MonoTests.System.Threading {
                }
 
                [Test]
-               [ExpectedException (typeof (ArgumentException))]
+               [ExpectedException (typeof (ArgumentOutOfRangeException))]
                public void TryEnter_Int_Negative ()
                {
                        object o = new object ();
index c7f73e95d38cfcee8954a4ff30ef4ee83058fa7e..a869f7191f7daf9d8ba55795b459e8f909b117a2 100644 (file)
@@ -109,7 +109,7 @@ namespace MonoTests.System.Threading
                        }
 
                        // check a class in mscorlib to determine if we're running on Mono
-                       if (Type.GetType ("System.MonoType", false) != null)
+                       if (Type.GetType ("Mono.Runtime", false) != null)
                                is_mono = true;
                }
 
@@ -574,37 +574,6 @@ namespace MonoTests.System.Threading
                        t.Name = "b";
                }
 
-               bool rename_finished;
-               bool rename_failed;
-
-               [Test]
-               public void RenameTpThread ()
-               {
-                       object monitor = new object ();
-                       ThreadPool.QueueUserWorkItem (new WaitCallback (Rename_callback), monitor);
-                       lock (monitor) {
-                               if (!rename_finished)
-                                       Monitor.Wait (monitor);
-                       }
-                       Assert.IsTrue (!rename_failed);
-               }
-
-               void Rename_callback (object o) {
-                       Thread.CurrentThread.Name = "a";
-                       try {
-                               Thread.CurrentThread.Name = "b";
-                               //Console.WriteLine ("Thread name is: {0}", Thread.CurrentThread.Name);
-                       } catch (Exception e) {
-                               //Console.Error.WriteLine (e);
-                               rename_failed = true;
-                       }
-                       object monitor = o;
-                       lock (monitor) {
-                               rename_finished = true;
-                               Monitor.Pulse (monitor);
-                       }
-               }
-
                [Test]
                public void TestNestedThreads1()
                {
index 03de187af3d953521b3b78452e6eff523b6be07a..34874b1f81f0bae8977486ef067eec0eceac7e71 100644 (file)
@@ -3115,6 +3115,26 @@ namespace MonoTests.System
                        tester.AssertLoadMissingAssemblyType ();
                }
 
+               [Test]
+               public void ShadowCopyDontChangeAssemblyCodeBase ()
+               {
+                       var setup = new AppDomainSetup ();
+                       setup.ApplicationBase = tempDir;
+                       setup.ApplicationName = "testdomain";
+                       setup.ShadowCopyFiles = "true";
+                       var ad = CreateTestDomain (setup, true);
+
+                       string assemblyFile = Path.Combine (tempDir, "TestAssembly.dll");
+                       AssemblyName aname = new AssemblyName ();
+                       aname.Name = "TestAssembly";
+                       GenerateAssembly (aname, assemblyFile);
+
+                       var tester = CreateCrossDomainTester (ad);
+                       var codeBaseFromShadowCopy = tester.LoadAndGetName ("TestAssembly");
+                       var expected = Assembly.LoadFrom (Path.Combine (tempDir, "TestAssembly.dll"));
+                       Assert.AreEqual (expected.GetName ().CodeBase, codeBaseFromShadowCopy);
+               }
+
                private static AppDomain CreateTestDomain (string baseDirectory, bool assemblyResolver)
                {
                        AppDomainSetup setup = new AppDomainSetup ();
@@ -3258,6 +3278,12 @@ namespace MonoTests.System
                        {
                                return obj;
                        }
+
+                       public string LoadAndGetName (string assemblyName)
+                       {
+                               var assembly = Assembly.Load (assemblyName);
+                               return assembly.GetName ().CodeBase;
+                       }
                }
 
                [Serializable ()]
index 2124aa85733b05943c15d6c00f8c006ed856713e..2391dbb65071a4f0a313703b9e3aac16d322de59 100644 (file)
@@ -1876,7 +1876,7 @@ namespace MonoTests.System {
                                iTest++;
                                Assert.AreEqual ((float)0, Convert.ToSingle(tryByte), "#N03");
                                iTest++;
-                               Assert.AreEqual ((float)1234, 234, Convert.ToSingle(tryDec), "#N04");
+                               Assert.AreEqual ((float)1234, (double)234, Convert.ToSingle(tryDec), "#N04");
                                iTest++;
                                Assert.AreEqual ((float)0, Convert.ToSingle(tryDbl), "#N05");
                                iTest++;
@@ -1888,7 +1888,7 @@ namespace MonoTests.System {
                                iTest++;
                                Assert.AreEqual ((float)123, Convert.ToSingle(trySByte), "#N09");
                                iTest++;
-                               Assert.AreEqual ((float)1234, 2345, Convert.ToSingle(tryFloat), "#N10");
+                               Assert.AreEqual ((float)1234, (double)2345, Convert.ToSingle(tryFloat), "#N10");
                                iTest++;
                                Assert.AreEqual ((float)987, Convert.ToSingle("987"), "#N11");
                                iTest++;
index deb0e3314b650593fd20d1b2c71e5f0a84200468..fed370974e584b8d5c33dd49eca0a75dc87de8e6 100644 (file)
@@ -156,9 +156,13 @@ namespace MonoTests.System
                public void GetCommandLineArgs ()
                {
                        string[] args = Environment.GetCommandLineArgs ();
+#if !__WATCHOS__
                        Assert.IsNotNull (args, "not null");
                        Assert.IsTrue (((args.Length > 0) && (args.Length < 256)), "reasonable");
                        Assert.IsNotNull (args [0], "application");
+#else
+                       Assert.AreEqual (0, args.Length, "length");
+#endif
                }
 
 #if !NET_2_1
index a45c7ec198cb62b2fb068a2a13b743b86f535288..be5e7984757b64a30bba3b7274a9f86edfab970f 100644 (file)
@@ -109,8 +109,8 @@ public class StringTest
                if (!Environment.Is64BitProcess)
                        Assert.Ignore("This test cannot run on a 32-bit system.");
 
-               // Require 6 GB physical RAM, for the 4GB string plus 2GB headroom
-               var pc = new PerformanceCounter ("Mono Memory", "Total Physical Memory");
+               // Require 6 GB available RAM, for the 4GB string plus 2GB headroom
+               var pc = new PerformanceCounter ("Mono Memory", "Available Physical Memory");
 
                if (pc.RawValue < 6L*1024L*1024L*1024L)
                        Assert.Ignore("This machine may not have enough RAM to run this test.");
index d18f8a4efefc646ddad2bf07a71c2817d17b491b..5ede3b2ea8fd17d38ab774ed47a20e5cdc5cad8b 100644 (file)
@@ -923,18 +923,18 @@ namespace MonoTests.System
                                        "Canada/Newfoundland",
                                        "Europe/Moscow",
                                        "Europe/Riga",
-                                       "N/A", // testing that the test doesn't fail with inexistent TZs
                                };
                                foreach (var tz in subMinuteDSTs) {
-                                       try {
-                                               TimeZoneInfo.FindSystemTimeZoneById (tz);
-                                       } catch (TimeZoneNotFoundException) {
-                                               // ok;
-                                       } catch (Exception ex) {
-                                               Assert.Fail (string.Format ("Failed to load TZ {0}: {1}", tz, ex.ToString ()));
-                                       }
+                                       TimeZoneInfo.FindSystemTimeZoneById (tz);
                                }
                        }
+
+                       [Test]
+                       [ExpectedException (typeof (TimeZoneNotFoundException))]
+                       public void InvalidName ()
+                       {
+                               TimeZoneInfo.FindSystemTimeZoneById ("N/A");
+                       }
                }
                
                [TestFixture]
@@ -1158,6 +1158,22 @@ namespace MonoTests.System
                          Assert.AreEqual(baseUtcOffset, cairo.GetUtcOffset(offset), "dst2End_with_dstOffset+baseUtcOffset#exact");
                          Assert.AreEqual(baseUtcOffset, cairo.GetUtcOffset(offset.Add(new TimeSpan(0, 0, 0, 1))), "dst2End_with_dstOffset+baseUtcOffset#after");
                  }
+
+                       [Test]
+                       public void DTS_WithMinimalDate ()
+                       {
+                               TimeZoneInfo.TransitionTime startTransition, endTransition;
+                               startTransition = TimeZoneInfo.TransitionTime.CreateFloatingDateRule (new DateTime (1, 1, 1, 4, 0, 0),
+                                                                                                                                                                 10, 2, DayOfWeek.Sunday);
+                               endTransition = TimeZoneInfo.TransitionTime.CreateFloatingDateRule (new DateTime (1, 1, 1, 3, 0, 0),
+                                                                                                                                                               3, 2, DayOfWeek.Sunday);
+
+                               var ctz = TimeZoneInfo.CreateCustomTimeZone ("test", TimeSpan.FromHours (-5), "display", "sdisplay", "dst", new [] {
+                                       TimeZoneInfo.AdjustmentRule.CreateAdjustmentRule (DateTime.MinValue, DateTime.MaxValue.Date, TimeSpan.FromHours (-1), startTransition, endTransition) });
+
+                               var offset = ctz.GetUtcOffset (DateTime.MinValue);
+                               Assert.AreEqual (TimeSpan.FromHours (-5), offset); // TODO: Wrong it should be -6
+                       }
     }
 
                [TestFixture]
index 358298f91e56559e6efbf388bf6228ac13fb0221..409e62066b5f4a5a9cbd133ddff09a8a535fe598 100644 (file)
@@ -326,6 +326,16 @@ public class TimeZoneTest {
                        Assert.IsTrue (tzi.SupportsDaylightSavingTime, "SupportsDaylightSavingTime");
                }
 
+               [Test]
+               public void OldEraToLocalTime ()
+               {
+                       TimeSpan offset = TimeSpan.Zero;
+                       var dto = new DateTimeOffset (new DateTime (1900, 1, 1).Ticks, offset);
+
+                       // Should never throw
+                       dto.ToLocalTime ();
+               }
+
 #if MOBILE
                // On device we cannot read the OS file system to look for /etc/localtime
                // and /usr/share/zoneinfo - so we must initialize the BCL TimeZoneInfo
index cbf44c17f358df1b94a0c1977772271af40ac3e4..1e38f069af2b809045fa4e4cb2b686d035553a3f 100644 (file)
@@ -456,6 +456,65 @@ namespace MonoTests.System
 
                }
 
+               class GetProperties_Overrides_Input
+               {
+                       public class TestClass : BaseClass<object>
+                       {
+                               public override object TestProperty { get; set; }
+                       }
+
+                       public abstract class BaseClass<T>
+                       {
+                               public virtual T TestProperty { get; set; }
+                       }
+
+                       public class TestClass_Indexer : BaseClass_Indexer<object>
+                       {
+                               public override object this[int arg] { set { } }
+                       }
+
+                       public abstract class BaseClass_Indexer<T>
+                       {
+                               public virtual T this[int arg] { set { } }
+                       }
+
+                       public interface IB : IA<object>
+                       {
+                               new object TestProperty { get; set; }
+                       }
+
+                       public interface IA<T>
+                       {
+                               T TestProperty { get; set; }
+                       }
+
+                       public class TestClass_HiddenProperty : BaseClass_HiddenProperty
+                       {
+                               public new virtual string Prop { set { } }
+                       }
+
+                       public class BaseClass_HiddenProperty
+                       {
+                               public virtual string Prop { set  { } }
+                       }
+               }
+
+               [Test]
+               public void GetProperties_Overrides ()
+               {
+                       Assert.AreEqual (1, typeof (GetProperties_Overrides_Input.IB).GetProperties().Length);
+
+                       var prop = typeof (GetProperties_Overrides_Input.TestClass).GetProperty ("TestProperty");
+                       Assert.AreEqual (typeof (GetProperties_Overrides_Input.TestClass), prop.DeclaringType);
+
+                       var prop_2 = typeof (GetProperties_Overrides_Input.TestClass_HiddenProperty).GetProperty ("Prop");
+                       Assert.AreEqual (typeof (GetProperties_Overrides_Input.TestClass_HiddenProperty), prop_2.DeclaringType);
+
+                       Assert.AreEqual (1, typeof (GetProperties_Overrides_Input.TestClass).GetProperties().Length);
+                       Assert.AreEqual (1, typeof (GetProperties_Overrides_Input.TestClass_Indexer).GetProperties().Length);
+                       Assert.AreEqual (1, typeof (GetProperties_Overrides_Input.TestClass_HiddenProperty).GetProperties().Length);
+           }
+
                [Test] // GetProperties (BindingFlags)
                public void GetProperties_Flags ()
                {
diff --git a/mcs/class/corlib/corlib-basic.csproj b/mcs/class/corlib/corlib-basic.csproj
deleted file mode 100644 (file)
index cdc717d..0000000
+++ /dev/null
@@ -1,1759 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{B8AA4FF3-2174-4C82-B75E-28C3CA28A380}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <OutputPath>./../../class/lib/basic</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>mscorlib</AssemblyName>\r
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;INSIDE_CORLIB;LIBC;NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>INSIDE_CORLIB;LIBC;NET_1_1;NET_2_0;BOOTSTRAP_BASIC</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\NextPrimeFinder.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\PrimeGeneratorBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\SequentialSearchPrimeGeneratorBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime\ConfidenceFactor.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime\PrimalityTests.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math\BigInteger.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Authenticode\AuthenticodeBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Authenticode\AuthenticodeDeformatter.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\ARC4Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\CryptoConvert.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\CryptoTools.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\KeyPairPersistence.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD2.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD2Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD4.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD4Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\PKCS1.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\PKCS8.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\RC4.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\RSAManaged.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\SymmetricTransform.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\BasicConstraintsExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\KeyUsageExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\PKCS12.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X501Name.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Certificate.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509CertificateCollection.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Chain.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509ChainStatusFlags.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509CRL.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Extension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Extensions.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Store.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509StoreManager.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Stores.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X520Attributes.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\ASN1.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\ASN1Convert.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\BitConverterLE.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\PKCS7.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\StrongName.cs" />\r
-    <Compile Include="..\System.Core\System.Security.Cryptography\Aes.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.AdjustmentRule.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.Android.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.MonoTouch.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.TransitionTime.cs" />\r
-    <Compile Include="..\System\System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\CriticalHandleMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\CriticalHandleZeroOrMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeFileHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeHandleMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeHandleZeroOrMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeRegistryHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeWaitHandle.cs" />\r
-    <Compile Include="Microsoft.Win32\IRegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Registry.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryHive.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryKey.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryKeyPermissionCheck.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryOptions.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryValueKind.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryValueOptions.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryView.cs" />\r
-    <Compile Include="Microsoft.Win32\UnixRegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Win32RegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Win32ResultCode.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\CodePointIndexer.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\MSCompatUnicodeTable.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\MSCompatUnicodeTableUtil.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\Normalization.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\NormalizationTableUtil.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SimpleCollator.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SortKey.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SortKeyBuffer.cs" />\r
-    <Compile Include="Mono.Interop\ComInteropProxy.cs" />\r
-    <Compile Include="Mono.Interop\IDispatch.cs" />\r
-    <Compile Include="Mono.Interop\IUnknown.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\DSAManaged.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\HMACAlgorithm.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\MACAlgorithm.cs" />\r
-    <Compile Include="Mono.Security\StrongNameManager.cs" />\r
-    <Compile Include="Mono.Security\Uri.cs" />\r
-    <Compile Include="Mono.Xml\SecurityParser.cs" />\r
-    <Compile Include="Mono.Xml\SmallXmlParser.cs" />\r
-    <Compile Include="Mono\DataConverter.cs" />\r
-    <Compile Include="Mono\Runtime.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\EnumerablePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\ListPartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\UserRangePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentDictionary.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentOrderedList.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentQueue.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentStack.cs" />\r
-    <Compile Include="System.Collections.Concurrent\EnumerablePartitionerOptions.cs" />\r
-    <Compile Include="System.Collections.Concurrent\IProducerConsumerCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\OrderablePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\Partitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\SplitOrderedList.cs" />\r
-    <Compile Include="System.Collections.Generic\CollectionDebuggerView.cs" />\r
-    <Compile Include="System.Collections.Generic\Comparer.cs" />\r
-    <Compile Include="System.Collections.Generic\Dictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\EqualityComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\ICollection.cs" />\r
-    <Compile Include="System.Collections.Generic\IComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\IDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\IEnumerable.cs" />\r
-    <Compile Include="System.Collections.Generic\IEnumerator.cs" />\r
-    <Compile Include="System.Collections.Generic\IEqualityComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\IList.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyCollection.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyList.cs" />\r
-    <Compile Include="System.Collections.Generic\KeyNotFoundException.cs" />\r
-    <Compile Include="System.Collections.Generic\KeyValuePair.cs" />\r
-    <Compile Include="System.Collections.Generic\List.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\Collection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\KeyedCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyDictionary.cs" />\r
-    <Compile Include="System.Collections\ArrayList.cs" />\r
-    <Compile Include="System.Collections\BitArray.cs" />\r
-    <Compile Include="System.Collections\CaseInsensitiveComparer.cs" />\r
-    <Compile Include="System.Collections\CaseInsensitiveHashCodeProvider.cs" />\r
-    <Compile Include="System.Collections\CollectionBase.cs" />\r
-    <Compile Include="System.Collections\CollectionDebuggerView.cs" />\r
-    <Compile Include="System.Collections\Comparer.cs" />\r
-    <Compile Include="System.Collections\DictionaryBase.cs" />\r
-    <Compile Include="System.Collections\DictionaryEntry.cs" />\r
-    <Compile Include="System.Collections\HashPrimeNumbers.cs" />\r
-    <Compile Include="System.Collections\Hashtable.cs" />\r
-    <Compile Include="System.Collections\ICollection.cs" />\r
-    <Compile Include="System.Collections\IComparer.cs" />\r
-    <Compile Include="System.Collections\IDictionary.cs" />\r
-    <Compile Include="System.Collections\IDictionaryEnumerator.cs" />\r
-    <Compile Include="System.Collections\IEnumerable.cs" />\r
-    <Compile Include="System.Collections\IEnumerator.cs" />\r
-    <Compile Include="System.Collections\IEqualityComparer.cs" />\r
-    <Compile Include="System.Collections\IHashCodeProvider.cs" />\r
-    <Compile Include="System.Collections\IList.cs" />\r
-    <Compile Include="System.Collections\IStructuralComparable.cs" />\r
-    <Compile Include="System.Collections\IStructuralEquatable.cs" />\r
-    <Compile Include="System.Collections\Queue.cs" />\r
-    <Compile Include="System.Collections\ReadOnlyCollectionBase.cs" />\r
-    <Compile Include="System.Collections\SortedList.cs" />\r
-    <Compile Include="System.Collections\Stack.cs" />\r
-    <Compile Include="System.Collections\StructuralComparisons.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyHash.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyHashAlgorithm.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyVersionCompatibility.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\ProcessorID.cs" />\r
-    <Compile Include="System.Deployment.Internal\InternalActivationContextHelper.cs" />\r
-    <Compile Include="System.Deployment.Internal\InternalApplicationIdentityHelper.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\SuppressMessageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts.Internal\ContractHelper.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\Contract.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractAbbreviatorAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractArgumentValidatorAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractClassAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractClassForAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractException.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractFailedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractFailureKind.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractInvariantMethodAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractOptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractPublicPropertyNameAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractReferenceAssemblyAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractRuntimeIgnoredAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractShouldAssertException.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractVerificationAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\PureAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolBinder.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolBinder1.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolDocument.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolDocumentWriter.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolMethod.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolNamespace.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolReader.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolScope.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolVariable.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolWriter.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymAddressKind.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymbolToken.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymDocumentType.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymLanguageType.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymLanguageVendor.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventCommand.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventCommandEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventKeywords.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventLevel.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventSource.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventSourceAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\NonEventAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\ConditionalAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggableAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\Debugger.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerBrowsableAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerBrowsableState.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerDisplayAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerHiddenAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerNonUserCodeAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerStepperBoundaryAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerStepThroughAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerTypeProxyAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerVisualizerAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\StackFrame.cs" />\r
-    <Compile Include="System.Diagnostics\StackTrace.cs" />\r
-    <Compile Include="System.Globalization\Calendar.cs" />\r
-    <Compile Include="System.Globalization\CalendarAlgorithmType.cs" />\r
-    <Compile Include="System.Globalization\CalendarWeekRule.cs" />\r
-    <Compile Include="System.Globalization\CalendricalCalculations.cs" />\r
-    <Compile Include="System.Globalization\CharUnicodeInfo.cs" />\r
-    <Compile Include="System.Globalization\ChineseLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\CodePageDataItem.cs" />\r
-    <Compile Include="System.Globalization\CompareInfo.cs" />\r
-    <Compile Include="System.Globalization\CompareOptions.cs" />\r
-    <Compile Include="System.Globalization\CultureInfo.cs" />\r
-    <Compile Include="System.Globalization\CultureNotFoundException.cs" />\r
-    <Compile Include="System.Globalization\CultureTypes.cs" />\r
-    <Compile Include="System.Globalization\DateTimeFormatInfo.cs" />\r
-    <Compile Include="System.Globalization\DateTimeStyles.cs" />\r
-    <Compile Include="System.Globalization\DaylightTime.cs" />\r
-    <Compile Include="System.Globalization\DigitShapes.cs" />\r
-    <Compile Include="System.Globalization\EastAsianLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\GregorianCalendar.cs" />\r
-    <Compile Include="System.Globalization\GregorianCalendarTypes.cs" />\r
-    <Compile Include="System.Globalization\HebrewCalendar.cs" />\r
-    <Compile Include="System.Globalization\HijriCalendar.cs" />\r
-    <Compile Include="System.Globalization\IdnMapping.cs" />\r
-    <Compile Include="System.Globalization\JapaneseCalendar.cs" />\r
-    <Compile Include="System.Globalization\JapaneseLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\JulianCalendar.cs" />\r
-    <Compile Include="System.Globalization\KoreanCalendar.cs" />\r
-    <Compile Include="System.Globalization\KoreanLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\NumberFormatInfo.cs" />\r
-    <Compile Include="System.Globalization\NumberStyles.cs" />\r
-    <Compile Include="System.Globalization\PersianCalendar.cs" />\r
-    <Compile Include="System.Globalization\RegionInfo.cs" />\r
-    <Compile Include="System.Globalization\RegionInfo.MonoTouch.cs" />\r
-    <Compile Include="System.Globalization\SortVersion.cs" />\r
-    <Compile Include="System.Globalization\StringInfo.cs" />\r
-    <Compile Include="System.Globalization\TaiwanCalendar.cs" />\r
-    <Compile Include="System.Globalization\TaiwanLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\TextElementEnumerator.cs" />\r
-    <Compile Include="System.Globalization\TextInfo.cs" />\r
-    <Compile Include="System.Globalization\ThaiBuddhistCalendar.cs" />\r
-    <Compile Include="System.Globalization\TimeSpanStyles.cs" />\r
-    <Compile Include="System.Globalization\UmAlQuraCalendar.cs" />\r
-    <Compile Include="System.Globalization\UnicodeCategory.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\INormalizeForIsolatedStorage.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorage.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageException.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFile.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFileEnumerator.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFileStream.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageScope.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageSecurityOptions.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageSecurityState.cs" />\r
-    <Compile Include="System.IO\BinaryReader.cs" />\r
-    <Compile Include="System.IO\BinaryWriter.cs" />\r
-    <Compile Include="System.IO\BufferedStream.cs" />\r
-    <Compile Include="System.IO\Directory.cs" />\r
-    <Compile Include="System.IO\DirectoryInfo.cs" />\r
-    <Compile Include="System.IO\DirectoryNotFoundException.cs" />\r
-    <Compile Include="System.IO\DriveInfo.cs" />\r
-    <Compile Include="System.IO\DriveNotFoundException.cs" />\r
-    <Compile Include="System.IO\DriveType.cs" />\r
-    <Compile Include="System.IO\EndOfStreamException.cs" />\r
-    <Compile Include="System.IO\File.cs" />\r
-    <Compile Include="System.IO\FileAccess.cs" />\r
-    <Compile Include="System.IO\FileAttributes.cs" />\r
-    <Compile Include="System.IO\FileInfo.cs" />\r
-    <Compile Include="System.IO\FileLoadException.cs" />\r
-    <Compile Include="System.IO\FileMode.cs" />\r
-    <Compile Include="System.IO\FileNotFoundException.cs" />\r
-    <Compile Include="System.IO\FileOptions.cs" />\r
-    <Compile Include="System.IO\FileShare.cs" />\r
-    <Compile Include="System.IO\FileStream.cs" />\r
-    <Compile Include="System.IO\FileStreamAsyncResult.cs" />\r
-    <Compile Include="System.IO\FileSystemInfo.cs" />\r
-    <Compile Include="System.IO\IOException.cs" />\r
-    <Compile Include="System.IO\LogcatTextWriter.cs" />\r
-    <Compile Include="System.IO\MemoryStream.cs" />\r
-    <Compile Include="System.IO\MonoFileType.cs" />\r
-    <Compile Include="System.IO\MonoIO.cs" />\r
-    <Compile Include="System.IO\MonoIOError.cs" />\r
-    <Compile Include="System.IO\MonoIOStat.cs" />\r
-    <Compile Include="System.IO\Path.cs" />\r
-    <Compile Include="System.IO\PathTooLongException.cs" />\r
-    <Compile Include="System.IO\SearchOption.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\SeekOrigin.cs" />\r
-    <Compile Include="System.IO\Stream.cs" />\r
-    <Compile Include="System.IO\StreamReader.cs" />\r
-    <Compile Include="System.IO\StreamWriter.cs" />\r
-    <Compile Include="System.IO\StringReader.cs" />\r
-    <Compile Include="System.IO\StringWriter.cs" />\r
-    <Compile Include="System.IO\TextReader.cs" />\r
-    <Compile Include="System.IO\TextWriter.cs" />\r
-    <Compile Include="System.IO\UnexceptionalStreamReader.cs" />\r
-    <Compile Include="System.IO\UnexceptionalStreamWriter.cs" />\r
-    <Compile Include="System.IO\UnmanagedMemoryAccessor.cs" />\r
-    <Compile Include="System.IO\UnmanagedMemoryStream.cs" />\r
-    <Compile Include="System.Reflection.Emit\AssemblyBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\AssemblyBuilderAccess.cs" />\r
-    <Compile Include="System.Reflection.Emit\ConstructorBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ConstructorOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\CustomAttributeBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\DerivedTypes.cs" />\r
-    <Compile Include="System.Reflection.Emit\DynamicILInfo.cs" />\r
-    <Compile Include="System.Reflection.Emit\DynamicMethod.cs" />\r
-    <Compile Include="System.Reflection.Emit\EnumBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\FlowControl.cs" />\r
-    <Compile Include="System.Reflection.Emit\GenericTypeParameterBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ILGenerator.cs" />\r
-    <Compile Include="System.Reflection.Emit\Label.cs" />\r
-    <Compile Include="System.Reflection.Emit\LocalBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodRental.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\ModuleBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MonoArrayMethod.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCode.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodeNames.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodes.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodeType.cs" />\r
-    <Compile Include="System.Reflection.Emit\OperandType.cs" />\r
-    <Compile Include="System.Reflection.Emit\PackingSize.cs" />\r
-    <Compile Include="System.Reflection.Emit\ParameterBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ParameterToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\PEFileKinds.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\SignatureHelper.cs" />\r
-    <Compile Include="System.Reflection.Emit\SignatureToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\StackBehaviour.cs" />\r
-    <Compile Include="System.Reflection.Emit\StringToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\TypeBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\TypeToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\UnmanagedMarshal.cs" />\r
-    <Compile Include="System.Reflection\AmbiguousMatchException.cs" />\r
-    <Compile Include="System.Reflection\Assembly.cs" />\r
-    <Compile Include="System.Reflection\AssemblyAlgorithmIdAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCompanyAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyConfigurationAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyContentType.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCopyrightAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCultureAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDefaultAliasAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDelaySignAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDescriptionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyFileVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyFlagsAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyInformationalVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyKeyFileAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyKeyNameAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyMetadataAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyName.cs" />\r
-    <Compile Include="System.Reflection\AssemblyNameFlags.cs" />\r
-    <Compile Include="System.Reflection\AssemblyNameProxy.cs" />\r
-    <Compile Include="System.Reflection\AssemblyProductAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblySignatureKeyAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyTitleAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyTradeMarkAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\Binder.cs" />\r
-    <Compile Include="System.Reflection\BindingFlags.cs" />\r
-    <Compile Include="System.Reflection\CallingConventions.cs" />\r
-    <Compile Include="System.Reflection\ConstructorInfo.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeData.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeExtensions.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeFormatException.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeNamedArgument.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeTypedArgument.cs" />\r
-    <Compile Include="System.Reflection\DefaultMemberAttribute.cs" />\r
-    <Compile Include="System.Reflection\EventAttributes.cs" />\r
-    <Compile Include="System.Reflection\EventInfo.cs" />\r
-    <Compile Include="System.Reflection\ExceptionHandlingClause.cs" />\r
-    <Compile Include="System.Reflection\ExceptionHandlingClauseOptions.cs" />\r
-    <Compile Include="System.Reflection\FieldAttributes.cs" />\r
-    <Compile Include="System.Reflection\FieldInfo.cs" />\r
-    <Compile Include="System.Reflection\GenericParameterAttributes.cs" />\r
-    <Compile Include="System.Reflection\ICustomAttributeProvider.cs" />\r
-    <Compile Include="System.Reflection\ImageFileMachine.cs" />\r
-    <Compile Include="System.Reflection\InterfaceMapping.cs" />\r
-    <Compile Include="System.Reflection\IntrospectionExtensions.cs" />\r
-    <Compile Include="System.Reflection\InvalidFilterCriteriaException.cs" />\r
-    <Compile Include="System.Reflection\IReflect.cs" />\r
-    <Compile Include="System.Reflection\IReflectableType.cs" />\r
-    <Compile Include="System.Reflection\LocalVariableInfo.cs" />\r
-    <Compile Include="System.Reflection\ManifestResourceInfo.cs" />\r
-    <Compile Include="System.Reflection\MemberFilter.cs" />\r
-    <Compile Include="System.Reflection\MemberInfo.cs" />\r
-    <Compile Include="System.Reflection\MemberInfoSerializationHolder.cs" />\r
-    <Compile Include="System.Reflection\MemberTypes.cs" />\r
-    <Compile Include="System.Reflection\MethodAttributes.cs" />\r
-    <Compile Include="System.Reflection\MethodBase.cs" />\r
-    <Compile Include="System.Reflection\MethodBody.cs" />\r
-    <Compile Include="System.Reflection\MethodImplAttributes.cs" />\r
-    <Compile Include="System.Reflection\MethodInfo.cs" />\r
-    <Compile Include="System.Reflection\Missing.cs" />\r
-    <Compile Include="System.Reflection\Module.cs" />\r
-    <Compile Include="System.Reflection\ModuleResolveEventHandler.cs" />\r
-    <Compile Include="System.Reflection\MonoAssembly.cs" />\r
-    <Compile Include="System.Reflection\MonoEvent.cs" />\r
-    <Compile Include="System.Reflection\MonoField.cs" />\r
-    <Compile Include="System.Reflection\MonoGenericClass.cs" />\r
-    <Compile Include="System.Reflection\MonoGenericMethod.cs" />\r
-    <Compile Include="System.Reflection\MonoMethod.cs" />\r
-    <Compile Include="System.Reflection\MonoModule.cs" />\r
-    <Compile Include="System.Reflection\MonoParameterInfo.cs" />\r
-    <Compile Include="System.Reflection\MonoProperty.cs" />\r
-    <Compile Include="System.Reflection\ObfuscateAssemblyAttribute.cs" />\r
-    <Compile Include="System.Reflection\ObfuscationAttribute.cs" />\r
-    <Compile Include="System.Reflection\ParameterAttributes.cs" />\r
-    <Compile Include="System.Reflection\ParameterInfo.cs" />\r
-    <Compile Include="System.Reflection\ParameterModifier.cs" />\r
-    <Compile Include="System.Reflection\Pointer.cs" />\r
-    <Compile Include="System.Reflection\PortableExecutableKinds.cs" />\r
-    <Compile Include="System.Reflection\ProcessorArchitecture.cs" />\r
-    <Compile Include="System.Reflection\PropertyAttributes.cs" />\r
-    <Compile Include="System.Reflection\PropertyInfo.cs" />\r
-    <Compile Include="System.Reflection\ReflectionContext.cs" />\r
-    <Compile Include="System.Reflection\ReflectionTypeLoadException.cs" />\r
-    <Compile Include="System.Reflection\ResourceAttributes.cs" />\r
-    <Compile Include="System.Reflection\ResourceLocation.cs" />\r
-    <Compile Include="System.Reflection\RuntimeReflectionExtensions.cs" />\r
-    <Compile Include="System.Reflection\StrongNameKeyPair.cs" />\r
-    <Compile Include="System.Reflection\TargetException.cs" />\r
-    <Compile Include="System.Reflection\TargetInvocationException.cs" />\r
-    <Compile Include="System.Reflection\TargetParameterCountException.cs" />\r
-    <Compile Include="System.Reflection\TypeAttributes.cs" />\r
-    <Compile Include="System.Reflection\TypeDelegator.cs" />\r
-    <Compile Include="System.Reflection\TypeFilter.cs" />\r
-    <Compile Include="System.Reflection\TypeInfo.cs" />\r
-    <Compile Include="System.Resources\IResourceReader.cs" />\r
-    <Compile Include="System.Resources\IResourceWriter.cs" />\r
-    <Compile Include="System.Resources\MissingManifestResourceException.cs" />\r
-    <Compile Include="System.Resources\MissingSatelliteAssemblyException.cs" />\r
-    <Compile Include="System.Resources\NeutralResourcesLanguageAttribute.cs" />\r
-    <Compile Include="System.Resources\ResourceManager.cs" />\r
-    <Compile Include="System.Resources\ResourceReader.cs" />\r
-    <Compile Include="System.Resources\ResourceSet.cs" />\r
-    <Compile Include="System.Resources\ResourceWriter.cs" />\r
-    <Compile Include="System.Resources\RuntimeResourceSet.cs" />\r
-    <Compile Include="System.Resources\SatelliteContractVersionAttribute.cs" />\r
-    <Compile Include="System.Resources\UltimateResourceFallbackLocation.cs" />\r
-    <Compile Include="System.Resources\Win32Resources.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AccessedThroughPropertyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncStateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncTaskMethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncTaskMethodBuilder_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncVoidMethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvCdecl.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvFastcall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvStdcall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvThiscall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerFilePathAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerLineNumberAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerMemberNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilationRelaxations.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilationRelaxationsAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerGeneratedAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerGlobalScopeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerMarshalOverride.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConditionalWeakTable.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConfiguredTaskAwaitable.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConfiguredTaskAwaitable_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ContractHelper.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CustomConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DateTimeConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DecimalConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DefaultDependencyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DependencyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DiscardableAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\FixedAddressValueTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\FixedBufferAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\HasCopySemanticsAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IAsyncStateMachine.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ICriticalNotifyCompletion.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IDispatchConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IndexerNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\INotifyCompletion.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\InternalsVisibleToAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsBoxed.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsByValue.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsConst.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsCopyConstructed.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsExplicitlyDereferenced.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsImplicitlyDereferenced.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsJitIntrinsic.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsLong.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsPinned.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsSignUnspecifiedByte.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsUdtReturn.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsVolatile.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IteratorStateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IUnknownConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\LoadHint.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodCodeType.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodImplAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodImplOptions.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\NativeCppClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ReferenceAssemblyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RequiredAttributeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeCompatibilityAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeHelpers.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeWrappedException.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ScopelessEnumAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\SpecialNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StringFreezingAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\SuppressIldasmAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TaskAwaiter.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TaskAwaiter_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TypeForwardedFromAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TypeForwardedToAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\UnsafeValueTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\YieldAwaitable.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\CER.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\Consistency.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\CriticialFinalizerObject.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\PrePrepareMethodAttribute.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\ReliabilityContractAttribute.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\ExceptionDispatchInfo.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\FirstChanceExceptionEventArgs.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\HandleProcessCorruptedStateExceptionsAttribute.cs" />\r
-    <Compile Include="System.Runtime.Hosting\ActivationArguments.cs" />\r
-    <Compile Include="System.Runtime.Hosting\ApplicationActivator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\BIND_OPTS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\BINDPTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\CALLCONV.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\CONNECTDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DESCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DISPPARAMS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ELEMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\EXCEPINFO.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FILETIME.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IBindCtx.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IConnectionPoint.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IConnectionPointContainer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDLDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDLFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumConnectionPoints.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumConnections.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumString.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumVARIANT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IMPLTYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\INVOKEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IPersistFile.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IRunningObjectTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IStream.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeComp.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeInfo2.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeLib.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeLib2.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\LIBFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\PARAMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\PARAMFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATSTG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\SYSKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPELIBATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.Expando\IExpando.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\DefaultInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\DesignerNamespaceResolveEventArgs.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\EventRegistrationToken.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\EventRegistrationTokenTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\IActivationFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\InterfaceImplementedInVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\NamespaceResolveEventArgs.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\ReadOnlyArrayAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\ReturnValueNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WindowsRuntimeMarshal.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WindowsRuntimeMetadata.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WriteOnlyArrayAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Activator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Assembly.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_AssemblyBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_AssemblyName.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Attribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ConstructorBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ConstructorInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_CustomAttributeBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EnumBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EventBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EventInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Exception.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_FieldBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_FieldInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ILGenerator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_LocalBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MemberInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodBase.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodRental.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Module.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ModuleBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ParameterBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ParameterInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_PropertyBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_PropertyInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_SignatureHelper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Thread.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Type.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_TypeBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AllowReversePInvokeCallsAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ArrayWithOffset.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AssemblyRegistrationFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AutomationProxyAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BestFitMappingAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BIND_OPTS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BINDPTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BStrWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CALLCONV.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CallingConvention.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CharSet.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ClassInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ClassInterfaceType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CoClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComAliasNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComCompatibleVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComConversionLossAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComDefaultInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComEventInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\COMException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComImportAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComInterfaceType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComMemberType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComRegisterFunctionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComSourceInterfacesAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComUnregisterFunctionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComVisible.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CONNECTDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CriticalHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CurrencyWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultCharSetAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DESCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DispatchWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DispIdAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DISPPARAMS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DllImportAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ELEMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ErrorWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\EXCEPINFO.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExporterEventKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExtensibleClassFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExternalException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FieldOffsetAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FILETIME.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GCHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GCHandleType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GuidAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleRef.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomAdapter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomMarshaler.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDispatchImplAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDispatchImplType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDLDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDLFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IMPLTYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ImportedFromTypeLibAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ImporterEventKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InterfaceTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidComObjectException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidOleVariantTypeException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\INVOKEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IRegistrationServices.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibConverter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNameProvider.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNotifySink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibImporterNotifySink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LayoutKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LCIDConversionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LIBFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\Marshal.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\MarshalAsAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\MarshalDirectiveException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ObjectCreationDelegate.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\OptionalAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\OutAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PARAMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PARAMFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PreserveSigAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PrimaryInteropAssemblyAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ProgIdAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationClassContext.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationConnectionType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationServices.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RuntimeEnvironment.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayRankMismatchException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayTypeMismatchException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeBuffer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SEHException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SetWin32ContextInIDispatchAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\STATSTG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StructLayoutAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SYSKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeIdentifierAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPELIBATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibConverter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibExporterFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibFuncAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibFuncFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibImportClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibImporterFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibTypeFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVarAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVarFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIBindCtx.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIConnectionPoint.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIConnectionPointContainer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumConnectionPoints.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumConnections.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumString.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumVARIANT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIPersistFile.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIRunningObjectTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIStream.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeComp.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeLib.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnknownWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnmanagedFunctionPointerAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnmanagedType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VARDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VarEnum.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VARFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VariantWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ActivationServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ActivatorLevel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\AppDomainLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ConstructionLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ContextLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IConstructionCallMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IConstructionReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\RemoteActivationAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\RemoteActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\UrlAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\AggregateDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelObjectWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelSinkWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelDataStore.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelSinkStackEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ClientChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\CrossAppDomainChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelDataStore.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelReceiver.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelReceiverHook.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelSender.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelSinkBase.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientFormatterSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientFormatterSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientResponseChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ISecurableChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerFormatterSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerResponseChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ITransportHeaders.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerDispatchSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerDispatchSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerProcessing.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\SinkProviderData.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\TransportHeaders.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\Context.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\ContextAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\ContextProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\CrossContextChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\CrossContextDelegate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextPropertyActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeClientContextSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeDynamicSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeEnvoySink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeObjectSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeServerContextSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IDynamicMessageSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IDynamicProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\SynchronizationAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ClientSponsor.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ILease.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ISponsor.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\Lease.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseManager.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseState.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LifetimeServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ArgInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\AsyncResult.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\CADMessages.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\CallContext.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ClientContextTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionCall.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionCallDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionResponse.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\EnvoyTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ErrorMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\Header.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\HeaderHandler.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IInternalMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessageCtrl.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessageSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodCallMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\InternalMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IRemotingFormatter.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ISerializationRootObject.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\LogicalCallContext.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MessageSurrogateFilter.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCall.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCallDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCallMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodResponse.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodReturnDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodReturnMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MonoMethodMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\OneWayAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\RemotingSurrogate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\RemotingSurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ServerContextTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ServerObjectTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\StackBuilderSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\ISoapXsd.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapAnyUri.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapBase64Binary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDateTime.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDay.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDuration.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapEntities.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapEntity.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapHelper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapHexBinary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapId.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapIdref.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapIdrefs.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapLanguage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapMonth.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapMonthDay.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNcName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNegativeInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNmtoken.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNmtokens.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNonNegativeInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNonPositiveInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNormalizedString.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNotation.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapPositiveInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapQName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapTime.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapToken.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapYear.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapYearMonth.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapFieldAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapMethodAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapOption.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapParameterAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\XmlFieldOrderOption.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\ProxyAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\RealProxy.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\RemotingProxy.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\EnterpriseServicesHelper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\ITrackingHandler.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\TrackingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ActivatedClientTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ActivatedServiceTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\CustomErrorsModes.cs" />\r
-    <Compile Include="System.Runtime.Remoting\EnvoyInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IChannelInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\Identity.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IEnvoyInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\InternalRemotingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IObjectHandle.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IRemotingTypeInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ObjectHandle.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ObjRef.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingConfiguration.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingTimeoutException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ServerException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ServerIdentity.cs" />\r
-    <Compile Include="System.Runtime.Remoting\SoapServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\TypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\TypeInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownClientTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownObjectMode.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownServiceTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\BinaryCommon.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\BinaryFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\CodeGenerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\MessageFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\ObjectReader.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\ObjectWriter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterAssemblyStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterTopObjectStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterTypeStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\IFieldInfo.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalArrayTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalElementTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalMemberTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalMemberValueE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalNameSpaceE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalObjectPositionE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalObjectTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalParseStateE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalParseTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalPrimitiveTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalRM.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalSerializerTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalST.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\ISoapMessage.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\ServerFault.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\SoapFault.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\SoapMessage.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\TypeFilterLevel.cs" />\r
-    <Compile Include="System.Runtime.Serialization\Formatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\FormatterConverter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\FormatterServices.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IDeserializationCallback.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IFormatterConverter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IObjectReference.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISafeSerializationData.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISerializable.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISerializationSurrogate.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ObjectIDGenerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ObjectManager.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnDeserializedAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnDeserializingAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnSerializedAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnSerializingAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OptionalFieldAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SafeSerializationEventArgs.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationBinder.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationCallbacks.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationEntry.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationException.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationInfo.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationInfoEnumerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationObjectManager.cs" />\r
-    <Compile Include="System.Runtime.Serialization\StreamingContext.cs" />\r
-    <Compile Include="System.Runtime.Serialization\StreamingContextStates.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ComponentGuaranteesAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ComponentGuaranteesOptions.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceConsumptionAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceExposureAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceScope.cs" />\r
-    <Compile Include="System.Runtime.Versioning\TargetFrameworkAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\VersioningHelper.cs" />\r
-    <Compile Include="System.Runtime\AssemblyTargetedPatchBandAttribute.cs" />\r
-    <Compile Include="System.Runtime\GCLargeObjectHeapCompactionMode.cs" />\r
-    <Compile Include="System.Runtime\GCLatencyMode.cs" />\r
-    <Compile Include="System.Runtime\GCSettings.cs" />\r
-    <Compile Include="System.Runtime\MemoryFailPoint.cs" />\r
-    <Compile Include="System.Runtime\TargetedPatchingOptOutAttribute.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlActions.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlModification.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\CompoundAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\CompoundAceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\ControlFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\CustomAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\DirectoryObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\DirectorySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\DiscretionaryAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\InheritanceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\KnownAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\NativeObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectSecurity_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\PrivilegeNotHeldException.cs" />\r
-    <Compile Include="System.Security.AccessControl\PropagationFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\QualifiedAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\RawAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\RawSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistrySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ResourceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\SddlAccessRight.cs" />\r
-    <Compile Include="System.Security.AccessControl\SecurityInfos.cs" />\r
-    <Compile Include="System.Security.AccessControl\SystemAcl.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate20.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ContentType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyStorageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricKeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricKeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricSignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricSignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\Base64Constants.cs" />\r
-    <Compile Include="System.Security.Cryptography\CipherMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoAPITransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig.fullaot.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig_2_1.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptographicException.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptographicUnexpectedOperationExcpetion.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoStream.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoStreamMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspKeyContainerInfo.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspProviderFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\DeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\DES.cs" />\r
-    <Compile Include="System.Security.Cryptography\DESCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSA.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSACryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSAParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSASignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSASignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\FromBase64Transform.cs" />\r
-    <Compile Include="System.Security.Cryptography\HashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMAC.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACMD5.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACRIPEMD160.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA1.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA256.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA384.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA512.cs" />\r
-    <Compile Include="System.Security.Cryptography\ICryptoTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\ICspAsymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeyedHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeyNumber.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeySizes.cs" />\r
-    <Compile Include="System.Security.Cryptography\MACTripleDES.cs" />\r
-    <Compile Include="System.Security.Cryptography\MaskGenerationMethod.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\PaddingMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\PasswordDeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\PKCS1MaskGenerationMethod.cs" />\r
-    <Compile Include="System.Security.Cryptography\RandomNumberGenerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\RC2.cs" />\r
-    <Compile Include="System.Security.Cryptography\RC2CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\Rfc2898DeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\Rijndael.cs" />\r
-    <Compile Include="System.Security.Cryptography\RijndaelManaged.cs" />\r
-    <Compile Include="System.Security.Cryptography\RijndaelManagedTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\RIPEMD160.cs" />\r
-    <Compile Include="System.Security.Cryptography\RIPEMD160Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\RNGCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSA.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSACryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAOAEPKeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAOAEPKeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1KeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1KeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1SignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1SignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHAConstants.cs" />\r
-    <Compile Include="System.Security.Cryptography\SignatureDescription.cs" />\r
-    <Compile Include="System.Security.Cryptography\SymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\ToBase64Transform.cs" />\r
-    <Compile Include="System.Security.Cryptography\TripleDES.cs" />\r
-    <Compile Include="System.Security.Cryptography\TripleDESCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Permissions\CodeAccessSecurityAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\GacIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\GacIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionResource.cs" />\r
-    <Compile Include="System.Security.Permissions\IBuiltInPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageContainment.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageFilePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageFilePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStoragePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStoragePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\IUnrestrictedPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntryCollection.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntryEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionFlags.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionSetAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionState.cs" />\r
-    <Compile Include="System.Security.Permissions\PrincipalPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\PrincipalPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\PublisherIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\PublisherIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermissionFlag.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityAction.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermissionFlag.cs" />\r
-    <Compile Include="System.Security.Permissions\SiteIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\SiteIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNameIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNamePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNamePublicKeyBlob.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionClipboard.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionWindow.cs" />\r
-    <Compile Include="System.Security.Permissions\UrlIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\UrlIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ZoneIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\ZoneIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Policy\AllMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationDirectory.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationDirectoryMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationSecurityInfo.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationSecurityManager.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrust.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrustCollection.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrustEnumerator.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationVersionMatch.cs" />\r
-    <Compile Include="System.Security.Policy\CodeConnectAccess.cs" />\r
-    <Compile Include="System.Security.Policy\CodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />\r
-    <Compile Include="System.Security.Policy\Evidence.cs" />\r
-    <Compile Include="System.Security.Policy\EvidenceBase.cs" />\r
-    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\Gac.cs" />\r
-    <Compile Include="System.Security.Policy\GacMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Hash.cs" />\r
-    <Compile Include="System.Security.Policy\HashMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\IApplicationTrustManager.cs" />\r
-    <Compile Include="System.Security.Policy\IBuiltInEvidence.cs" />\r
-    <Compile Include="System.Security.Policy\IConstantMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\IIdentityPermissionFactory.cs" />\r
-    <Compile Include="System.Security.Policy\IMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\MembershipConditionHelper.cs" />\r
-    <Compile Include="System.Security.Policy\MonoTrustManager.cs" />\r
-    <Compile Include="System.Security.Policy\NetCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\PermissionRequestEvidence.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyException.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyLevel.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyStatement.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyStatementAttribute.cs" />\r
-    <Compile Include="System.Security.Policy\Publisher.cs" />\r
-    <Compile Include="System.Security.Policy\PublisherMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Site.cs" />\r
-    <Compile Include="System.Security.Policy\SiteMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\StrongName.cs" />\r
-    <Compile Include="System.Security.Policy\StrongNameMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\TrustManagerContext.cs" />\r
-    <Compile Include="System.Security.Policy\TrustManagerUIContext.cs" />\r
-    <Compile Include="System.Security.Policy\UnionCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\Url.cs" />\r
-    <Compile Include="System.Security.Policy\UrlMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Zone.cs" />\r
-    <Compile Include="System.Security.Policy\ZoneMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Principal\GenericIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\GenericPrincipal.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityNotMappedException.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityReference.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityReferenceCollection.cs" />\r
-    <Compile Include="System.Security.Principal\IIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\IPrincipal.cs" />\r
-    <Compile Include="System.Security.Principal\NTAccount.cs" />\r
-    <Compile Include="System.Security.Principal\PrincipalPolicy.cs" />\r
-    <Compile Include="System.Security.Principal\SecurityIdentifier.cs" />\r
-    <Compile Include="System.Security.Principal\TokenAccessLevels.cs" />\r
-    <Compile Include="System.Security.Principal\TokenImpersonationLevel.cs" />\r
-    <Compile Include="System.Security.Principal\WellKnownAccount.cs" />\r
-    <Compile Include="System.Security.Principal\WellKnownSidType.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsAccountType.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsBuiltInRole.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsImpersonationContext.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsPrincipal.cs" />\r
-    <Compile Include="System.Security\AllowPartiallyTrustedCallersAttribute.cs" />\r
-    <Compile Include="System.Security\CodeAccessPermission.cs" />\r
-    <Compile Include="System.Security\HostProtectionException.cs" />\r
-    <Compile Include="System.Security\HostSecurityManager.cs" />\r
-    <Compile Include="System.Security\HostSecurityManagerFlags.cs" />\r
-    <Compile Include="System.Security\IEvidenceFactory.cs" />\r
-    <Compile Include="System.Security\IPermission.cs" />\r
-    <Compile Include="System.Security\ISecurityEncodable.cs" />\r
-    <Compile Include="System.Security\ISecurityPolicyEncodable.cs" />\r
-    <Compile Include="System.Security\IStackWalk.cs" />\r
-    <Compile Include="System.Security\NamedPermissionSet.cs" />\r
-    <Compile Include="System.Security\PermissionBuilder.cs" />\r
-    <Compile Include="System.Security\PermissionSet.cs" />\r
-    <Compile Include="System.Security\PolicyLevelType.cs" />\r
-    <Compile Include="System.Security\SecureString.cs" />\r
-    <Compile Include="System.Security\SecurityContext.cs" />\r
-    <Compile Include="System.Security\SecurityContextSource.cs" />\r
-    <Compile Include="System.Security\SecurityCriticalAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityCriticalScope.cs" />\r
-    <Compile Include="System.Security\SecurityElement.cs" />\r
-    <Compile Include="System.Security\SecurityException.cs" />\r
-    <Compile Include="System.Security\SecurityFrame.cs" />\r
-    <Compile Include="System.Security\SecurityManager.cs" />\r
-    <Compile Include="System.Security\SecurityManager_mobile.cs" />\r
-    <Compile Include="System.Security\SecurityRulesAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityRuleSet.cs" />\r
-    <Compile Include="System.Security\SecuritySafeCriticalAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityState.cs" />\r
-    <Compile Include="System.Security\SecurityTransparentAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityTreatAsSafeAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityZone.cs" />\r
-    <Compile Include="System.Security\SuppressUnmanagedCodeSecurityAttribute.cs" />\r
-    <Compile Include="System.Security\UnverifiableCodeAttribute.cs" />\r
-    <Compile Include="System.Security\VerificationException.cs" />\r
-    <Compile Include="System.Security\XmlSyntaxException.cs" />\r
-    <Compile Include="System.Text\ASCIIEncoding.cs" />\r
-    <Compile Include="System.Text\CodePageEncoding.cs" />\r
-    <Compile Include="System.Text\Decoder.cs" />\r
-    <Compile Include="System.Text\DecoderExceptionFallback.cs" />\r
-    <Compile Include="System.Text\DecoderExceptionFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\DecoderFallback.cs" />\r
-    <Compile Include="System.Text\DecoderFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\DecoderFallbackException.cs" />\r
-    <Compile Include="System.Text\DecoderReplacementFallback.cs" />\r
-    <Compile Include="System.Text\DecoderReplacementFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\Encoder.cs" />\r
-    <Compile Include="System.Text\EncoderExceptionFallback.cs" />\r
-    <Compile Include="System.Text\EncoderExceptionFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\EncoderFallback.cs" />\r
-    <Compile Include="System.Text\EncoderFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\EncoderFallbackException.cs" />\r
-    <Compile Include="System.Text\EncoderReplacementFallback.cs" />\r
-    <Compile Include="System.Text\EncoderReplacementFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\Encoding.cs" />\r
-    <Compile Include="System.Text\EncodingInfo.cs" />\r
-    <Compile Include="System.Text\Latin1Encoding.cs" />\r
-    <Compile Include="System.Text\MLangCodePageEncoding.cs" />\r
-    <Compile Include="System.Text\NormalizationForm.cs" />\r
-    <Compile Include="System.Text\StringBuilder.cs" />\r
-    <Compile Include="System.Text\SurrogateEncoder.cs" />\r
-    <Compile Include="System.Text\UnicodeEncoding.cs" />\r
-    <Compile Include="System.Text\UTF32Encoding.cs" />\r
-    <Compile Include="System.Text\UTF7Encoding.cs" />\r
-    <Compile Include="System.Text\UTF8Encoding.cs" />\r
-    <Compile Include="System.Threading.Tasks\ConcurrentExclusiveSchedulerPair.cs" />\r
-    <Compile Include="System.Threading.Tasks\CyclicDeque.cs" />\r
-    <Compile Include="System.Threading.Tasks\DecoupledTask.cs" />\r
-    <Compile Include="System.Threading.Tasks\IConcurrentDeque.cs" />\r
-    <Compile Include="System.Threading.Tasks\Parallel.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelLoopResult.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelLoopState.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\PopResult.cs" />\r
-    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />\r
-    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\Task.cs" />\r
-    <Compile Include="System.Threading.Tasks\Task_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskActionInvoker.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCanceledException.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCompletionQueue.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCompletionSource.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskConstants.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskConstants_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskContinuation.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskContinuationOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCreationOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskDebuggerView.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExceptionSlot.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExtensionsImpl.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskFactory.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskFactory_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskSchedulerException.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskStatus.cs" />\r
-    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\AbandonedMutexException.cs" />\r
-    <Compile Include="System.Threading\ApartmentState.cs" />\r
-    <Compile Include="System.Threading\AsyncFlowControl.cs" />\r
-    <Compile Include="System.Threading\AtomicBoolean.cs" />\r
-    <Compile Include="System.Threading\AutoResetEvent.cs" />\r
-    <Compile Include="System.Threading\CancellationToken.cs" />\r
-    <Compile Include="System.Threading\CancellationTokenRegistration.cs" />\r
-    <Compile Include="System.Threading\CancellationTokenSource.cs" />\r
-    <Compile Include="System.Threading\CompressedStack.cs" />\r
-    <Compile Include="System.Threading\ContextCallback.cs" />\r
-    <Compile Include="System.Threading\CountdownEvent.cs" />\r
-    <Compile Include="System.Threading\EventResetMode.cs" />\r
-    <Compile Include="System.Threading\EventWaitHandle.cs" />\r
-    <Compile Include="System.Threading\ExecutionContext.cs" />\r
-    <Compile Include="System.Threading\HostExecutionContext.cs" />\r
-    <Compile Include="System.Threading\HostExecutionContextManager.cs" />\r
-    <Compile Include="System.Threading\Interlocked.cs" />\r
-    <Compile Include="System.Threading\IOCompletionCallback.cs" />\r
-    <Compile Include="System.Threading\LazyInitializer.cs" />\r
-    <Compile Include="System.Threading\LazyThreadSafetyMode.cs" />\r
-    <Compile Include="System.Threading\LockCookie.cs" />\r
-    <Compile Include="System.Threading\LockQueue.cs" />\r
-    <Compile Include="System.Threading\LockRecursionException.cs" />\r
-    <Compile Include="System.Threading\ManualResetEvent.cs" />\r
-    <Compile Include="System.Threading\ManualResetEventSlim.cs" />\r
-    <Compile Include="System.Threading\Monitor.cs" />\r
-    <Compile Include="System.Threading\Mutex.cs" />\r
-    <Compile Include="System.Threading\NamedDataSlot.cs" />\r
-    <Compile Include="System.Threading\NativeEventCalls.cs" />\r
-    <Compile Include="System.Threading\NativeOverlapped.cs" />\r
-    <Compile Include="System.Threading\Overlapped.cs" />\r
-    <Compile Include="System.Threading\ParameterizedThreadStart.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLock.cs" />\r
-    <Compile Include="System.Threading\RegisteredWaitHandle.cs" />\r
-    <Compile Include="System.Threading\SemaphoreSlim.cs" />\r
-    <Compile Include="System.Threading\SendOrPostCallback.cs" />\r
-    <Compile Include="System.Threading\SpinLock.cs" />\r
-    <Compile Include="System.Threading\SpinWait.cs" />\r
-    <Compile Include="System.Threading\SynchronizationContext.cs" />\r
-    <Compile Include="System.Threading\SynchronizationLockException.cs" />\r
-    <Compile Include="System.Threading\Thread.cs" />\r
-    <Compile Include="System.Threading\ThreadAbortException.cs" />\r
-    <Compile Include="System.Threading\ThreadInterruptedException.cs" />\r
-    <Compile Include="System.Threading\ThreadLocal.cs" />\r
-    <Compile Include="System.Threading\ThreadPool.cs" />\r
-    <Compile Include="System.Threading\ThreadPriority.cs" />\r
-    <Compile Include="System.Threading\ThreadStart.cs" />\r
-    <Compile Include="System.Threading\ThreadStartException.cs" />\r
-    <Compile Include="System.Threading\ThreadState.cs" />\r
-    <Compile Include="System.Threading\ThreadStateException.cs" />\r
-    <Compile Include="System.Threading\Timeout.cs" />\r
-    <Compile Include="System.Threading\Timer.cs" />\r
-    <Compile Include="System.Threading\TimerCallback.cs" />\r
-    <Compile Include="System.Threading\Volatile.cs" />\r
-    <Compile Include="System.Threading\WaitCallback.cs" />\r
-    <Compile Include="System.Threading\WaitHandle.cs" />\r
-    <Compile Include="System.Threading\WaitHandleCannotBeOpenedException.cs" />\r
-    <Compile Include="System.Threading\WaitOrTimerCallback.cs" />\r
-    <Compile Include="System.Threading\Watch.cs" />\r
-    <Compile Include="System\__ComObject.cs" />\r
-    <Compile Include="System\_AppDomain.cs" />\r
-    <Compile Include="System\AccessViolationException.cs" />\r
-    <Compile Include="System\Action.cs" />\r
-    <Compile Include="System\ActivationContext.cs" />\r
-    <Compile Include="System\Activator.cs" />\r
-    <Compile Include="System\AggregateException.cs" />\r
-    <Compile Include="System\AndroidPlatform.cs" />\r
-    <Compile Include="System\AppDomain.cs" />\r
-    <Compile Include="System\AppDomainInitializer.cs" />\r
-    <Compile Include="System\AppDomainManager.cs" />\r
-    <Compile Include="System\AppDomainSetup.cs" />\r
-    <Compile Include="System\AppDomainUnloadedException.cs" />\r
-    <Compile Include="System\ApplicationException.cs" />\r
-    <Compile Include="System\ApplicationId.cs" />\r
-    <Compile Include="System\ApplicationIdentity.cs" />\r
-    <Compile Include="System\ArgIterator.cs" />\r
-    <Compile Include="System\ArgumentException.cs" />\r
-    <Compile Include="System\ArgumentNullException.cs" />\r
-    <Compile Include="System\ArgumentOutOfRangeException.cs" />\r
-    <Compile Include="System\ArithmeticException.cs" />\r
-    <Compile Include="System\Array.cs" />\r
-    <Compile Include="System\ArraySegment.cs" />\r
-    <Compile Include="System\ArrayTypeMismatchException.cs" />\r
-    <Compile Include="System\AssemblyLoadEventArgs.cs" />\r
-    <Compile Include="System\AssemblyLoadEventHandler.cs" />\r
-    <Compile Include="System\AsyncCallback.cs" />\r
-    <Compile Include="System\Attribute.cs" />\r
-    <Compile Include="System\AttributeTargets.cs" />\r
-    <Compile Include="System\AttributeUsageAttribute.cs" />\r
-    <Compile Include="System\BadImageFormatException.cs" />\r
-    <Compile Include="System\Base64FormattingOptions.cs" />\r
-    <Compile Include="System\BitConverter.cs" />\r
-    <Compile Include="System\Boolean.cs" />\r
-    <Compile Include="System\Buffer.cs" />\r
-    <Compile Include="System\Byte.cs" />\r
-    <Compile Include="System\CannotUnloadAppDomainException.cs" />\r
-    <Compile Include="System\Char.cs" />\r
-    <Compile Include="System\CharEnumerator.cs" />\r
-    <Compile Include="System\CLSCompliantAttribute.cs" />\r
-    <Compile Include="System\Comparison.cs" />\r
-    <Compile Include="System\Console.cs" />\r
-    <Compile Include="System\Console.iOS.cs" />\r
-    <Compile Include="System\ConsoleCancelEventArgs.cs" />\r
-    <Compile Include="System\ConsoleCancelEventHandler.cs" />\r
-    <Compile Include="System\ConsoleColor.cs" />\r
-    <Compile Include="System\ConsoleDriver.cs" />\r
-    <Compile Include="System\ConsoleKey.cs" />\r
-    <Compile Include="System\ConsoleKeyInfo.cs" />\r
-    <Compile Include="System\ConsoleModifiers.cs" />\r
-    <Compile Include="System\ConsoleSpecialKey.cs" />\r
-    <Compile Include="System\ContextBoundObject.cs" />\r
-    <Compile Include="System\ContextMarshalException.cs" />\r
-    <Compile Include="System\ContextStaticAttribute.cs" />\r
-    <Compile Include="System\ControlCharacters.cs" />\r
-    <Compile Include="System\Convert.cs" />\r
-    <Compile Include="System\Converter.cs" />\r
-    <Compile Include="System\CrossAppDomainDelegate.cs" />\r
-    <Compile Include="System\CStreamReader.cs" />\r
-    <Compile Include="System\CStreamWriter.cs" />\r
-    <Compile Include="System\DataMisalignedException.cs" />\r
-    <Compile Include="System\DateTime.cs" />\r
-    <Compile Include="System\DateTimeKind.cs" />\r
-    <Compile Include="System\DateTimeOffset.cs" />\r
-    <Compile Include="System\DateTimeUtils.cs" />\r
-    <Compile Include="System\DayOfWeek.cs" />\r
-    <Compile Include="System\DBNull.cs" />\r
-    <Compile Include="System\Decimal.cs" />\r
-    <Compile Include="System\Delegate.cs" />\r
-    <Compile Include="System\DelegateSerializationHolder.cs" />\r
-    <Compile Include="System\DivideByZeroException.cs" />\r
-    <Compile Include="System\DllNotFoundException.cs" />\r
-    <Compile Include="System\DomainManagerInitializationFlags.cs" />\r
-    <Compile Include="System\Double.cs" />\r
-    <Compile Include="System\DuplicateWaitObjectException.cs" />\r
-    <Compile Include="System\EmptyArray.cs" />\r
-    <Compile Include="System\EntryPointNotFoundException.cs" />\r
-    <Compile Include="System\Enum.cs" />\r
-    <Compile Include="System\Environment.cs" />\r
-    <Compile Include="System\EnvironmentVariableTarget.cs" />\r
-    <Compile Include="System\EventArgs.cs" />\r
-    <Compile Include="System\EventHandler.cs" />\r
-    <Compile Include="System\Exception.cs" />\r
-    <Compile Include="System\ExecutionEngineException.cs" />\r
-    <Compile Include="System\FieldAccessException.cs" />\r
-    <Compile Include="System\FlagsAttribute.cs" />\r
-    <Compile Include="System\FormatException.cs" />\r
-    <Compile Include="System\Funcs.cs" />\r
-    <Compile Include="System\GC.cs" />\r
-    <Compile Include="System\GCCollectionMode.cs" />\r
-    <Compile Include="System\GCNotificationStatus.cs" />\r
-    <Compile Include="System\Guid.cs" />\r
-    <Compile Include="System\IAppDomainSetup.cs" />\r
-    <Compile Include="System\IAsyncResult.cs" />\r
-    <Compile Include="System\ICloneable.cs" />\r
-    <Compile Include="System\IComparable.cs" />\r
-    <Compile Include="System\IConsoleDriver.cs" />\r
-    <Compile Include="System\IConvertible.cs" />\r
-    <Compile Include="System\ICustomFormatter.cs" />\r
-    <Compile Include="System\IDisposable.cs" />\r
-    <Compile Include="System\IEquatable.cs" />\r
-    <Compile Include="System\IFormatProvider.cs" />\r
-    <Compile Include="System\IFormattable.cs" />\r
-    <Compile Include="System\IndexOutOfRangeException.cs" />\r
-    <Compile Include="System\InsufficientExecutionStackException.cs" />\r
-    <Compile Include="System\InsufficientMemoryException.cs" />\r
-    <Compile Include="System\Int16.cs" />\r
-    <Compile Include="System\Int32.cs" />\r
-    <Compile Include="System\Int64.cs" />\r
-    <Compile Include="System\IntPtr.cs" />\r
-    <Compile Include="System\InvalidCastException.cs" />\r
-    <Compile Include="System\InvalidOperationException.cs" />\r
-    <Compile Include="System\InvalidProgramException.cs" />\r
-    <Compile Include="System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="System\IObservable.cs" />\r
-    <Compile Include="System\IObserver.cs" />\r
-    <Compile Include="System\IProgress.cs" />\r
-    <Compile Include="System\IServiceProvider.cs" />\r
-    <Compile Include="System\KnownTerminals.cs" />\r
-    <Compile Include="System\Lazy.cs" />\r
-    <Compile Include="System\LoaderOptimization.cs" />\r
-    <Compile Include="System\LoaderOptimizationAttribute.cs" />\r
-    <Compile Include="System\LocalDataStoreSlot.cs" />\r
-    <Compile Include="System\MarshalByRefObject.cs" />\r
-    <Compile Include="System\Math.cs" />\r
-    <Compile Include="System\MemberAccessException.cs" />\r
-    <Compile Include="System\MethodAccessException.cs" />\r
-    <Compile Include="System\MidpointRounding.cs" />\r
-    <Compile Include="System\MissingFieldException.cs" />\r
-    <Compile Include="System\MissingMemberException.cs" />\r
-    <Compile Include="System\MissingMethodException.cs" />\r
-    <Compile Include="System\ModuleHandle.cs" />\r
-    <Compile Include="System\MonoAsyncCall.cs" />\r
-    <Compile Include="System\MonoCQItem.cs" />\r
-    <Compile Include="System\MonoCustomAttrs.cs" />\r
-    <Compile Include="System\MonoListItem.cs" />\r
-    <Compile Include="System\MonoTouchAOTHelper.cs" />\r
-    <Compile Include="System\MonoType.cs" />\r
-    <Compile Include="System\MTAThreadAttribute.cs" />\r
-    <Compile Include="System\MulticastDelegate.cs" />\r
-    <Compile Include="System\MulticastNotSupportedException.cs" />\r
-    <Compile Include="System\NonSerializedAttribute.cs" />\r
-    <Compile Include="System\NotFiniteNumberException.cs" />\r
-    <Compile Include="System\NotImplementedException.cs" />\r
-    <Compile Include="System\NotSupportedException.cs" />\r
-    <Compile Include="System\Nullable.cs" />\r
-    <Compile Include="System\NullConsoleDriver.cs" />\r
-    <Compile Include="System\NullReferenceException.cs" />\r
-    <Compile Include="System\NumberFormatter.cs" />\r
-    <Compile Include="System\Object.cs" />\r
-    <Compile Include="System\ObjectDisposedException.cs" />\r
-    <Compile Include="System\ObsoleteAttribute.cs" />\r
-    <Compile Include="System\OperatingSystem.cs" />\r
-    <Compile Include="System\OperationCanceledException.cs" />\r
-    <Compile Include="System\OutOfMemoryException.cs" />\r
-    <Compile Include="System\OverflowException.cs" />\r
-    <Compile Include="System\ParamArrayAttribute.cs" />\r
-    <Compile Include="System\PlatformID.cs" />\r
-    <Compile Include="System\PlatformNotSupportedException.cs" />\r
-    <Compile Include="System\Predicate.cs" />\r
-    <Compile Include="System\Progress.cs" />\r
-    <Compile Include="System\Random.cs" />\r
-    <Compile Include="System\RankException.cs" />\r
-    <Compile Include="System\ResolveEventArgs.cs" />\r
-    <Compile Include="System\ResolveEventHandler.cs" />\r
-    <Compile Include="System\RuntimeArgumentHandle.cs" />\r
-    <Compile Include="System\RuntimeFieldHandle.cs" />\r
-    <Compile Include="System\RuntimeMethodHandle.cs" />\r
-    <Compile Include="System\RuntimeTypeHandle.cs" />\r
-    <Compile Include="System\SByte.cs" />\r
-    <Compile Include="System\SerializableAttribute.cs" />\r
-    <Compile Include="System\Single.cs" />\r
-    <Compile Include="System\StackOverflowException.cs" />\r
-    <Compile Include="System\STAThreadAttribute.cs" />\r
-    <Compile Include="System\String.cs" />\r
-    <Compile Include="System\StringComparer.cs" />\r
-    <Compile Include="System\StringComparison.cs" />\r
-    <Compile Include="System\StringSplitOptions.cs" />\r
-    <Compile Include="System\SystemException.cs" />\r
-    <Compile Include="System\TermInfoBooleans.cs" />\r
-    <Compile Include="System\TermInfoDriver.cs" />\r
-    <Compile Include="System\TermInfoNumbers.cs" />\r
-    <Compile Include="System\TermInfoReader.cs" />\r
-    <Compile Include="System\TermInfoStrings.cs" />\r
-    <Compile Include="System\ThreadStaticAttribute.cs" />\r
-    <Compile Include="System\TimeoutException.cs" />\r
-    <Compile Include="System\TimeSpan.cs" />\r
-    <Compile Include="System\TimeZone.cs" />\r
-    <Compile Include="System\TimeZoneNotFoundException.cs" />\r
-    <Compile Include="System\Tuple.cs" />\r
-    <Compile Include="System\Tuples.cs" />\r
-    <Compile Include="System\Type.cs" />\r
-    <Compile Include="System\TypeAccessException.cs" />\r
-    <Compile Include="System\TypeCode.cs" />\r
-    <Compile Include="System\TypedReference.cs" />\r
-    <Compile Include="System\TypeInitializationException.cs" />\r
-    <Compile Include="System\TypeLoadException.cs" />\r
-    <Compile Include="System\TypeIdentifier.cs" />\r
-    <Compile Include="System\TypeSpec.cs" />\r
-    <Compile Include="System\TypeUnloadedException.cs" />\r
-    <Compile Include="System\UInt16.cs" />\r
-    <Compile Include="System\UInt32.cs" />\r
-    <Compile Include="System\UInt64.cs" />\r
-    <Compile Include="System\UIntPtr.cs" />\r
-    <Compile Include="System\UnauthorizedAccessException.cs" />\r
-    <Compile Include="System\UnhandledExceptionEventArgs.cs" />\r
-    <Compile Include="System\UnhandledExceptionEventHandler.cs" />\r
-    <Compile Include="System\UnitySerializationHolder.cs" />\r
-    <Compile Include="System\ValueType.cs" />\r
-    <Compile Include="System\Variant.cs" />\r
-    <Compile Include="System\Version.cs" />\r
-    <Compile Include="System\Void.cs" />\r
-    <Compile Include="System\WeakReference.cs" />\r
-    <Compile Include="System\WeakReference_T.cs" />\r
-    <Compile Include="System\WindowsConsoleDriver.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/collation.core.bin">\r
-      <LogicalName>collation.core.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.tailoring.bin">\r
-      <LogicalName>collation.tailoring.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkCHS.bin">\r
-      <LogicalName>collation.cjkCHS.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkCHT.bin">\r
-      <LogicalName>collation.cjkCHT.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkJA.bin">\r
-      <LogicalName>collation.cjkJA.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkKO.bin">\r
-      <LogicalName>collation.cjkKO.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkKOlv2.bin">\r
-      <LogicalName>collation.cjkKOlv2.bin</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
diff --git a/mcs/class/corlib/corlib-build.csproj b/mcs/class/corlib/corlib-build.csproj
deleted file mode 100644 (file)
index a83ee48..0000000
+++ /dev/null
@@ -1,1759 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{2BDF80D1-6F06-4908-B351-835292B7A9B9}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <OutputPath>./../../class/lib/build</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>mscorlib</AssemblyName>\r
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;INSIDE_CORLIB;LIBC;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>612,618,1699</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>INSIDE_CORLIB;LIBC;NET_1_1;NET_2_0;NET_3_0;NET_3_5;NET_4_0</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\build\common\Consts.cs" />\r
-    <Compile Include="..\..\build\common\Locale.cs" />\r
-    <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\NextPrimeFinder.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\PrimeGeneratorBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime.Generator\SequentialSearchPrimeGeneratorBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime\ConfidenceFactor.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math.Prime\PrimalityTests.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Math\BigInteger.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Authenticode\AuthenticodeBase.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Authenticode\AuthenticodeDeformatter.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\ARC4Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\CryptoConvert.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\CryptoTools.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\KeyPairPersistence.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD2.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD2Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD4.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\MD4Managed.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\PKCS1.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\PKCS8.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\RC4.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\RSAManaged.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.Cryptography\SymmetricTransform.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\BasicConstraintsExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\KeyUsageExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509.Extensions\SubjectKeyIdentifierExtension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\PKCS12.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X501Name.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Certificate.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509CertificateCollection.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Chain.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509ChainStatusFlags.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509CRL.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Extension.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Extensions.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Store.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509StoreManager.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X509Stores.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security.X509\X520Attributes.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\ASN1.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\ASN1Convert.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\BitConverterLE.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\PKCS7.cs" />\r
-    <Compile Include="..\Mono.Security\Mono.Security\StrongName.cs" />\r
-    <Compile Include="..\System.Core\System.Security.Cryptography\Aes.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.AdjustmentRule.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.Android.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.MonoTouch.cs" />\r
-    <Compile Include="..\System.Core\System\TimeZoneInfo.TransitionTime.cs" />\r
-    <Compile Include="..\System\System.Threading\SemaphoreFullException.cs" />\r
-    <Compile Include="Assembly\AssemblyInfo.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\CriticalHandleMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\CriticalHandleZeroOrMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeFileHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeHandleMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeHandleZeroOrMinusOneIsInvalid.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeRegistryHandle.cs" />\r
-    <Compile Include="Microsoft.Win32.SafeHandles\SafeWaitHandle.cs" />\r
-    <Compile Include="Microsoft.Win32\IRegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Registry.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryHive.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryKey.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryKeyPermissionCheck.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryOptions.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryValueKind.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryValueOptions.cs" />\r
-    <Compile Include="Microsoft.Win32\RegistryView.cs" />\r
-    <Compile Include="Microsoft.Win32\UnixRegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Win32RegistryApi.cs" />\r
-    <Compile Include="Microsoft.Win32\Win32ResultCode.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\CodePointIndexer.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\MSCompatUnicodeTable.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\MSCompatUnicodeTableUtil.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\Normalization.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\NormalizationTableUtil.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SimpleCollator.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SortKey.cs" />\r
-    <Compile Include="Mono.Globalization.Unicode\SortKeyBuffer.cs" />\r
-    <Compile Include="Mono.Interop\ComInteropProxy.cs" />\r
-    <Compile Include="Mono.Interop\IDispatch.cs" />\r
-    <Compile Include="Mono.Interop\IUnknown.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\DSAManaged.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\HMACAlgorithm.cs" />\r
-    <Compile Include="Mono.Security.Cryptography\MACAlgorithm.cs" />\r
-    <Compile Include="Mono.Security\StrongNameManager.cs" />\r
-    <Compile Include="Mono.Security\Uri.cs" />\r
-    <Compile Include="Mono.Xml\SecurityParser.cs" />\r
-    <Compile Include="Mono.Xml\SmallXmlParser.cs" />\r
-    <Compile Include="Mono\DataConverter.cs" />\r
-    <Compile Include="Mono\Runtime.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\EnumerablePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\ListPartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent.Partitioners\UserRangePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentDictionary.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentOrderedList.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentQueue.cs" />\r
-    <Compile Include="System.Collections.Concurrent\ConcurrentStack.cs" />\r
-    <Compile Include="System.Collections.Concurrent\EnumerablePartitionerOptions.cs" />\r
-    <Compile Include="System.Collections.Concurrent\IProducerConsumerCollection.cs" />\r
-    <Compile Include="System.Collections.Concurrent\OrderablePartitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\Partitioner.cs" />\r
-    <Compile Include="System.Collections.Concurrent\SplitOrderedList.cs" />\r
-    <Compile Include="System.Collections.Generic\CollectionDebuggerView.cs" />\r
-    <Compile Include="System.Collections.Generic\Comparer.cs" />\r
-    <Compile Include="System.Collections.Generic\Dictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\EqualityComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\ICollection.cs" />\r
-    <Compile Include="System.Collections.Generic\IComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\IDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\IEnumerable.cs" />\r
-    <Compile Include="System.Collections.Generic\IEnumerator.cs" />\r
-    <Compile Include="System.Collections.Generic\IEqualityComparer.cs" />\r
-    <Compile Include="System.Collections.Generic\IList.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyCollection.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyDictionary.cs" />\r
-    <Compile Include="System.Collections.Generic\IReadOnlyList.cs" />\r
-    <Compile Include="System.Collections.Generic\KeyNotFoundException.cs" />\r
-    <Compile Include="System.Collections.Generic\KeyValuePair.cs" />\r
-    <Compile Include="System.Collections.Generic\List.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\Collection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\KeyedCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyCollection.cs" />\r
-    <Compile Include="System.Collections.ObjectModel\ReadOnlyDictionary.cs" />\r
-    <Compile Include="System.Collections\ArrayList.cs" />\r
-    <Compile Include="System.Collections\BitArray.cs" />\r
-    <Compile Include="System.Collections\CaseInsensitiveComparer.cs" />\r
-    <Compile Include="System.Collections\CaseInsensitiveHashCodeProvider.cs" />\r
-    <Compile Include="System.Collections\CollectionBase.cs" />\r
-    <Compile Include="System.Collections\CollectionDebuggerView.cs" />\r
-    <Compile Include="System.Collections\Comparer.cs" />\r
-    <Compile Include="System.Collections\DictionaryBase.cs" />\r
-    <Compile Include="System.Collections\DictionaryEntry.cs" />\r
-    <Compile Include="System.Collections\HashPrimeNumbers.cs" />\r
-    <Compile Include="System.Collections\Hashtable.cs" />\r
-    <Compile Include="System.Collections\ICollection.cs" />\r
-    <Compile Include="System.Collections\IComparer.cs" />\r
-    <Compile Include="System.Collections\IDictionary.cs" />\r
-    <Compile Include="System.Collections\IDictionaryEnumerator.cs" />\r
-    <Compile Include="System.Collections\IEnumerable.cs" />\r
-    <Compile Include="System.Collections\IEnumerator.cs" />\r
-    <Compile Include="System.Collections\IEqualityComparer.cs" />\r
-    <Compile Include="System.Collections\IHashCodeProvider.cs" />\r
-    <Compile Include="System.Collections\IList.cs" />\r
-    <Compile Include="System.Collections\IStructuralComparable.cs" />\r
-    <Compile Include="System.Collections\IStructuralEquatable.cs" />\r
-    <Compile Include="System.Collections\Queue.cs" />\r
-    <Compile Include="System.Collections\ReadOnlyCollectionBase.cs" />\r
-    <Compile Include="System.Collections\SortedList.cs" />\r
-    <Compile Include="System.Collections\Stack.cs" />\r
-    <Compile Include="System.Collections\StructuralComparisons.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyHash.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyHashAlgorithm.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\AssemblyVersionCompatibility.cs" />\r
-    <Compile Include="System.Configuration.Assemblies\ProcessorID.cs" />\r
-    <Compile Include="System.Deployment.Internal\InternalActivationContextHelper.cs" />\r
-    <Compile Include="System.Deployment.Internal\InternalApplicationIdentityHelper.cs" />\r
-    <Compile Include="System.Diagnostics.CodeAnalysis\SuppressMessageAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts.Internal\ContractHelper.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\Contract.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractAbbreviatorAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractArgumentValidatorAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractClassAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractClassForAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractException.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractFailedEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractFailureKind.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractInvariantMethodAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractOptionAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractPublicPropertyNameAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractReferenceAssemblyAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractRuntimeIgnoredAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractShouldAssertException.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\ContractVerificationAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Contracts\PureAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolBinder.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolBinder1.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolDocument.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolDocumentWriter.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolMethod.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolNamespace.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolReader.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolScope.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolVariable.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\ISymbolWriter.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymAddressKind.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymbolToken.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymDocumentType.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymLanguageType.cs" />\r
-    <Compile Include="System.Diagnostics.SymbolStore\SymLanguageVendor.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventCommand.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventCommandEventArgs.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventKeywords.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventLevel.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventSource.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\EventSourceAttribute.cs" />\r
-    <Compile Include="System.Diagnostics.Tracing\NonEventAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\ConditionalAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggableAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\Debugger.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerBrowsableAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerBrowsableState.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerDisplayAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerHiddenAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerNonUserCodeAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerStepperBoundaryAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerStepThroughAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerTypeProxyAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\DebuggerVisualizerAttribute.cs" />\r
-    <Compile Include="System.Diagnostics\StackFrame.cs" />\r
-    <Compile Include="System.Diagnostics\StackTrace.cs" />\r
-    <Compile Include="System.Globalization\Calendar.cs" />\r
-    <Compile Include="System.Globalization\CalendarAlgorithmType.cs" />\r
-    <Compile Include="System.Globalization\CalendarWeekRule.cs" />\r
-    <Compile Include="System.Globalization\CalendricalCalculations.cs" />\r
-    <Compile Include="System.Globalization\CharUnicodeInfo.cs" />\r
-    <Compile Include="System.Globalization\ChineseLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\CodePageDataItem.cs" />\r
-    <Compile Include="System.Globalization\CompareInfo.cs" />\r
-    <Compile Include="System.Globalization\CompareOptions.cs" />\r
-    <Compile Include="System.Globalization\CultureInfo.cs" />\r
-    <Compile Include="System.Globalization\CultureNotFoundException.cs" />\r
-    <Compile Include="System.Globalization\CultureTypes.cs" />\r
-    <Compile Include="System.Globalization\DateTimeFormatInfo.cs" />\r
-    <Compile Include="System.Globalization\DateTimeStyles.cs" />\r
-    <Compile Include="System.Globalization\DaylightTime.cs" />\r
-    <Compile Include="System.Globalization\DigitShapes.cs" />\r
-    <Compile Include="System.Globalization\EastAsianLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\GregorianCalendar.cs" />\r
-    <Compile Include="System.Globalization\GregorianCalendarTypes.cs" />\r
-    <Compile Include="System.Globalization\HebrewCalendar.cs" />\r
-    <Compile Include="System.Globalization\HijriCalendar.cs" />\r
-    <Compile Include="System.Globalization\IdnMapping.cs" />\r
-    <Compile Include="System.Globalization\JapaneseCalendar.cs" />\r
-    <Compile Include="System.Globalization\JapaneseLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\JulianCalendar.cs" />\r
-    <Compile Include="System.Globalization\KoreanCalendar.cs" />\r
-    <Compile Include="System.Globalization\KoreanLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\NumberFormatInfo.cs" />\r
-    <Compile Include="System.Globalization\NumberStyles.cs" />\r
-    <Compile Include="System.Globalization\PersianCalendar.cs" />\r
-    <Compile Include="System.Globalization\RegionInfo.cs" />\r
-    <Compile Include="System.Globalization\RegionInfo.MonoTouch.cs" />\r
-    <Compile Include="System.Globalization\SortVersion.cs" />\r
-    <Compile Include="System.Globalization\StringInfo.cs" />\r
-    <Compile Include="System.Globalization\TaiwanCalendar.cs" />\r
-    <Compile Include="System.Globalization\TaiwanLunisolarCalendar.cs" />\r
-    <Compile Include="System.Globalization\TextElementEnumerator.cs" />\r
-    <Compile Include="System.Globalization\TextInfo.cs" />\r
-    <Compile Include="System.Globalization\ThaiBuddhistCalendar.cs" />\r
-    <Compile Include="System.Globalization\TimeSpanStyles.cs" />\r
-    <Compile Include="System.Globalization\UmAlQuraCalendar.cs" />\r
-    <Compile Include="System.Globalization\UnicodeCategory.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\INormalizeForIsolatedStorage.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorage.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageException.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFile.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFileEnumerator.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageFileStream.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageScope.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageSecurityOptions.cs" />\r
-    <Compile Include="System.IO.IsolatedStorage\IsolatedStorageSecurityState.cs" />\r
-    <Compile Include="System.IO\BinaryReader.cs" />\r
-    <Compile Include="System.IO\BinaryWriter.cs" />\r
-    <Compile Include="System.IO\BufferedStream.cs" />\r
-    <Compile Include="System.IO\Directory.cs" />\r
-    <Compile Include="System.IO\DirectoryInfo.cs" />\r
-    <Compile Include="System.IO\DirectoryNotFoundException.cs" />\r
-    <Compile Include="System.IO\DriveInfo.cs" />\r
-    <Compile Include="System.IO\DriveNotFoundException.cs" />\r
-    <Compile Include="System.IO\DriveType.cs" />\r
-    <Compile Include="System.IO\EndOfStreamException.cs" />\r
-    <Compile Include="System.IO\File.cs" />\r
-    <Compile Include="System.IO\FileAccess.cs" />\r
-    <Compile Include="System.IO\FileAttributes.cs" />\r
-    <Compile Include="System.IO\FileInfo.cs" />\r
-    <Compile Include="System.IO\FileLoadException.cs" />\r
-    <Compile Include="System.IO\FileMode.cs" />\r
-    <Compile Include="System.IO\FileNotFoundException.cs" />\r
-    <Compile Include="System.IO\FileOptions.cs" />\r
-    <Compile Include="System.IO\FileShare.cs" />\r
-    <Compile Include="System.IO\FileStream.cs" />\r
-    <Compile Include="System.IO\FileStreamAsyncResult.cs" />\r
-    <Compile Include="System.IO\FileSystemInfo.cs" />\r
-    <Compile Include="System.IO\IOException.cs" />\r
-    <Compile Include="System.IO\LogcatTextWriter.cs" />\r
-    <Compile Include="System.IO\MemoryStream.cs" />\r
-    <Compile Include="System.IO\MonoFileType.cs" />\r
-    <Compile Include="System.IO\MonoIO.cs" />\r
-    <Compile Include="System.IO\MonoIOError.cs" />\r
-    <Compile Include="System.IO\MonoIOStat.cs" />\r
-    <Compile Include="System.IO\Path.cs" />\r
-    <Compile Include="System.IO\PathTooLongException.cs" />\r
-    <Compile Include="System.IO\SearchOption.cs" />\r
-    <Compile Include="System.IO\SearchPattern.cs" />\r
-    <Compile Include="System.IO\SeekOrigin.cs" />\r
-    <Compile Include="System.IO\Stream.cs" />\r
-    <Compile Include="System.IO\StreamReader.cs" />\r
-    <Compile Include="System.IO\StreamWriter.cs" />\r
-    <Compile Include="System.IO\StringReader.cs" />\r
-    <Compile Include="System.IO\StringWriter.cs" />\r
-    <Compile Include="System.IO\TextReader.cs" />\r
-    <Compile Include="System.IO\TextWriter.cs" />\r
-    <Compile Include="System.IO\UnexceptionalStreamReader.cs" />\r
-    <Compile Include="System.IO\UnexceptionalStreamWriter.cs" />\r
-    <Compile Include="System.IO\UnmanagedMemoryAccessor.cs" />\r
-    <Compile Include="System.IO\UnmanagedMemoryStream.cs" />\r
-    <Compile Include="System.Reflection.Emit\AssemblyBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\AssemblyBuilderAccess.cs" />\r
-    <Compile Include="System.Reflection.Emit\ConstructorBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ConstructorOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\CustomAttributeBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\DerivedTypes.cs" />\r
-    <Compile Include="System.Reflection.Emit\DynamicILInfo.cs" />\r
-    <Compile Include="System.Reflection.Emit\DynamicMethod.cs" />\r
-    <Compile Include="System.Reflection.Emit\EnumBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\EventToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\FieldToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\FlowControl.cs" />\r
-    <Compile Include="System.Reflection.Emit\GenericTypeParameterBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ILGenerator.cs" />\r
-    <Compile Include="System.Reflection.Emit\Label.cs" />\r
-    <Compile Include="System.Reflection.Emit\LocalBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodRental.cs" />\r
-    <Compile Include="System.Reflection.Emit\MethodToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\ModuleBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\MonoArrayMethod.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCode.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodeNames.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodes.cs" />\r
-    <Compile Include="System.Reflection.Emit\OpCodeType.cs" />\r
-    <Compile Include="System.Reflection.Emit\OperandType.cs" />\r
-    <Compile Include="System.Reflection.Emit\PackingSize.cs" />\r
-    <Compile Include="System.Reflection.Emit\ParameterBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\ParameterToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\PEFileKinds.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyOnTypeBuilderInst.cs" />\r
-    <Compile Include="System.Reflection.Emit\PropertyToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\SignatureHelper.cs" />\r
-    <Compile Include="System.Reflection.Emit\SignatureToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\StackBehaviour.cs" />\r
-    <Compile Include="System.Reflection.Emit\StringToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\TypeBuilder.cs" />\r
-    <Compile Include="System.Reflection.Emit\TypeToken.cs" />\r
-    <Compile Include="System.Reflection.Emit\UnmanagedMarshal.cs" />\r
-    <Compile Include="System.Reflection\AmbiguousMatchException.cs" />\r
-    <Compile Include="System.Reflection\Assembly.cs" />\r
-    <Compile Include="System.Reflection\AssemblyAlgorithmIdAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCompanyAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyConfigurationAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyContentType.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCopyrightAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyCultureAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDefaultAliasAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDelaySignAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyDescriptionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyFileVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyFlagsAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyInformationalVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyKeyFileAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyKeyNameAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyMetadataAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyName.cs" />\r
-    <Compile Include="System.Reflection\AssemblyNameFlags.cs" />\r
-    <Compile Include="System.Reflection\AssemblyNameProxy.cs" />\r
-    <Compile Include="System.Reflection\AssemblyProductAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblySignatureKeyAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyTitleAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyTradeMarkAttribute.cs" />\r
-    <Compile Include="System.Reflection\AssemblyVersionAttribute.cs" />\r
-    <Compile Include="System.Reflection\Binder.cs" />\r
-    <Compile Include="System.Reflection\BindingFlags.cs" />\r
-    <Compile Include="System.Reflection\CallingConventions.cs" />\r
-    <Compile Include="System.Reflection\ConstructorInfo.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeData.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeExtensions.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeFormatException.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeNamedArgument.cs" />\r
-    <Compile Include="System.Reflection\CustomAttributeTypedArgument.cs" />\r
-    <Compile Include="System.Reflection\DefaultMemberAttribute.cs" />\r
-    <Compile Include="System.Reflection\EventAttributes.cs" />\r
-    <Compile Include="System.Reflection\EventInfo.cs" />\r
-    <Compile Include="System.Reflection\ExceptionHandlingClause.cs" />\r
-    <Compile Include="System.Reflection\ExceptionHandlingClauseOptions.cs" />\r
-    <Compile Include="System.Reflection\FieldAttributes.cs" />\r
-    <Compile Include="System.Reflection\FieldInfo.cs" />\r
-    <Compile Include="System.Reflection\GenericParameterAttributes.cs" />\r
-    <Compile Include="System.Reflection\ICustomAttributeProvider.cs" />\r
-    <Compile Include="System.Reflection\ImageFileMachine.cs" />\r
-    <Compile Include="System.Reflection\InterfaceMapping.cs" />\r
-    <Compile Include="System.Reflection\IntrospectionExtensions.cs" />\r
-    <Compile Include="System.Reflection\InvalidFilterCriteriaException.cs" />\r
-    <Compile Include="System.Reflection\IReflect.cs" />\r
-    <Compile Include="System.Reflection\IReflectableType.cs" />\r
-    <Compile Include="System.Reflection\LocalVariableInfo.cs" />\r
-    <Compile Include="System.Reflection\ManifestResourceInfo.cs" />\r
-    <Compile Include="System.Reflection\MemberFilter.cs" />\r
-    <Compile Include="System.Reflection\MemberInfo.cs" />\r
-    <Compile Include="System.Reflection\MemberInfoSerializationHolder.cs" />\r
-    <Compile Include="System.Reflection\MemberTypes.cs" />\r
-    <Compile Include="System.Reflection\MethodAttributes.cs" />\r
-    <Compile Include="System.Reflection\MethodBase.cs" />\r
-    <Compile Include="System.Reflection\MethodBody.cs" />\r
-    <Compile Include="System.Reflection\MethodImplAttributes.cs" />\r
-    <Compile Include="System.Reflection\MethodInfo.cs" />\r
-    <Compile Include="System.Reflection\Missing.cs" />\r
-    <Compile Include="System.Reflection\Module.cs" />\r
-    <Compile Include="System.Reflection\ModuleResolveEventHandler.cs" />\r
-    <Compile Include="System.Reflection\MonoAssembly.cs" />\r
-    <Compile Include="System.Reflection\MonoEvent.cs" />\r
-    <Compile Include="System.Reflection\MonoField.cs" />\r
-    <Compile Include="System.Reflection\MonoGenericClass.cs" />\r
-    <Compile Include="System.Reflection\MonoGenericMethod.cs" />\r
-    <Compile Include="System.Reflection\MonoMethod.cs" />\r
-    <Compile Include="System.Reflection\MonoModule.cs" />\r
-    <Compile Include="System.Reflection\MonoParameterInfo.cs" />\r
-    <Compile Include="System.Reflection\MonoProperty.cs" />\r
-    <Compile Include="System.Reflection\ObfuscateAssemblyAttribute.cs" />\r
-    <Compile Include="System.Reflection\ObfuscationAttribute.cs" />\r
-    <Compile Include="System.Reflection\ParameterAttributes.cs" />\r
-    <Compile Include="System.Reflection\ParameterInfo.cs" />\r
-    <Compile Include="System.Reflection\ParameterModifier.cs" />\r
-    <Compile Include="System.Reflection\Pointer.cs" />\r
-    <Compile Include="System.Reflection\PortableExecutableKinds.cs" />\r
-    <Compile Include="System.Reflection\ProcessorArchitecture.cs" />\r
-    <Compile Include="System.Reflection\PropertyAttributes.cs" />\r
-    <Compile Include="System.Reflection\PropertyInfo.cs" />\r
-    <Compile Include="System.Reflection\ReflectionContext.cs" />\r
-    <Compile Include="System.Reflection\ReflectionTypeLoadException.cs" />\r
-    <Compile Include="System.Reflection\ResourceAttributes.cs" />\r
-    <Compile Include="System.Reflection\ResourceLocation.cs" />\r
-    <Compile Include="System.Reflection\RuntimeReflectionExtensions.cs" />\r
-    <Compile Include="System.Reflection\StrongNameKeyPair.cs" />\r
-    <Compile Include="System.Reflection\TargetException.cs" />\r
-    <Compile Include="System.Reflection\TargetInvocationException.cs" />\r
-    <Compile Include="System.Reflection\TargetParameterCountException.cs" />\r
-    <Compile Include="System.Reflection\TypeAttributes.cs" />\r
-    <Compile Include="System.Reflection\TypeDelegator.cs" />\r
-    <Compile Include="System.Reflection\TypeFilter.cs" />\r
-    <Compile Include="System.Reflection\TypeInfo.cs" />\r
-    <Compile Include="System.Resources\IResourceReader.cs" />\r
-    <Compile Include="System.Resources\IResourceWriter.cs" />\r
-    <Compile Include="System.Resources\MissingManifestResourceException.cs" />\r
-    <Compile Include="System.Resources\MissingSatelliteAssemblyException.cs" />\r
-    <Compile Include="System.Resources\NeutralResourcesLanguageAttribute.cs" />\r
-    <Compile Include="System.Resources\ResourceManager.cs" />\r
-    <Compile Include="System.Resources\ResourceReader.cs" />\r
-    <Compile Include="System.Resources\ResourceSet.cs" />\r
-    <Compile Include="System.Resources\ResourceWriter.cs" />\r
-    <Compile Include="System.Resources\RuntimeResourceSet.cs" />\r
-    <Compile Include="System.Resources\SatelliteContractVersionAttribute.cs" />\r
-    <Compile Include="System.Resources\UltimateResourceFallbackLocation.cs" />\r
-    <Compile Include="System.Resources\Win32Resources.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AccessedThroughPropertyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncStateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncTaskMethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncTaskMethodBuilder_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\AsyncVoidMethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvCdecl.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvFastcall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvStdcall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallConvThiscall.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerFilePathAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerLineNumberAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CallerMemberNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilationRelaxations.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilationRelaxationsAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerGeneratedAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerGlobalScopeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CompilerMarshalOverride.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConditionalWeakTable.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConfiguredTaskAwaitable.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ConfiguredTaskAwaitable_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ContractHelper.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\CustomConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DateTimeConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DecimalConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DefaultDependencyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DependencyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\DiscardableAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ExtensionAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\FixedAddressValueTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\FixedBufferAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\HasCopySemanticsAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IAsyncStateMachine.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ICriticalNotifyCompletion.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IDispatchConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IndexerNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\INotifyCompletion.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\InternalsVisibleToAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsBoxed.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsByValue.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsConst.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsCopyConstructed.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsExplicitlyDereferenced.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsImplicitlyDereferenced.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsJitIntrinsic.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsLong.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsPinned.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsSignUnspecifiedByte.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsUdtReturn.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IsVolatile.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IteratorStateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\IUnknownConstantAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\LoadHint.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodCodeType.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodImplAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\MethodImplOptions.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\NativeCppClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ReferenceAssemblyAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RequiredAttributeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeCompatibilityAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeHelpers.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\RuntimeWrappedException.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\ScopelessEnumAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\SpecialNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StateMachineAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\StringFreezingAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\SuppressIldasmAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TaskAwaiter.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TaskAwaiter_T.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TypeForwardedFromAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\TypeForwardedToAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\UnsafeValueTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.CompilerServices\YieldAwaitable.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\CER.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\Consistency.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\CriticialFinalizerObject.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\PrePrepareMethodAttribute.cs" />\r
-    <Compile Include="System.Runtime.ConstrainedExecution\ReliabilityContractAttribute.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\ExceptionDispatchInfo.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\FirstChanceExceptionEventArgs.cs" />\r
-    <Compile Include="System.Runtime.ExceptionServices\HandleProcessCorruptedStateExceptionsAttribute.cs" />\r
-    <Compile Include="System.Runtime.Hosting\ActivationArguments.cs" />\r
-    <Compile Include="System.Runtime.Hosting\ApplicationActivator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\BIND_OPTS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\BINDPTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\CALLCONV.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\CONNECTDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DESCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\DISPPARAMS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ELEMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\EXCEPINFO.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FILETIME.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\FUNCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IBindCtx.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IConnectionPoint.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IConnectionPointContainer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDLDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IDLFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumConnectionPoints.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumConnections.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumString.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IEnumVARIANT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IMPLTYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\INVOKEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IPersistFile.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IRunningObjectTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\IStream.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeComp.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeInfo2.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeLib.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\ITypeLib2.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\LIBFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\PARAMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\PARAMFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\STATSTG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\SYSKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\TYPELIBATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.ComTypes\VARKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.Expando\IExpando.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\DefaultInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\DesignerNamespaceResolveEventArgs.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\EventRegistrationToken.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\EventRegistrationTokenTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\IActivationFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\InterfaceImplementedInVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\NamespaceResolveEventArgs.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\ReadOnlyArrayAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\ReturnValueNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WindowsRuntimeMarshal.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WindowsRuntimeMetadata.cs" />\r
-    <Compile Include="System.Runtime.InteropServices.WindowsRuntime\WriteOnlyArrayAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Activator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Assembly.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_AssemblyBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_AssemblyName.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Attribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ConstructorBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ConstructorInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_CustomAttributeBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EnumBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EventBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_EventInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Exception.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_FieldBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_FieldInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ILGenerator.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_LocalBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MemberInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodBase.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_MethodRental.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Module.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ModuleBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ParameterBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_ParameterInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_PropertyBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_PropertyInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_SignatureHelper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Thread.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_Type.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\_TypeBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AllowReversePInvokeCallsAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ArrayWithOffset.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AssemblyRegistrationFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AutomationProxyAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BestFitMappingAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BIND_OPTS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BINDPTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BStrWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CALLCONV.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CallingConvention.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CharSet.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ClassInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ClassInterfaceType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CoClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComAliasNameAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComCompatibleVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComConversionLossAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComDefaultInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComEventInterfaceAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\COMException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComImportAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComInterfaceType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComMemberType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComRegisterFunctionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComSourceInterfacesAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComUnregisterFunctionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComVisible.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CONNECTDATA.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CriticalHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CurrencyWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DefaultCharSetAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DESCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DispatchWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DispIdAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DISPPARAMS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DllImportAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ELEMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ErrorWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\EXCEPINFO.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExporterEventKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExtensibleClassFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExternalException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FieldOffsetAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FILETIME.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\FUNCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GCHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GCHandleType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\GuidAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleRef.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomAdapter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomMarshaler.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDispatchImplAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDispatchImplType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDLDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IDLFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IMPLTYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ImportedFromTypeLibAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ImporterEventKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InterfaceTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidComObjectException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidOleVariantTypeException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\INVOKEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IRegistrationServices.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibConverter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNameProvider.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNotifySink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ITypeLibImporterNotifySink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LayoutKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LCIDConversionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LIBFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\Marshal.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\MarshalAsAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\MarshalDirectiveException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ObjectCreationDelegate.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\OptionalAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\OutAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PARAMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PARAMFLAG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PreserveSigAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\PrimaryInteropAssemblyAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ProgIdAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationClassContext.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationConnectionType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RegistrationServices.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RuntimeEnvironment.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayRankMismatchException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayTypeMismatchException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeBuffer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SEHException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SetWin32ContextInIDispatchAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\STATSTG.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\StructLayoutAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SYSKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeIdentifierAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TYPELIBATTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibConverter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibExporterFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibFuncAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibFuncFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibImportClassAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibImporterFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibTypeFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVarAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVarFlags.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\TypeLibVersionAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIBindCtx.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIConnectionPoint.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIConnectionPointContainer.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumConnectionPoints.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumConnections.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumString.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIEnumVARIANT.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIMoniker.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIPersistFile.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIRunningObjectTable.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMIStream.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeComp.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeInfo.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UCOMITypeLib.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnknownWrapper.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnmanagedFunctionPointerAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnmanagedType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VARDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VarEnum.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VARFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VariantWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ActivationServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ActivatorLevel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\AppDomainLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ConstructionLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\ContextLevelActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IConstructionCallMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\IConstructionReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\RemoteActivationAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\RemoteActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Activation\UrlAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\AggregateDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelObjectWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelSinkWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\BaseChannelWithProperties.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelDataStore.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ChannelSinkStackEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ClientChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\CrossAppDomainChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelDataStore.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelReceiver.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelReceiverHook.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelSender.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IChannelSinkBase.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientFormatterSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientFormatterSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IClientResponseChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ISecurableChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerFormatterSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\IServerResponseChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ITransportHeaders.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerChannelSinkStack.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerDispatchSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerDispatchSinkProvider.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\ServerProcessing.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\SinkProviderData.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Channels\TransportHeaders.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\Context.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\ContextAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\ContextProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\CrossContextChannel.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\CrossContextDelegate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContextPropertyActivator.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeClientContextSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeDynamicSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeEnvoySink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeObjectSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IContributeServerContextSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IDynamicMessageSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\IDynamicProperty.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Contexts\SynchronizationAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ClientSponsor.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ILease.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\ISponsor.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\Lease.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseManager.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LeaseState.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Lifetime\LifetimeServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ArgInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\AsyncResult.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\CADMessages.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\CallContext.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ClientContextTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionCall.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionCallDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ConstructionResponse.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\EnvoyTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ErrorMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\Header.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\HeaderHandler.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IInternalMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessageCtrl.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMessageSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodCallMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IMethodReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\InternalMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\IRemotingFormatter.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ISerializationRootObject.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\LogicalCallContext.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MessageSurrogateFilter.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCall.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCallDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodCallMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodResponse.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodReturnDictionary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MethodReturnMessageWrapper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\MonoMethodMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\OneWayAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\RemotingSurrogate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\RemotingSurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ReturnMessage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ServerContextTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\ServerObjectTerminatorSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Messaging\StackBuilderSink.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\ISoapXsd.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapAnyUri.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapBase64Binary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDate.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDateTime.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDay.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapDuration.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapEntities.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapEntity.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapHelper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapHexBinary.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapId.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapIdref.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapIdrefs.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapLanguage.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapMonth.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapMonthDay.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNcName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNegativeInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNmtoken.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNmtokens.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNonNegativeInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNonPositiveInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNormalizedString.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapNotation.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapPositiveInteger.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapQName.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapTime.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapToken.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapYear.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata.W3cXsd2001\SoapYearMonth.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapFieldAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapMethodAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapOption.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapParameterAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\SoapTypeAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Metadata\XmlFieldOrderOption.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\ProxyAttribute.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\RealProxy.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Proxies\RemotingProxy.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\EnterpriseServicesHelper.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\ITrackingHandler.cs" />\r
-    <Compile Include="System.Runtime.Remoting.Services\TrackingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ActivatedClientTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ActivatedServiceTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\CustomErrorsModes.cs" />\r
-    <Compile Include="System.Runtime.Remoting\EnvoyInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IChannelInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\Identity.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IEnvoyInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\InternalRemotingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IObjectHandle.cs" />\r
-    <Compile Include="System.Runtime.Remoting\IRemotingTypeInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ObjectHandle.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ObjRef.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingConfiguration.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\RemotingTimeoutException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ServerException.cs" />\r
-    <Compile Include="System.Runtime.Remoting\ServerIdentity.cs" />\r
-    <Compile Include="System.Runtime.Remoting\SoapServices.cs" />\r
-    <Compile Include="System.Runtime.Remoting\TypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\TypeInfo.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownClientTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownObjectMode.cs" />\r
-    <Compile Include="System.Runtime.Remoting\WellKnownServiceTypeEntry.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\BinaryCommon.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\BinaryFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\CodeGenerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\MessageFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\ObjectReader.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters.Binary\ObjectWriter.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterAssemblyStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterTopObjectStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\FormatterTypeStyle.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\IFieldInfo.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalArrayTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalElementTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalMemberTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalMemberValueE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalNameSpaceE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalObjectPositionE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalObjectTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalParseStateE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalParseTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalPrimitiveTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalRM.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalSerializerTypeE.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\InternalST.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\ISoapMessage.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\ServerFault.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\SoapFault.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\SoapMessage.cs" />\r
-    <Compile Include="System.Runtime.Serialization.Formatters\TypeFilterLevel.cs" />\r
-    <Compile Include="System.Runtime.Serialization\Formatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\FormatterConverter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\FormatterServices.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IDeserializationCallback.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IFormatter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IFormatterConverter.cs" />\r
-    <Compile Include="System.Runtime.Serialization\IObjectReference.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISafeSerializationData.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISerializable.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISerializationSurrogate.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ISurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ObjectIDGenerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization\ObjectManager.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnDeserializedAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnDeserializingAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnSerializedAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OnSerializingAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\OptionalFieldAttribute.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SafeSerializationEventArgs.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationBinder.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationCallbacks.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationEntry.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationException.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationInfo.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationInfoEnumerator.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SerializationObjectManager.cs" />\r
-    <Compile Include="System.Runtime.Serialization\StreamingContext.cs" />\r
-    <Compile Include="System.Runtime.Serialization\StreamingContextStates.cs" />\r
-    <Compile Include="System.Runtime.Serialization\SurrogateSelector.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ComponentGuaranteesAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ComponentGuaranteesOptions.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceConsumptionAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceExposureAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\ResourceScope.cs" />\r
-    <Compile Include="System.Runtime.Versioning\TargetFrameworkAttribute.cs" />\r
-    <Compile Include="System.Runtime.Versioning\VersioningHelper.cs" />\r
-    <Compile Include="System.Runtime\AssemblyTargetedPatchBandAttribute.cs" />\r
-    <Compile Include="System.Runtime\GCLargeObjectHeapCompactionMode.cs" />\r
-    <Compile Include="System.Runtime\GCLatencyMode.cs" />\r
-    <Compile Include="System.Runtime\GCSettings.cs" />\r
-    <Compile Include="System.Runtime\MemoryFailPoint.cs" />\r
-    <Compile Include="System.Runtime\TargetedPatchingOptOutAttribute.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlActions.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlModification.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlSections.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessControlType.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AccessRule_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceEnumerator.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceQualifier.cs" />\r
-    <Compile Include="System.Security.AccessControl\AceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuditRule_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuthorizationRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\AuthorizationRuleCollection.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\CommonSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\CompoundAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\CompoundAceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\ControlFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeyRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\CryptoKeySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\CustomAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\DirectoryObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\DirectorySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\DiscretionaryAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\EventWaitHandleSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\FileSystemSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\GenericSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\InheritanceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\KnownAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\MutexSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\NativeObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAceFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectSecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ObjectSecurity_T.cs" />\r
-    <Compile Include="System.Security.AccessControl\PrivilegeNotHeldException.cs" />\r
-    <Compile Include="System.Security.AccessControl\PropagationFlags.cs" />\r
-    <Compile Include="System.Security.AccessControl\QualifiedAce.cs" />\r
-    <Compile Include="System.Security.AccessControl\RawAcl.cs" />\r
-    <Compile Include="System.Security.AccessControl\RawSecurityDescriptor.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryAccessRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryAuditRule.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistryRights.cs" />\r
-    <Compile Include="System.Security.AccessControl\RegistrySecurity.cs" />\r
-    <Compile Include="System.Security.AccessControl\ResourceType.cs" />\r
-    <Compile Include="System.Security.AccessControl\SddlAccessRight.cs" />\r
-    <Compile Include="System.Security.AccessControl\SecurityInfos.cs" />\r
-    <Compile Include="System.Security.AccessControl\SystemAcl.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate20.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509ContentType.cs" />\r
-    <Compile Include="System.Security.Cryptography.X509Certificates\X509KeyStorageFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricKeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricKeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricSignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\AsymmetricSignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\Base64Constants.cs" />\r
-    <Compile Include="System.Security.Cryptography\CipherMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoAPITransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig.fullaot.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoConfig_2_1.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptographicException.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptographicUnexpectedOperationExcpetion.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoStream.cs" />\r
-    <Compile Include="System.Security.Cryptography\CryptoStreamMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspKeyContainerInfo.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\CspProviderFlags.cs" />\r
-    <Compile Include="System.Security.Cryptography\DeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\DES.cs" />\r
-    <Compile Include="System.Security.Cryptography\DESCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSA.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSACryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSAParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSASignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\DSASignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\FromBase64Transform.cs" />\r
-    <Compile Include="System.Security.Cryptography\HashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMAC.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACMD5.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACRIPEMD160.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA1.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA256.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA384.cs" />\r
-    <Compile Include="System.Security.Cryptography\HMACSHA512.cs" />\r
-    <Compile Include="System.Security.Cryptography\ICryptoTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\ICspAsymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeyedHashAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeyNumber.cs" />\r
-    <Compile Include="System.Security.Cryptography\KeySizes.cs" />\r
-    <Compile Include="System.Security.Cryptography\MACTripleDES.cs" />\r
-    <Compile Include="System.Security.Cryptography\MaskGenerationMethod.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5.cs" />\r
-    <Compile Include="System.Security.Cryptography\MD5CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\PaddingMode.cs" />\r
-    <Compile Include="System.Security.Cryptography\PasswordDeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\PKCS1MaskGenerationMethod.cs" />\r
-    <Compile Include="System.Security.Cryptography\RandomNumberGenerator.cs" />\r
-    <Compile Include="System.Security.Cryptography\RC2.cs" />\r
-    <Compile Include="System.Security.Cryptography\RC2CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\Rfc2898DeriveBytes.cs" />\r
-    <Compile Include="System.Security.Cryptography\Rijndael.cs" />\r
-    <Compile Include="System.Security.Cryptography\RijndaelManaged.cs" />\r
-    <Compile Include="System.Security.Cryptography\RijndaelManagedTransform.cs" />\r
-    <Compile Include="System.Security.Cryptography\RIPEMD160.cs" />\r
-    <Compile Include="System.Security.Cryptography\RIPEMD160Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\RNGCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSA.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSACryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAOAEPKeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAOAEPKeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAParameters.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1KeyExchangeDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1KeyExchangeFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1SignatureDeformatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\RSAPKCS1SignatureFormatter.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1CryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA1Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA256Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA384Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHA512Managed.cs" />\r
-    <Compile Include="System.Security.Cryptography\SHAConstants.cs" />\r
-    <Compile Include="System.Security.Cryptography\SignatureDescription.cs" />\r
-    <Compile Include="System.Security.Cryptography\SymmetricAlgorithm.cs" />\r
-    <Compile Include="System.Security.Cryptography\ToBase64Transform.cs" />\r
-    <Compile Include="System.Security.Cryptography\TripleDES.cs" />\r
-    <Compile Include="System.Security.Cryptography\TripleDESCryptoServiceProvider.cs" />\r
-    <Compile Include="System.Security.Permissions\CodeAccessSecurityAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\EnvironmentPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\FileDialogPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\FileIOPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\GacIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\GacIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\HostProtectionResource.cs" />\r
-    <Compile Include="System.Security.Permissions\IBuiltInPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageContainment.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageFilePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStorageFilePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStoragePermission.cs" />\r
-    <Compile Include="System.Security.Permissions\IsolatedStoragePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\IUnrestrictedPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntry.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntryCollection.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAccessEntryEnumerator.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\KeyContainerPermissionFlags.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionSetAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\PermissionState.cs" />\r
-    <Compile Include="System.Security.Permissions\PrincipalPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\PrincipalPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\PublisherIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\PublisherIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ReflectionPermissionFlag.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermissionAccess.cs" />\r
-    <Compile Include="System.Security.Permissions\RegistryPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityAction.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\SecurityPermissionFlag.cs" />\r
-    <Compile Include="System.Security.Permissions\SiteIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\SiteIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNameIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNamePermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\StrongNamePublicKeyBlob.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionClipboard.cs" />\r
-    <Compile Include="System.Security.Permissions\UIPermissionWindow.cs" />\r
-    <Compile Include="System.Security.Permissions\UrlIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\UrlIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Permissions\ZoneIdentityPermission.cs" />\r
-    <Compile Include="System.Security.Permissions\ZoneIdentityPermissionAttribute.cs" />\r
-    <Compile Include="System.Security.Policy\AllMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationDirectory.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationDirectoryMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationSecurityInfo.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationSecurityManager.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrust.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrustCollection.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationTrustEnumerator.cs" />\r
-    <Compile Include="System.Security.Policy\ApplicationVersionMatch.cs" />\r
-    <Compile Include="System.Security.Policy\CodeConnectAccess.cs" />\r
-    <Compile Include="System.Security.Policy\CodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\DefaultPolicies.cs" />\r
-    <Compile Include="System.Security.Policy\Evidence.cs" />\r
-    <Compile Include="System.Security.Policy\EvidenceBase.cs" />\r
-    <Compile Include="System.Security.Policy\FileCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\FirstMatchCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\Gac.cs" />\r
-    <Compile Include="System.Security.Policy\GacMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Hash.cs" />\r
-    <Compile Include="System.Security.Policy\HashMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\IApplicationTrustManager.cs" />\r
-    <Compile Include="System.Security.Policy\IBuiltInEvidence.cs" />\r
-    <Compile Include="System.Security.Policy\IConstantMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\IIdentityPermissionFactory.cs" />\r
-    <Compile Include="System.Security.Policy\IMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\MembershipConditionHelper.cs" />\r
-    <Compile Include="System.Security.Policy\MonoTrustManager.cs" />\r
-    <Compile Include="System.Security.Policy\NetCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\PermissionRequestEvidence.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyException.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyLevel.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyStatement.cs" />\r
-    <Compile Include="System.Security.Policy\PolicyStatementAttribute.cs" />\r
-    <Compile Include="System.Security.Policy\Publisher.cs" />\r
-    <Compile Include="System.Security.Policy\PublisherMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Site.cs" />\r
-    <Compile Include="System.Security.Policy\SiteMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\StrongName.cs" />\r
-    <Compile Include="System.Security.Policy\StrongNameMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\TrustManagerContext.cs" />\r
-    <Compile Include="System.Security.Policy\TrustManagerUIContext.cs" />\r
-    <Compile Include="System.Security.Policy\UnionCodeGroup.cs" />\r
-    <Compile Include="System.Security.Policy\Url.cs" />\r
-    <Compile Include="System.Security.Policy\UrlMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Policy\Zone.cs" />\r
-    <Compile Include="System.Security.Policy\ZoneMembershipCondition.cs" />\r
-    <Compile Include="System.Security.Principal\GenericIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\GenericPrincipal.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityNotMappedException.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityReference.cs" />\r
-    <Compile Include="System.Security.Principal\IdentityReferenceCollection.cs" />\r
-    <Compile Include="System.Security.Principal\IIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\IPrincipal.cs" />\r
-    <Compile Include="System.Security.Principal\NTAccount.cs" />\r
-    <Compile Include="System.Security.Principal\PrincipalPolicy.cs" />\r
-    <Compile Include="System.Security.Principal\SecurityIdentifier.cs" />\r
-    <Compile Include="System.Security.Principal\TokenAccessLevels.cs" />\r
-    <Compile Include="System.Security.Principal\TokenImpersonationLevel.cs" />\r
-    <Compile Include="System.Security.Principal\WellKnownAccount.cs" />\r
-    <Compile Include="System.Security.Principal\WellKnownSidType.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsAccountType.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsBuiltInRole.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsIdentity.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsImpersonationContext.cs" />\r
-    <Compile Include="System.Security.Principal\WindowsPrincipal.cs" />\r
-    <Compile Include="System.Security\AllowPartiallyTrustedCallersAttribute.cs" />\r
-    <Compile Include="System.Security\CodeAccessPermission.cs" />\r
-    <Compile Include="System.Security\HostProtectionException.cs" />\r
-    <Compile Include="System.Security\HostSecurityManager.cs" />\r
-    <Compile Include="System.Security\HostSecurityManagerFlags.cs" />\r
-    <Compile Include="System.Security\IEvidenceFactory.cs" />\r
-    <Compile Include="System.Security\IPermission.cs" />\r
-    <Compile Include="System.Security\ISecurityEncodable.cs" />\r
-    <Compile Include="System.Security\ISecurityPolicyEncodable.cs" />\r
-    <Compile Include="System.Security\IStackWalk.cs" />\r
-    <Compile Include="System.Security\NamedPermissionSet.cs" />\r
-    <Compile Include="System.Security\PermissionBuilder.cs" />\r
-    <Compile Include="System.Security\PermissionSet.cs" />\r
-    <Compile Include="System.Security\PolicyLevelType.cs" />\r
-    <Compile Include="System.Security\SecureString.cs" />\r
-    <Compile Include="System.Security\SecurityContext.cs" />\r
-    <Compile Include="System.Security\SecurityContextSource.cs" />\r
-    <Compile Include="System.Security\SecurityCriticalAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityCriticalScope.cs" />\r
-    <Compile Include="System.Security\SecurityElement.cs" />\r
-    <Compile Include="System.Security\SecurityException.cs" />\r
-    <Compile Include="System.Security\SecurityFrame.cs" />\r
-    <Compile Include="System.Security\SecurityManager.cs" />\r
-    <Compile Include="System.Security\SecurityManager_mobile.cs" />\r
-    <Compile Include="System.Security\SecurityRulesAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityRuleSet.cs" />\r
-    <Compile Include="System.Security\SecuritySafeCriticalAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityState.cs" />\r
-    <Compile Include="System.Security\SecurityTransparentAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityTreatAsSafeAttribute.cs" />\r
-    <Compile Include="System.Security\SecurityZone.cs" />\r
-    <Compile Include="System.Security\SuppressUnmanagedCodeSecurityAttribute.cs" />\r
-    <Compile Include="System.Security\UnverifiableCodeAttribute.cs" />\r
-    <Compile Include="System.Security\VerificationException.cs" />\r
-    <Compile Include="System.Security\XmlSyntaxException.cs" />\r
-    <Compile Include="System.Text\ASCIIEncoding.cs" />\r
-    <Compile Include="System.Text\CodePageEncoding.cs" />\r
-    <Compile Include="System.Text\Decoder.cs" />\r
-    <Compile Include="System.Text\DecoderExceptionFallback.cs" />\r
-    <Compile Include="System.Text\DecoderExceptionFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\DecoderFallback.cs" />\r
-    <Compile Include="System.Text\DecoderFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\DecoderFallbackException.cs" />\r
-    <Compile Include="System.Text\DecoderReplacementFallback.cs" />\r
-    <Compile Include="System.Text\DecoderReplacementFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\Encoder.cs" />\r
-    <Compile Include="System.Text\EncoderExceptionFallback.cs" />\r
-    <Compile Include="System.Text\EncoderExceptionFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\EncoderFallback.cs" />\r
-    <Compile Include="System.Text\EncoderFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\EncoderFallbackException.cs" />\r
-    <Compile Include="System.Text\EncoderReplacementFallback.cs" />\r
-    <Compile Include="System.Text\EncoderReplacementFallbackBuffer.cs" />\r
-    <Compile Include="System.Text\Encoding.cs" />\r
-    <Compile Include="System.Text\EncodingInfo.cs" />\r
-    <Compile Include="System.Text\Latin1Encoding.cs" />\r
-    <Compile Include="System.Text\MLangCodePageEncoding.cs" />\r
-    <Compile Include="System.Text\NormalizationForm.cs" />\r
-    <Compile Include="System.Text\StringBuilder.cs" />\r
-    <Compile Include="System.Text\SurrogateEncoder.cs" />\r
-    <Compile Include="System.Text\UnicodeEncoding.cs" />\r
-    <Compile Include="System.Text\UTF32Encoding.cs" />\r
-    <Compile Include="System.Text\UTF7Encoding.cs" />\r
-    <Compile Include="System.Text\UTF8Encoding.cs" />\r
-    <Compile Include="System.Threading.Tasks\ConcurrentExclusiveSchedulerPair.cs" />\r
-    <Compile Include="System.Threading.Tasks\CyclicDeque.cs" />\r
-    <Compile Include="System.Threading.Tasks\DecoupledTask.cs" />\r
-    <Compile Include="System.Threading.Tasks\IConcurrentDeque.cs" />\r
-    <Compile Include="System.Threading.Tasks\Parallel.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelLoopResult.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelLoopState.cs" />\r
-    <Compile Include="System.Threading.Tasks\ParallelOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\PopResult.cs" />\r
-    <Compile Include="System.Threading.Tasks\SimpleConcurrentBag.cs" />\r
-    <Compile Include="System.Threading.Tasks\SynchronizationContextScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\Task.cs" />\r
-    <Compile Include="System.Threading.Tasks\Task_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskActionInvoker.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCanceledException.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCompletionQueue.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCompletionSource.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskConstants.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskConstants_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskContinuation.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskContinuationOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskCreationOptions.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskDebuggerView.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExceptionSlot.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskExtensionsImpl.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskFactory.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskFactory_T.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskSchedulerException.cs" />\r
-    <Compile Include="System.Threading.Tasks\TaskStatus.cs" />\r
-    <Compile Include="System.Threading.Tasks\TpScheduler.cs" />\r
-    <Compile Include="System.Threading.Tasks\UnobservedTaskExceptionEventArgs.cs" />\r
-    <Compile Include="System.Threading\AbandonedMutexException.cs" />\r
-    <Compile Include="System.Threading\ApartmentState.cs" />\r
-    <Compile Include="System.Threading\AsyncFlowControl.cs" />\r
-    <Compile Include="System.Threading\AtomicBoolean.cs" />\r
-    <Compile Include="System.Threading\AutoResetEvent.cs" />\r
-    <Compile Include="System.Threading\CancellationToken.cs" />\r
-    <Compile Include="System.Threading\CancellationTokenRegistration.cs" />\r
-    <Compile Include="System.Threading\CancellationTokenSource.cs" />\r
-    <Compile Include="System.Threading\CompressedStack.cs" />\r
-    <Compile Include="System.Threading\ContextCallback.cs" />\r
-    <Compile Include="System.Threading\CountdownEvent.cs" />\r
-    <Compile Include="System.Threading\EventResetMode.cs" />\r
-    <Compile Include="System.Threading\EventWaitHandle.cs" />\r
-    <Compile Include="System.Threading\ExecutionContext.cs" />\r
-    <Compile Include="System.Threading\HostExecutionContext.cs" />\r
-    <Compile Include="System.Threading\HostExecutionContextManager.cs" />\r
-    <Compile Include="System.Threading\Interlocked.cs" />\r
-    <Compile Include="System.Threading\IOCompletionCallback.cs" />\r
-    <Compile Include="System.Threading\LazyInitializer.cs" />\r
-    <Compile Include="System.Threading\LazyThreadSafetyMode.cs" />\r
-    <Compile Include="System.Threading\LockCookie.cs" />\r
-    <Compile Include="System.Threading\LockQueue.cs" />\r
-    <Compile Include="System.Threading\LockRecursionException.cs" />\r
-    <Compile Include="System.Threading\ManualResetEvent.cs" />\r
-    <Compile Include="System.Threading\ManualResetEventSlim.cs" />\r
-    <Compile Include="System.Threading\Monitor.cs" />\r
-    <Compile Include="System.Threading\Mutex.cs" />\r
-    <Compile Include="System.Threading\NamedDataSlot.cs" />\r
-    <Compile Include="System.Threading\NativeEventCalls.cs" />\r
-    <Compile Include="System.Threading\NativeOverlapped.cs" />\r
-    <Compile Include="System.Threading\Overlapped.cs" />\r
-    <Compile Include="System.Threading\ParameterizedThreadStart.cs" />\r
-    <Compile Include="System.Threading\ReaderWriterLock.cs" />\r
-    <Compile Include="System.Threading\RegisteredWaitHandle.cs" />\r
-    <Compile Include="System.Threading\SemaphoreSlim.cs" />\r
-    <Compile Include="System.Threading\SendOrPostCallback.cs" />\r
-    <Compile Include="System.Threading\SpinLock.cs" />\r
-    <Compile Include="System.Threading\SpinWait.cs" />\r
-    <Compile Include="System.Threading\SynchronizationContext.cs" />\r
-    <Compile Include="System.Threading\SynchronizationLockException.cs" />\r
-    <Compile Include="System.Threading\Thread.cs" />\r
-    <Compile Include="System.Threading\ThreadAbortException.cs" />\r
-    <Compile Include="System.Threading\ThreadInterruptedException.cs" />\r
-    <Compile Include="System.Threading\ThreadLocal.cs" />\r
-    <Compile Include="System.Threading\ThreadPool.cs" />\r
-    <Compile Include="System.Threading\ThreadPriority.cs" />\r
-    <Compile Include="System.Threading\ThreadStart.cs" />\r
-    <Compile Include="System.Threading\ThreadStartException.cs" />\r
-    <Compile Include="System.Threading\ThreadState.cs" />\r
-    <Compile Include="System.Threading\ThreadStateException.cs" />\r
-    <Compile Include="System.Threading\Timeout.cs" />\r
-    <Compile Include="System.Threading\Timer.cs" />\r
-    <Compile Include="System.Threading\TimerCallback.cs" />\r
-    <Compile Include="System.Threading\Volatile.cs" />\r
-    <Compile Include="System.Threading\WaitCallback.cs" />\r
-    <Compile Include="System.Threading\WaitHandle.cs" />\r
-    <Compile Include="System.Threading\WaitHandleCannotBeOpenedException.cs" />\r
-    <Compile Include="System.Threading\WaitOrTimerCallback.cs" />\r
-    <Compile Include="System.Threading\Watch.cs" />\r
-    <Compile Include="System\__ComObject.cs" />\r
-    <Compile Include="System\_AppDomain.cs" />\r
-    <Compile Include="System\AccessViolationException.cs" />\r
-    <Compile Include="System\Action.cs" />\r
-    <Compile Include="System\ActivationContext.cs" />\r
-    <Compile Include="System\Activator.cs" />\r
-    <Compile Include="System\AggregateException.cs" />\r
-    <Compile Include="System\AndroidPlatform.cs" />\r
-    <Compile Include="System\AppDomain.cs" />\r
-    <Compile Include="System\AppDomainInitializer.cs" />\r
-    <Compile Include="System\AppDomainManager.cs" />\r
-    <Compile Include="System\AppDomainSetup.cs" />\r
-    <Compile Include="System\AppDomainUnloadedException.cs" />\r
-    <Compile Include="System\ApplicationException.cs" />\r
-    <Compile Include="System\ApplicationId.cs" />\r
-    <Compile Include="System\ApplicationIdentity.cs" />\r
-    <Compile Include="System\ArgIterator.cs" />\r
-    <Compile Include="System\ArgumentException.cs" />\r
-    <Compile Include="System\ArgumentNullException.cs" />\r
-    <Compile Include="System\ArgumentOutOfRangeException.cs" />\r
-    <Compile Include="System\ArithmeticException.cs" />\r
-    <Compile Include="System\Array.cs" />\r
-    <Compile Include="System\ArraySegment.cs" />\r
-    <Compile Include="System\ArrayTypeMismatchException.cs" />\r
-    <Compile Include="System\AssemblyLoadEventArgs.cs" />\r
-    <Compile Include="System\AssemblyLoadEventHandler.cs" />\r
-    <Compile Include="System\AsyncCallback.cs" />\r
-    <Compile Include="System\Attribute.cs" />\r
-    <Compile Include="System\AttributeTargets.cs" />\r
-    <Compile Include="System\AttributeUsageAttribute.cs" />\r
-    <Compile Include="System\BadImageFormatException.cs" />\r
-    <Compile Include="System\Base64FormattingOptions.cs" />\r
-    <Compile Include="System\BitConverter.cs" />\r
-    <Compile Include="System\Boolean.cs" />\r
-    <Compile Include="System\Buffer.cs" />\r
-    <Compile Include="System\Byte.cs" />\r
-    <Compile Include="System\CannotUnloadAppDomainException.cs" />\r
-    <Compile Include="System\Char.cs" />\r
-    <Compile Include="System\CharEnumerator.cs" />\r
-    <Compile Include="System\CLSCompliantAttribute.cs" />\r
-    <Compile Include="System\Comparison.cs" />\r
-    <Compile Include="System\Console.cs" />\r
-    <Compile Include="System\Console.iOS.cs" />\r
-    <Compile Include="System\ConsoleCancelEventArgs.cs" />\r
-    <Compile Include="System\ConsoleCancelEventHandler.cs" />\r
-    <Compile Include="System\ConsoleColor.cs" />\r
-    <Compile Include="System\ConsoleDriver.cs" />\r
-    <Compile Include="System\ConsoleKey.cs" />\r
-    <Compile Include="System\ConsoleKeyInfo.cs" />\r
-    <Compile Include="System\ConsoleModifiers.cs" />\r
-    <Compile Include="System\ConsoleSpecialKey.cs" />\r
-    <Compile Include="System\ContextBoundObject.cs" />\r
-    <Compile Include="System\ContextMarshalException.cs" />\r
-    <Compile Include="System\ContextStaticAttribute.cs" />\r
-    <Compile Include="System\ControlCharacters.cs" />\r
-    <Compile Include="System\Convert.cs" />\r
-    <Compile Include="System\Converter.cs" />\r
-    <Compile Include="System\CrossAppDomainDelegate.cs" />\r
-    <Compile Include="System\CStreamReader.cs" />\r
-    <Compile Include="System\CStreamWriter.cs" />\r
-    <Compile Include="System\DataMisalignedException.cs" />\r
-    <Compile Include="System\DateTime.cs" />\r
-    <Compile Include="System\DateTimeKind.cs" />\r
-    <Compile Include="System\DateTimeOffset.cs" />\r
-    <Compile Include="System\DateTimeUtils.cs" />\r
-    <Compile Include="System\DayOfWeek.cs" />\r
-    <Compile Include="System\DBNull.cs" />\r
-    <Compile Include="System\Decimal.cs" />\r
-    <Compile Include="System\Delegate.cs" />\r
-    <Compile Include="System\DelegateSerializationHolder.cs" />\r
-    <Compile Include="System\DivideByZeroException.cs" />\r
-    <Compile Include="System\DllNotFoundException.cs" />\r
-    <Compile Include="System\DomainManagerInitializationFlags.cs" />\r
-    <Compile Include="System\Double.cs" />\r
-    <Compile Include="System\DuplicateWaitObjectException.cs" />\r
-    <Compile Include="System\EmptyArray.cs" />\r
-    <Compile Include="System\EntryPointNotFoundException.cs" />\r
-    <Compile Include="System\Enum.cs" />\r
-    <Compile Include="System\Environment.cs" />\r
-    <Compile Include="System\EnvironmentVariableTarget.cs" />\r
-    <Compile Include="System\EventArgs.cs" />\r
-    <Compile Include="System\EventHandler.cs" />\r
-    <Compile Include="System\Exception.cs" />\r
-    <Compile Include="System\ExecutionEngineException.cs" />\r
-    <Compile Include="System\FieldAccessException.cs" />\r
-    <Compile Include="System\FlagsAttribute.cs" />\r
-    <Compile Include="System\FormatException.cs" />\r
-    <Compile Include="System\Funcs.cs" />\r
-    <Compile Include="System\GC.cs" />\r
-    <Compile Include="System\GCCollectionMode.cs" />\r
-    <Compile Include="System\GCNotificationStatus.cs" />\r
-    <Compile Include="System\Guid.cs" />\r
-    <Compile Include="System\IAppDomainSetup.cs" />\r
-    <Compile Include="System\IAsyncResult.cs" />\r
-    <Compile Include="System\ICloneable.cs" />\r
-    <Compile Include="System\IComparable.cs" />\r
-    <Compile Include="System\IConsoleDriver.cs" />\r
-    <Compile Include="System\IConvertible.cs" />\r
-    <Compile Include="System\ICustomFormatter.cs" />\r
-    <Compile Include="System\IDisposable.cs" />\r
-    <Compile Include="System\IEquatable.cs" />\r
-    <Compile Include="System\IFormatProvider.cs" />\r
-    <Compile Include="System\IFormattable.cs" />\r
-    <Compile Include="System\IndexOutOfRangeException.cs" />\r
-    <Compile Include="System\InsufficientExecutionStackException.cs" />\r
-    <Compile Include="System\InsufficientMemoryException.cs" />\r
-    <Compile Include="System\Int16.cs" />\r
-    <Compile Include="System\Int32.cs" />\r
-    <Compile Include="System\Int64.cs" />\r
-    <Compile Include="System\IntPtr.cs" />\r
-    <Compile Include="System\InvalidCastException.cs" />\r
-    <Compile Include="System\InvalidOperationException.cs" />\r
-    <Compile Include="System\InvalidProgramException.cs" />\r
-    <Compile Include="System\InvalidTimeZoneException.cs" />\r
-    <Compile Include="System\IObservable.cs" />\r
-    <Compile Include="System\IObserver.cs" />\r
-    <Compile Include="System\IProgress.cs" />\r
-    <Compile Include="System\IServiceProvider.cs" />\r
-    <Compile Include="System\KnownTerminals.cs" />\r
-    <Compile Include="System\Lazy.cs" />\r
-    <Compile Include="System\LoaderOptimization.cs" />\r
-    <Compile Include="System\LoaderOptimizationAttribute.cs" />\r
-    <Compile Include="System\LocalDataStoreSlot.cs" />\r
-    <Compile Include="System\MarshalByRefObject.cs" />\r
-    <Compile Include="System\Math.cs" />\r
-    <Compile Include="System\MemberAccessException.cs" />\r
-    <Compile Include="System\MethodAccessException.cs" />\r
-    <Compile Include="System\MidpointRounding.cs" />\r
-    <Compile Include="System\MissingFieldException.cs" />\r
-    <Compile Include="System\MissingMemberException.cs" />\r
-    <Compile Include="System\MissingMethodException.cs" />\r
-    <Compile Include="System\ModuleHandle.cs" />\r
-    <Compile Include="System\MonoAsyncCall.cs" />\r
-    <Compile Include="System\MonoCQItem.cs" />\r
-    <Compile Include="System\MonoCustomAttrs.cs" />\r
-    <Compile Include="System\MonoListItem.cs" />\r
-    <Compile Include="System\MonoTouchAOTHelper.cs" />\r
-    <Compile Include="System\MonoType.cs" />\r
-    <Compile Include="System\MTAThreadAttribute.cs" />\r
-    <Compile Include="System\MulticastDelegate.cs" />\r
-    <Compile Include="System\MulticastNotSupportedException.cs" />\r
-    <Compile Include="System\NonSerializedAttribute.cs" />\r
-    <Compile Include="System\NotFiniteNumberException.cs" />\r
-    <Compile Include="System\NotImplementedException.cs" />\r
-    <Compile Include="System\NotSupportedException.cs" />\r
-    <Compile Include="System\Nullable.cs" />\r
-    <Compile Include="System\NullConsoleDriver.cs" />\r
-    <Compile Include="System\NullReferenceException.cs" />\r
-    <Compile Include="System\NumberFormatter.cs" />\r
-    <Compile Include="System\Object.cs" />\r
-    <Compile Include="System\ObjectDisposedException.cs" />\r
-    <Compile Include="System\ObsoleteAttribute.cs" />\r
-    <Compile Include="System\OperatingSystem.cs" />\r
-    <Compile Include="System\OperationCanceledException.cs" />\r
-    <Compile Include="System\OutOfMemoryException.cs" />\r
-    <Compile Include="System\OverflowException.cs" />\r
-    <Compile Include="System\ParamArrayAttribute.cs" />\r
-    <Compile Include="System\PlatformID.cs" />\r
-    <Compile Include="System\PlatformNotSupportedException.cs" />\r
-    <Compile Include="System\Predicate.cs" />\r
-    <Compile Include="System\Progress.cs" />\r
-    <Compile Include="System\Random.cs" />\r
-    <Compile Include="System\RankException.cs" />\r
-    <Compile Include="System\ResolveEventArgs.cs" />\r
-    <Compile Include="System\ResolveEventHandler.cs" />\r
-    <Compile Include="System\RuntimeArgumentHandle.cs" />\r
-    <Compile Include="System\RuntimeFieldHandle.cs" />\r
-    <Compile Include="System\RuntimeMethodHandle.cs" />\r
-    <Compile Include="System\RuntimeTypeHandle.cs" />\r
-    <Compile Include="System\SByte.cs" />\r
-    <Compile Include="System\SerializableAttribute.cs" />\r
-    <Compile Include="System\Single.cs" />\r
-    <Compile Include="System\StackOverflowException.cs" />\r
-    <Compile Include="System\STAThreadAttribute.cs" />\r
-    <Compile Include="System\String.cs" />\r
-    <Compile Include="System\StringComparer.cs" />\r
-    <Compile Include="System\StringComparison.cs" />\r
-    <Compile Include="System\StringSplitOptions.cs" />\r
-    <Compile Include="System\SystemException.cs" />\r
-    <Compile Include="System\TermInfoBooleans.cs" />\r
-    <Compile Include="System\TermInfoDriver.cs" />\r
-    <Compile Include="System\TermInfoNumbers.cs" />\r
-    <Compile Include="System\TermInfoReader.cs" />\r
-    <Compile Include="System\TermInfoStrings.cs" />\r
-    <Compile Include="System\ThreadStaticAttribute.cs" />\r
-    <Compile Include="System\TimeoutException.cs" />\r
-    <Compile Include="System\TimeSpan.cs" />\r
-    <Compile Include="System\TimeZone.cs" />\r
-    <Compile Include="System\TimeZoneNotFoundException.cs" />\r
-    <Compile Include="System\Tuple.cs" />\r
-    <Compile Include="System\Tuples.cs" />\r
-    <Compile Include="System\Type.cs" />\r
-    <Compile Include="System\TypeAccessException.cs" />\r
-    <Compile Include="System\TypeCode.cs" />\r
-    <Compile Include="System\TypedReference.cs" />\r
-    <Compile Include="System\TypeInitializationException.cs" />\r
-    <Compile Include="System\TypeLoadException.cs" />\r
-    <Compile Include="System\TypeIdentifier.cs" />\r
-    <Compile Include="System\TypeSpec.cs" />\r
-    <Compile Include="System\TypeUnloadedException.cs" />\r
-    <Compile Include="System\UInt16.cs" />\r
-    <Compile Include="System\UInt32.cs" />\r
-    <Compile Include="System\UInt64.cs" />\r
-    <Compile Include="System\UIntPtr.cs" />\r
-    <Compile Include="System\UnauthorizedAccessException.cs" />\r
-    <Compile Include="System\UnhandledExceptionEventArgs.cs" />\r
-    <Compile Include="System\UnhandledExceptionEventHandler.cs" />\r
-    <Compile Include="System\UnitySerializationHolder.cs" />\r
-    <Compile Include="System\ValueType.cs" />\r
-    <Compile Include="System\Variant.cs" />\r
-    <Compile Include="System\Version.cs" />\r
-    <Compile Include="System\Void.cs" />\r
-    <Compile Include="System\WeakReference.cs" />\r
-    <Compile Include="System\WeakReference_T.cs" />\r
-    <Compile Include="System\WindowsConsoleDriver.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent>\r
-\r
-    </PreBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
-
-    </PostBuildEvent>
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">
-
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <EmbeddedResource Include="resources/collation.core.bin">\r
-      <LogicalName>collation.core.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.tailoring.bin">\r
-      <LogicalName>collation.tailoring.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkCHS.bin">\r
-      <LogicalName>collation.cjkCHS.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkCHT.bin">\r
-      <LogicalName>collation.cjkCHT.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkJA.bin">\r
-      <LogicalName>collation.cjkJA.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkKO.bin">\r
-      <LogicalName>collation.cjkKO.bin</LogicalName>\r
-    </EmbeddedResource>\r
-    <EmbeddedResource Include="resources/collation.cjkKOlv2.bin">\r
-      <LogicalName>collation.cjkKOlv2.bin</LogicalName>\r
-    </EmbeddedResource>\r
-  </ItemGroup>\r
-</Project>\r
-
index b4b398166e83411b01d8ad167b3f5f55882f48d5..95f0db7329cb36a446b037c41d2f4f6a1347bf06 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>612,618,1635,1699</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>612,618,1635,1699</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;INSIDE_CORLIB;MONO_CULTURE_DATA;LIBC;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
+    <DefineConstants>TRACE;INSIDE_CORLIB;MONO_CULTURE_DATA;LIBC;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_MACL;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_MACL;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>612,618,1635,1699</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>INSIDE_CORLIB;MONO_CULTURE_DATA;LIBC;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
+    <DefineConstants>INSIDE_CORLIB;MONO_CULTURE_DATA;LIBC;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_MACL;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;FEATURE_PAL;GENERICS_WORK;FEATURE_LIST_PREDICATES;FEATURE_SERIALIZATION;FEATURE_ASCII;FEATURE_LATIN1;FEATURE_UTF7;FEATURE_UTF32;MONO_HYBRID_ENCODING_SUPPORT;FEATURE_ASYNC_IO;NEW_EXPERIMENTAL_ASYNC_IO;FEATURE_UTF32;FEATURE_EXCEPTIONDISPATCHINFO;FEATURE_CORRUPTING_EXCEPTIONS;FEATURE_EXCEPTION_NOTIFICATIONS;FEATURE_STRONGNAME_MIGRATION;FEATURE_USE_LCID;FEATURE_FUSION;FEATURE_CRYPTO;FEATURE_X509_SECURESTRINGS;FEATURE_SYNCHRONIZATIONCONTEXT;FEATURE_SYNCHRONIZATIONCONTEXT_WAIT;FEATURE_MACL;FEATURE_REMOTING;MONO_COM;FEATURE_COMINTEROP;FEATURE_ROLE_BASED_SECURITY;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_THREAD_SUSPEND_RESUME;MONO_FEATURE_MULTIPLE_APPDOMAINS</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
   </PropertyGroup>\r
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
   <ItemGroup>\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\\system\runtime\reliability\criticalfinalizerobject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\\system\runtime\reliability\prepreparemethodattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\\system\runtime\reliability\reliabilitycontractattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\microsoft\win32\safehandles\safefilehandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\microsoft\win32\safehandles\saferegistryhandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\microsoft\win32\safehandles\safewaithandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\microsoft\win32\safehandles\win32safehandles.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\__filters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\__hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\_localdatastore.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\_localdatastoremgr.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\accessviolationexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\action.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\activator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\AggregateException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\AppContext\AppContext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\appdomainattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\appdomainunloadedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\applicationexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\applicationid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\argumentexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\argumentnullexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\argumentoutofrangeexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\arithmeticexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\arraysegment.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\arraytypemismatchexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\asynccallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\attribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\attributetargets.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\attributeusageattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\badimageformatexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\bitconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\boolean.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\buffer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\byte.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\cannotunloadappdomainexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\char.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\charenumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\clscompliantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\arraylist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\bitarray.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\caseinsensitivecomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\caseinsensitivehashcodeprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\collectionbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\comparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\compatiblecomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\ConcurrentDictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\ConcurrentQueue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\ConcurrentStack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\IProducerConsumerCollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\OrderablePartitioner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\Partitioner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\Concurrent\PartitionerStatic.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\dictionarybase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\dictionaryentry.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\emptyreadonlydictionaryinternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\comparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\debugview.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\dictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\equalitycomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\icollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\icomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\idictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ienumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ienumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\iequalitycomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ilist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ireadonlycollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ireadonlydictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\ireadonlylist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\keynotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\keyvaluepair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\generic\list.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\hashtable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\icollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\icomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\idictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\idictionaryenumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\ienumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\ienumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\iequalitycomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\ihashcodeprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\ilist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\istructuralcomparable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\istructuralequatable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\keyvaluepairs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\listdictionaryinternal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\objectmodel\collection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\objectmodel\keyedcollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\objectmodel\readonlycollection.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\objectmodel\readonlydictionary.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\queue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\readonlycollectionbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\sortedlist.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\stack.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\collections\structuralcomparisons.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolecanceleventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolecolor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolekey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolekeyinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolemodifiers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\consolespecialkey.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\contextboundobject.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\contextmarshalexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\contextstaticattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\convert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\datamisalignedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\datetime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\datetimekind.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\datetimeoffset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\dayofweek.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\dbnull.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\decimal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\defaultbinder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\assert.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\assertfilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\assertfilters.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\codeanalysis\suppressmessageattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\conditionalattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\contracts\contracts.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\contracts\contractsbcl.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\debuggerattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\eventing\eventactivityoptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\eventing\TraceLogging\EventSourceOptions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\eventing\TraceLogging\TraceLoggingEventTraits.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\diagnostics\eventing\winmeta.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\dividebyzeroexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\dllnotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\double.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\duplicatewaitobjectexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\empty.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\entrypointnotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\enum.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\eventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\eventhandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\executionengineexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\fieldaccessexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\flagsattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\formatexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\bidicategory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\calendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\calendaralgorithmtype.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\calendardata.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\calendarweekrule.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\CalendricalCalculationsHelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\charunicodeinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\chineselunisolarcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\compareinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\culturenotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\culturetypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\datetimeformat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\datetimeformatinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\datetimeformatinfoscanner.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\datetimeparse.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\datetimestyles.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\daylighttime.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\digitshapes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\eastasianlunisolarcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\globalizationassembly.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\gregoriancalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\gregoriancalendarhelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\gregoriancalendartypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\hebrewcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\hebrewnumber.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\hijricalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\japanesecalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\japaneselunisolarcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\juliancalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\koreancalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\koreanlunisolarcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\numberformatinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\numberstyles.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\Persiancalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\sortversion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\stringinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\taiwancalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\taiwanlunisolarcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\textelementenumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\textinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\thaibuddhistcalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\timespanformat.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\timespanparse.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\umalquracalendar.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\globalization\unicodecategory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\guid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iappdomain.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iappdomainsetup.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iasyncresult.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\icloneable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\icomparable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iconvertible.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\icustomformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\idisposable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iequatable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iformatprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iformattable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\indexoutofrangeexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\insufficientexecutionstackexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\insufficientmemoryexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\int16.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\int32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\int64.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\invalidcastexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\invalidoperationexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\invalidprogramexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\invalidtimezoneexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\__error.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\__hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\binaryreader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\binarywriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\bufferedstream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\directorynotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\drivenotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\endofstreamexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\fileloadexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\filenotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\ioexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\memorystream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\pathtoolongexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\pinnedbuffermemorystream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\stream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\streamreader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\streamwriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\stringreader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\stringwriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\textreader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\textwriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\unmanagedmemoryaccessor.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\unmanagedmemorystream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\io\unmanagedmemorystreamwrapper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iobservable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iobserver.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iprogress.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\iserviceobjectprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\Lazy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\math.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\memberaccessexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\methodaccessexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\midpointrounding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\missingfieldexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\missingmemberexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\missingmethodexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\multicastnotsupportedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\nonserializedattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\notfinitenumberexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\notimplementedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\notsupportedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\nullreferenceexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\number.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\objectdisposedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\obsoleteattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\operationcanceledexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\outofmemoryexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\overflowexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\paramarrayattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\paramsarray.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\platformnotsupportedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\progress.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\random.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\rankexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\ambiguousmatchexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\assemblyattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\assemblynameflags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\assemblynameproxy.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\binder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\bindingflags.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\callingconventions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\CustomAttributeExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\defaultmemberattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\emit\methodbuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\eventattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\fieldattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\genericparameterattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\icustomattributeprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\interfacemapping.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\introspectionextensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\invalidfiltercriteriaexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\ireflect.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\ireflectabletype.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\manifestresourceinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\mdimport.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\memberfilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\memberinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\memberinfoserializationholder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\membertypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\methodattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\methodbase.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\methodbody.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\methodimplattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\missing.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\obfuscateassemblyattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\obfuscationattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\parameterattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\parametermodifier.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\pointer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\propertyattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\reflectioncontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\resourceattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\RuntimeReflectionExtensions.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\typeattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\typedelegator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\typefilter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\reflection\typeinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\__fastresourcecomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\__hresults.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\filebasedresourcegroveler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\iresourcegroveler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\iresourcereader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\iresourcewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\looselylinkedresourcereference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\manifestbasedresourcegroveler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\missingmanifestresourceexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\missingsatelliteassemblyexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\neutralresourceslanguageattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourcefallbackmanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourcemanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourcereader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourceset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourcetypecode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\resourcewriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\runtimeresourceset.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\satellitecontractversionattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\resources\ultimateresourcefallbacklocation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\rttype.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\accessedthroughpropertyattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\assemblyattributesgohere.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\assemblysettingattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\AsyncMethodBuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\AsyncStateMachineAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\CallerFilePathAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\CallerLineNumberAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\CallerMemberNameAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\callingconvention.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\compilationrelaxations.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\compilergeneratedattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\compilerglobalscopeattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\compilermarshaloverride.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\customconstantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\datetimeconstantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\decimalconstantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\decoratednameattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\discardableattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\extensionattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\fixedaddressvaluetypeattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\fixedbufferattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\hascopysemanticsattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\IAsyncStateMachine.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\idispatchconstantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\indexernameattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\INotifyCompletion.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\internalsvisibletoattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isboxed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isbyvalue.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isconst.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\iscopyconstructed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isexplicitlydereferenced.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isimplicitlydereferenced.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isjitintrinsic.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\islong.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\ispinned.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\issignunspecifiedbyte.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isudtreturn.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\isvolatile.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\IteratorStateMachineAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\iunknownconstantattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\methodimplattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\nativecppclassattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\ReferenceAssemblyAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\requiredattributeattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\RuntimeCompatibilityAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\RuntimeWrappedException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\scopelessenumattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\specialnameattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\StateMachineAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\suppressildasmattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\suppressmergecheckattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\TaskAwaiter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\typedependencyattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\TypeForwardedFromAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\TypeForwardedToAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\unsafevaluetypeattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\compilerservices\YieldAwaitable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\exceptionservices\corruptingexceptioncommon.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\exceptionservices\exceptionnotification.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\exceptionservices\exceptionservicescommon.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\attributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ibindctx.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iconnectionpoint.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iconnectionpointcontainer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumconnectionpoints.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumconnections.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumerable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienummoniker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumstring.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumvariant.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iexpando.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\imoniker.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ipersistfile.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ireflect.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\irunningobjecttable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\istream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypecomp.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypeinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypeinfo2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypelib.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypelib2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\expando\iexpando.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\safehandle.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\interopservices\ucomienumconnections.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\NgenServicingAttributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\remoting\callcontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\deserializationeventhandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatterconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binarycommonclasses.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryenums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryformatterwriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binarymethodmessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectreader.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectwriter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryparser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryutilclasses.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\commonenums.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\ifieldinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\isoapmessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\sertrace.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\soapfault.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatters\soapmessage.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\formatterservices.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\ideserializationcallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\iformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\iformatterconverter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\iobjectreference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\iserializable.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\iserializationsurrogate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\isurrogateselector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\memberholder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\objectclonehelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\objectidgenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\objectmanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\safeserializationmanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationbinder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationeventscache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationfieldinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationinfoenumerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\serializationobjectmanager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\streamingcontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\surrogateselector.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\serialization\valuetypefixupinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\binarycompatibility.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\componentguaranteesattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\multitargetinghelpers.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\NonVersionableAttribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\resourceattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\targetframeworkattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\runtime\versioning\targetframeworkid.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\sbyte.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\attributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\Claim.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\ClaimsIdentity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\ClaimsPrincipal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\ClaimTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\ClaimValueTypes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\claims\RoleClaimProvider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\aes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\asymmetricalgorithm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\asymmetrickeyexchangedeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\asymmetrickeyexchangeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\asymmetricsignaturedeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\asymmetricsignatureformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\base64transforms.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\crypto.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\cryptoapitransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\cryptostream.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\derivebytes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\des.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\descryptoserviceprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\dsa.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\dsasignaturedeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\dsasignatureformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hashalgorithm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\HashAlgorithmName.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmac.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacmd5.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacripemd160.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacsha1.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacsha256.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacsha384.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\hmacsha512.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\icryptotransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\keyedhashalgorithm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\mactripledes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\maskgenerationmethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\md5.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\passwordderivebytes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\pkcs1maskgenerationmethod.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\randomnumbergenerator.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rc2.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rc2cryptoserviceprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rfc2898derivebytes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rijndael.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rijndaelmanaged.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rijndaelmanagedtransform.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\ripemd160.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\ripemd160managed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rsa.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\RSAEncryptionPadding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\RSAEncryptionPaddingMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rsaoaepkeyexchangedeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rsaoaepkeyexchangeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rsapkcs1keyexchangedeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\rsapkcs1keyexchangeformatter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\RSASignaturePadding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\RSASignaturePaddingMode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha1.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha1managed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha256.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha256managed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha384.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha384managed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha512.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\sha512managed.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\signaturedescription.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\symmetricalgorithm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\tripledes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\tripledescryptoserviceprovider.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\utils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\cryptography\x509certificates\x509utils.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\principal\genericidentity.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\securitycontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\securitydocument.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\util\hex.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\util\parser.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\security\util\tokenizer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\serializableattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\single.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\stackoverflowexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\string.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\stringcomparer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\stringfreezingattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\systemexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\asciiencoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\codepageencoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decoderbestfitfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decoderexceptionfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decoderfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decodernls.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\decoderreplacementfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoderbestfitfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoderexceptionfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoderfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encodernls.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoderreplacementfallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\encodinginfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\mlangcodepageencoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\stringbuilder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\stringbuildercache.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\surrogateencoder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\unicodeencoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\utf32encoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\utf7encoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\text\utf8encoding.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threadattributes.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\abandonedmutexexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\apartmentstate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\autoresetevent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\CancellationToken.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\CancellationTokenRegistration.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\CancellationTokenSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\CountdownEvent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\eventresetmode.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\executioncontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\LazyInitializer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\lockrecursionexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\manualresetevent.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\ManualResetEventSlim.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\parameterizedthreadstart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\semaphorefullexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\SemaphoreSlim.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\sendorpostcallback.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\SpinLock.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\SpinWait.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\synchronizationcontext.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\synchronizationlockexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\AsyncCausalityTracer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\BeginEndAwaitableAdapter.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\ConcurrentExclusiveSchedulerPair.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\Future.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\FutureFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\Parallel.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\ParallelLoopState.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\ParallelRangeManager.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\ProducerConsumerQueues.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\Task.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskCanceledException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskCompletionSource.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskContinuation.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskExceptionHolder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskFactory.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskScheduler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskSchedulerException.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\TaskToApm.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\Tasks\ThreadPoolTaskScheduler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\thread.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadabortexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadinterruptedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\ThreadLocal.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadpool.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadpriority.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadstart.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadstartexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadstate.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\threadstateexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\timeout.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threading\waithandlecannotbeopenedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\threadstaticattribute.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\throwhelper.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\timeoutexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\timespan.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\timezoneinfo.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\timezonenotfoundexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\tuple.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\type.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\typeaccessexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\typedreference.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\typeinitializationexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\typeloadexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\typeunloadedexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\uint16.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\uint32.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\uint64.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\unauthorizedaccessexception.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\unhandledexceptioneventargs.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\unhandledexceptioneventhandler.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\unityserializationholder.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\unsafecharbuffer.cs" />\r
-    <Compile Include="..\..\..\external\referencesource\mscorlib\system\version.cs" />\r
+    <Compile Include="..\..\build\common\AssemblyRef.cs" />\r
     <Compile Include="..\..\build\common\Consts.cs" />\r
     <Compile Include="..\..\build\common\Locale.cs" />\r
     <Compile Include="..\..\build\common\MonoTODOAttribute.cs" />\r
     <Compile Include="..\Mono.Security\Mono.Security\BitConverterLE.cs" />\r
     <Compile Include="..\Mono.Security\Mono.Security\PKCS7.cs" />\r
     <Compile Include="..\Mono.Security\Mono.Security\StrongName.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\\system\runtime\reliability\criticalfinalizerobject.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\\system\runtime\reliability\prepreparemethodattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\\system\runtime\reliability\reliabilitycontractattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\microsoft\win32\safehandles\safefilehandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\microsoft\win32\safehandles\saferegistryhandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\microsoft\win32\safehandles\safewaithandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\microsoft\win32\safehandles\win32safehandles.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\__filters.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\__hresults.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\_localdatastore.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\_localdatastoremgr.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\accessviolationexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\action.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\activator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\AggregateException.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\AppContext\AppContext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\appdomainattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\appdomainunloadedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\applicationexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\applicationid.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\argumentexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\argumentnullexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\argumentoutofrangeexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\arithmeticexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\arraysegment.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\arraytypemismatchexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\asynccallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\attribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\attributetargets.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\attributeusageattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\badimageformatexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\bitconverter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\boolean.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\buffer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\byte.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\cannotunloadappdomainexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\char.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\charenumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\clscompliantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\arraylist.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\bitarray.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\caseinsensitivecomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\caseinsensitivehashcodeprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\collectionbase.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\comparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\compatiblecomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\ConcurrentDictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\ConcurrentQueue.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\ConcurrentStack.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\IProducerConsumerCollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\OrderablePartitioner.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\Partitioner.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\Concurrent\PartitionerStatic.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\dictionarybase.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\dictionaryentry.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\emptyreadonlydictionaryinternal.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\comparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\debugview.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\dictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\equalitycomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\icollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\icomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\idictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ienumerable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ienumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\iequalitycomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ilist.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ireadonlycollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ireadonlydictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\ireadonlylist.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\keynotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\keyvaluepair.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\generic\list.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\hashtable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\icollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\icomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\idictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\idictionaryenumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\ienumerable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\ienumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\iequalitycomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\ihashcodeprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\ilist.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\istructuralcomparable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\istructuralequatable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\keyvaluepairs.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\listdictionaryinternal.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\objectmodel\collection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\objectmodel\keyedcollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\objectmodel\readonlycollection.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\objectmodel\readonlydictionary.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\queue.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\readonlycollectionbase.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\sortedlist.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\stack.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\collections\structuralcomparisons.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolecanceleventargs.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolecolor.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolekey.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolekeyinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolemodifiers.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\consolespecialkey.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\contextboundobject.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\contextmarshalexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\contextstaticattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\convert.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\datamisalignedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\datetime.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\datetimekind.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\datetimeoffset.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\dayofweek.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\dbnull.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\decimal.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\defaultbinder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\assert.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\assertfilter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\assertfilters.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\codeanalysis\suppressmessageattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\conditionalattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\contracts\contracts.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\contracts\contractsbcl.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\debuggerattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\eventing\eventactivityoptions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\eventing\TraceLogging\EventSourceOptions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\eventing\TraceLogging\TraceLoggingEventTraits.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\diagnostics\eventing\winmeta.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\dividebyzeroexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\dllnotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\double.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\duplicatewaitobjectexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\empty.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\entrypointnotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\enum.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\eventargs.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\eventhandler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\exception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\executionengineexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\fieldaccessexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\flagsattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\formatexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\bidicategory.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\calendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\calendaralgorithmtype.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\calendardata.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\calendarweekrule.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\CalendricalCalculationsHelper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\charunicodeinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\chineselunisolarcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\compareinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\culturenotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\culturetypes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\datetimeformat.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\datetimeformatinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\datetimeformatinfoscanner.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\datetimeparse.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\datetimestyles.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\daylighttime.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\digitshapes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\eastasianlunisolarcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\globalizationassembly.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\gregoriancalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\gregoriancalendarhelper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\gregoriancalendartypes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\hebrewcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\hebrewnumber.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\hijricalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\japanesecalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\japaneselunisolarcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\juliancalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\koreancalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\koreanlunisolarcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\numberformatinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\numberstyles.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\Persiancalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\sortversion.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\stringinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\taiwancalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\taiwanlunisolarcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\textelementenumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\textinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\thaibuddhistcalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\timespanformat.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\timespanparse.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\umalquracalendar.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\globalization\unicodecategory.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\guid.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iappdomain.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iappdomainsetup.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iasyncresult.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\icloneable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\icomparable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iconvertible.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\icustomformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\idisposable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iequatable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iformatprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iformattable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\indexoutofrangeexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\insufficientexecutionstackexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\insufficientmemoryexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\int16.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\int32.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\int64.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\invalidcastexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\invalidoperationexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\invalidprogramexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\invalidtimezoneexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\__error.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\__hresults.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\binaryreader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\binarywriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\bufferedstream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\directorynotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\drivenotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\endofstreamexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\fileinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\fileloadexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\filenotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\filesysteminfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\ioexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\memorystream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\pathtoolongexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\pinnedbuffermemorystream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\stream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\streamreader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\streamwriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\stringreader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\stringwriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\textreader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\textwriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\unmanagedmemoryaccessor.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\unmanagedmemorystream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\io\unmanagedmemorystreamwrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iobservable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iobserver.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iprogress.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\iserviceobjectprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\Lazy.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\math.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\memberaccessexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\methodaccessexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\midpointrounding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\missingfieldexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\missingmemberexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\missingmethodexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\multicastnotsupportedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\nonserializedattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\notfinitenumberexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\notimplementedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\notsupportedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\nullreferenceexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\number.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\objectdisposedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\obsoleteattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\operationcanceledexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\outofmemoryexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\overflowexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\paramarrayattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\paramsarray.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\platformnotsupportedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\progress.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\random.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\rankexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\ambiguousmatchexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\assemblyattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\assemblynameflags.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\assemblynameproxy.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\binder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\bindingflags.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\callingconventions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\CustomAttributeExtensions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\defaultmemberattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\emit\methodbuilder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\emit\symboltype.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\eventattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\fieldattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\genericparameterattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\icustomattributeprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\interfacemapping.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\introspectionextensions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\invalidfiltercriteriaexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\ireflect.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\ireflectabletype.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\manifestresourceinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\mdimport.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\memberfilter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\memberinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\memberinfoserializationholder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\membertypes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\methodattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\methodbase.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\methodbody.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\methodimplattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\methodinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\missing.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\obfuscateassemblyattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\obfuscationattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\parameterattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\parametermodifier.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\pointer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\propertyattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\reflectioncontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\resourceattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\RuntimeReflectionExtensions.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\typeattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\typedelegator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\typefilter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\reflection\typeinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resid.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\__fastresourcecomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\__hresults.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\filebasedresourcegroveler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\iresourcegroveler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\iresourcereader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\iresourcewriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\looselylinkedresourcereference.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\manifestbasedresourcegroveler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\missingmanifestresourceexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\missingsatelliteassemblyexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\neutralresourceslanguageattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourcefallbackmanager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourcemanager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourcereader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourceset.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourcetypecode.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\resourcewriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\runtimeresourceset.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\satellitecontractversionattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\resources\ultimateresourcefallbacklocation.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\rttype.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\accessedthroughpropertyattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\assemblyattributesgohere.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\assemblysettingattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\AsyncMethodBuilder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\AsyncStateMachineAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\CallerFilePathAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\CallerLineNumberAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\CallerMemberNameAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\callingconvention.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\compilationrelaxations.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\compilergeneratedattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\compilerglobalscopeattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\compilermarshaloverride.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\customconstantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\datetimeconstantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\decimalconstantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\decoratednameattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\discardableattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\extensionattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\fixedaddressvaluetypeattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\fixedbufferattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\hascopysemanticsattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\IAsyncStateMachine.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\idispatchconstantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\indexernameattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\INotifyCompletion.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\internalsvisibletoattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isboxed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isbyvalue.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isconst.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\iscopyconstructed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isexplicitlydereferenced.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isimplicitlydereferenced.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isjitintrinsic.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\islong.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\ispinned.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\issignunspecifiedbyte.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isudtreturn.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\isvolatile.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\IteratorStateMachineAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\iunknownconstantattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\methodimplattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\nativecppclassattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\ReferenceAssemblyAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\requiredattributeattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\RuntimeCompatibilityAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\RuntimeWrappedException.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\scopelessenumattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\specialnameattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\StateMachineAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\suppressildasmattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\suppressmergecheckattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\TaskAwaiter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\typedependencyattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\TypeForwardedFromAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\TypeForwardedToAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\unsafevaluetypeattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\compilerservices\YieldAwaitable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\exceptionservices\corruptingexceptioncommon.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\exceptionservices\exceptionnotification.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\exceptionservices\exceptionservicescommon.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\arraywithoffset.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\attributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\bstrwrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\callingconvention.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\charset.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\comexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\commembertype.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ibindctx.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iconnectionpoint.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iconnectionpointcontainer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumconnectionpoints.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumconnections.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumerable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienummoniker.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumstring.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ienumvariant.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\iexpando.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\imoniker.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ipersistfile.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\ireflect.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\irunningobjecttable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\istream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypecomp.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypeinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypeinfo2.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypelib.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ComTypes\itypelib2.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\criticalhandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\currencywrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\dispatchwrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\errorwrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\expando\iexpando.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\externalexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\handleref.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\icustomadapter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\icustomfactory.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\icustommarshaler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\icustomqueryinterface.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\invalidcomobjectexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\invalidolevarianttypeexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\iregistrationservices.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\layoutkind.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\marshaldirectiveexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\objectcreationdelegate.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\runtimeenvironment.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\safearrayrankmismatchexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\safearraytypemismatchexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\safehandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\sehexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\ucomienumconnections.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\unknownwrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\interopservices\variantWrapper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\NgenServicingAttributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\remoting\callcontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\deserializationeventhandler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatterconverter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binarycommonclasses.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryconverter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryenums.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryformatterwriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binarymethodmessage.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectreader.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryobjectwriter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryparser.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\binary\binaryutilclasses.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\commonenums.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\ifieldinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\isoapmessage.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\sertrace.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\soapfault.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatters\soapmessage.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\formatterservices.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\ideserializationcallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\iformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\iformatterconverter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\iobjectreference.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\iserializable.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\iserializationsurrogate.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\isurrogateselector.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\memberholder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\objectclonehelper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\objectidgenerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\objectmanager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\safeserializationmanager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationbinder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationeventscache.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationfieldinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationinfoenumerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\serializationobjectmanager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\streamingcontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\surrogateselector.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\serialization\valuetypefixupinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\binarycompatibility.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\componentguaranteesattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\multitargetinghelpers.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\NonVersionableAttribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\resourceattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\targetframeworkattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\runtime\versioning\targetframeworkid.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\sbyte.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\attributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\Claim.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\ClaimsIdentity.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\ClaimsPrincipal.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\ClaimTypes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\ClaimValueTypes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\claims\RoleClaimProvider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\aes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\asymmetricalgorithm.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\asymmetrickeyexchangedeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\asymmetrickeyexchangeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\asymmetricsignaturedeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\asymmetricsignatureformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\base64transforms.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\crypto.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\cryptoapitransform.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\cryptostream.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\derivebytes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\des.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\descryptoserviceprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\dsa.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\dsasignaturedeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\dsasignatureformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hashalgorithm.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\HashAlgorithmName.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmac.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacmd5.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacripemd160.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacsha1.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacsha256.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacsha384.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\hmacsha512.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\icryptotransform.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\keyedhashalgorithm.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\mactripledes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\maskgenerationmethod.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\md5.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\passwordderivebytes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\pkcs1maskgenerationmethod.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\randomnumbergenerator.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rc2.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rc2cryptoserviceprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rfc2898derivebytes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rijndael.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rijndaelmanaged.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rijndaelmanagedtransform.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\ripemd160.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\ripemd160managed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rsa.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\RSAEncryptionPadding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\RSAEncryptionPaddingMode.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rsaoaepkeyexchangedeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rsaoaepkeyexchangeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rsapkcs1keyexchangedeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\rsapkcs1keyexchangeformatter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\RSASignaturePadding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\RSASignaturePaddingMode.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha1.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha1managed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha256.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha256managed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha384.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha384managed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha512.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\sha512managed.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\signaturedescription.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\symmetricalgorithm.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\tripledes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\tripledescryptoserviceprovider.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\utils.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\cryptography\x509certificates\x509utils.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\principal\genericidentity.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\securitycontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\securitydocument.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\util\hex.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\util\parser.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\security\util\tokenizer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\serializableattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\single.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\stackoverflowexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\string.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\stringcomparer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\stringfreezingattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\systemexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\asciiencoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\codepageencoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decoder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decoderbestfitfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decoderexceptionfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decoderfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decodernls.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\decoderreplacementfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoderbestfitfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoderexceptionfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoderfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encodernls.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoderreplacementfallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\encodinginfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\mlangcodepageencoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\stringbuilder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\stringbuildercache.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\surrogateencoder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\unicodeencoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\utf32encoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\utf7encoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\text\utf8encoding.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threadattributes.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\abandonedmutexexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\apartmentstate.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\autoresetevent.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\CancellationToken.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\CancellationTokenRegistration.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\CancellationTokenSource.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\CountdownEvent.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\eventresetmode.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\executioncontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\LazyInitializer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\lockrecursionexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\manualresetevent.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\ManualResetEventSlim.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\monitor.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\parameterizedthreadstart.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\semaphorefullexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\SemaphoreSlim.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\sendorpostcallback.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\SpinLock.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\SpinWait.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\synchronizationcontext.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\synchronizationlockexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\AsyncCausalityTracer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\BeginEndAwaitableAdapter.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\ConcurrentExclusiveSchedulerPair.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\Future.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\FutureFactory.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\Parallel.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\ParallelLoopState.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\ParallelRangeManager.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\ProducerConsumerQueues.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\Task.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskCanceledException.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskCompletionSource.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskContinuation.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskExceptionHolder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskFactory.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskScheduler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskSchedulerException.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\TaskToApm.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\Tasks\ThreadPoolTaskScheduler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\thread.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadabortexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadinterruptedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\ThreadLocal.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadpool.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadpriority.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadstart.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadstartexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadstate.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\threadstateexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\timeout.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\waithandle.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threading\waithandlecannotbeopenedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\threadstaticattribute.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\throwhelper.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\timeoutexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\timespan.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\timezoneinfo.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\timezonenotfoundexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\tuple.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\type.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\typeaccessexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\typedreference.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\typeinitializationexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\typeloadexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\typeunloadedexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\uint16.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\uint32.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\uint64.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\unauthorizedaccessexception.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\unhandledexceptioneventargs.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\unhandledexceptioneventhandler.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\unityserializationholder.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\unsafecharbuffer.cs" />\r
+    <Compile Include="..\referencesource\mscorlib\system\version.cs" />\r
     <Compile Include="Assembly\AssemblyInfo.cs" />\r
     <Compile Include="coreclr\AsyncLocal.cs" />\r
     <Compile Include="coreclr\DisablePrivateReflectionAttribute.cs" />\r
     <Compile Include="ReferenceSources\HashHelpers.cs" />\r
     <Compile Include="ReferenceSources\JitHelpers.cs" />\r
     <Compile Include="ReferenceSources\MethodBase.cs" />\r
+    <Compile Include="ReferenceSources\NativeMethods.cs" />\r
     <Compile Include="ReferenceSources\ParseNumbers.cs" />\r
     <Compile Include="ReferenceSources\RemotingFieldCachedData.cs" />\r
     <Compile Include="ReferenceSources\RuntimeHandles.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventAttribute.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventCommand.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventCommandEventArgs.cs" />\r
+    <Compile Include="System.Diagnostics.Tracing\EventListener.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventSource.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventSourceAttribute.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\EventSourceSettings.cs" />\r
+    <Compile Include="System.Diagnostics.Tracing\EventWrittenEventArgs.cs" />\r
     <Compile Include="System.Diagnostics.Tracing\NonEventAttribute.cs" />\r
     <Compile Include="System.Diagnostics\Debugger.cs" />\r
     <Compile Include="System.Diagnostics\StackFrame.cs" />\r
     <Compile Include="System.IO\File.cs" />\r
     <Compile Include="System.IO\FileAccess.cs" />\r
     <Compile Include="System.IO\FileAttributes.cs" />\r
-    <Compile Include="System.IO\FileInfo.cs" />\r
     <Compile Include="System.IO\FileMode.cs" />\r
     <Compile Include="System.IO\FileOptions.cs" />\r
     <Compile Include="System.IO\FileShare.cs" />\r
     <Compile Include="System.IO\FileStream.cs" />\r
     <Compile Include="System.IO\FileStreamAsyncResult.cs" />\r
-    <Compile Include="System.IO\FileSystemInfo.cs" />\r
     <Compile Include="System.IO\HGlobalUnmanagedMemoryStream.cs" />\r
     <Compile Include="System.IO\LogcatTextWriter.cs" />\r
     <Compile Include="System.IO\MonoFileType.cs" />\r
     <Compile Include="System.Reflection\ImageFileMachine.cs" />\r
     <Compile Include="System.Reflection\LocalVariableInfo.cs" />\r
     <Compile Include="System.Reflection\MethodBody.cs" />\r
-    <Compile Include="System.Reflection\MethodInfo.cs" />\r
     <Compile Include="System.Reflection\Module.cs" />\r
     <Compile Include="System.Reflection\ModuleResolveEventHandler.cs" />\r
     <Compile Include="System.Reflection\MonoAssembly.cs" />\r
     <Compile Include="System.Runtime.InteropServices\_Thread.cs" />\r
     <Compile Include="System.Runtime.InteropServices\_Type.cs" />\r
     <Compile Include="System.Runtime.InteropServices\_TypeBuilder.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ArrayWithOffset.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\AssemblyRegistrationFlags.cs" />\r
     <Compile Include="System.Runtime.InteropServices\BIND_OPTS.cs" />\r
     <Compile Include="System.Runtime.InteropServices\BINDPTR.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\BStrWrapper.cs" />\r
     <Compile Include="System.Runtime.InteropServices\CALLCONV.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CallingConvention.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CharSet.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\COMException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ComMemberType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CriticalHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\CurrencyWrapper.cs" />\r
     <Compile Include="System.Runtime.InteropServices\DESCKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\DispatchWrapper.cs" />\r
     <Compile Include="System.Runtime.InteropServices\DISPPARAMS.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ELEMDESC.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ErrorWrapper.cs" />\r
     <Compile Include="System.Runtime.InteropServices\EXCEPINFO.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ExporterEventKind.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ExtensibleClassFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ExternalException.cs" />\r
     <Compile Include="System.Runtime.InteropServices\FILETIME.cs" />\r
     <Compile Include="System.Runtime.InteropServices\FUNCDESC.cs" />\r
     <Compile Include="System.Runtime.InteropServices\FUNCFLAGS.cs" />\r
     <Compile Include="System.Runtime.InteropServices\FUNCKIND.cs" />\r
     <Compile Include="System.Runtime.InteropServices\GCHandle.cs" />\r
     <Compile Include="System.Runtime.InteropServices\GCHandleType.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\HandleRef.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomAdapter.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomFactory.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ICustomMarshaler.cs" />\r
     <Compile Include="System.Runtime.InteropServices\IDLDESC.cs" />\r
     <Compile Include="System.Runtime.InteropServices\IDLFLAG.cs" />\r
     <Compile Include="System.Runtime.InteropServices\IErrorInfo.cs" />\r
     <Compile Include="System.Runtime.InteropServices\IMPLTYPEFLAGS.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ImporterEventKind.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidComObjectException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\InvalidOleVariantTypeException.cs" />\r
     <Compile Include="System.Runtime.InteropServices\INVOKEKIND.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\IRegistrationServices.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ITypeLibConverter.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNameProvider.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ITypeLibExporterNotifySink.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ITypeLibImporterNotifySink.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\LayoutKind.cs" />\r
     <Compile Include="System.Runtime.InteropServices\LIBFLAGS.cs" />\r
     <Compile Include="System.Runtime.InteropServices\ManagedErrorInfo.cs" />\r
     <Compile Include="System.Runtime.InteropServices\Marshal.cs" />\r
     <Compile Include="System.Runtime.InteropServices\MarshalAsAttribute.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\MarshalDirectiveException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\ObjectCreationDelegate.cs" />\r
     <Compile Include="System.Runtime.InteropServices\PARAMDESC.cs" />\r
     <Compile Include="System.Runtime.InteropServices\PARAMFLAG.cs" />\r
     <Compile Include="System.Runtime.InteropServices\RegistrationClassContext.cs" />\r
     <Compile Include="System.Runtime.InteropServices\RegistrationConnectionType.cs" />\r
     <Compile Include="System.Runtime.InteropServices\RegistrationServices.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\RuntimeEnvironment.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayRankMismatchException.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SafeArrayTypeMismatchException.cs" />\r
     <Compile Include="System.Runtime.InteropServices\SafeBuffer.cs" />\r
     <Compile Include="System.Runtime.InteropServices\SafeHandle.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\SEHException.cs" />\r
     <Compile Include="System.Runtime.InteropServices\STATSTG.cs" />\r
     <Compile Include="System.Runtime.InteropServices\SYSKIND.cs" />\r
     <Compile Include="System.Runtime.InteropServices\TYPEATTR.cs" />\r
     <Compile Include="System.Runtime.InteropServices\UCOMITypeComp.cs" />\r
     <Compile Include="System.Runtime.InteropServices\UCOMITypeInfo.cs" />\r
     <Compile Include="System.Runtime.InteropServices\UCOMITypeLib.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\UnknownWrapper.cs" />\r
     <Compile Include="System.Runtime.InteropServices\VARDESC.cs" />\r
     <Compile Include="System.Runtime.InteropServices\VARFLAGS.cs" />\r
-    <Compile Include="System.Runtime.InteropServices\VariantWrapper.cs" />\r
     <Compile Include="System.Runtime.Remoting.Activation\ActivationServices.cs" />\r
     <Compile Include="System.Runtime.Remoting.Activation\ActivatorLevel.cs" />\r
     <Compile Include="System.Runtime.Remoting.Activation\AppDomainLevelActivator.cs" />\r
     <Compile Include="System.Security.AccessControl\SddlAccessRight.cs" />\r
     <Compile Include="System.Security.AccessControl\SecurityInfos.cs" />\r
     <Compile Include="System.Security.AccessControl\SystemAcl.cs" />\r
+    <Compile Include="System.Security.Cryptography.X509Certificates\INativeCertificateHelper.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509Certificate20.cs" />\r
     <Compile Include="System.Security.Cryptography.X509Certificates\X509CertificateImpl.cs" />\r
     <Compile Include="System\EmptyArray.cs" />\r
     <Compile Include="System\Environment.cs" />\r
     <Compile Include="System\EnvironmentVariableTarget.cs" />\r
-    <Compile Include="System\Exception.cs" />\r
     <Compile Include="System\GC.cs" />\r
     <Compile Include="System\GCCollectionMode.cs" />\r
     <Compile Include="System\GCNotificationStatus.cs" />\r
     <Compile Include="System\Guid.cs" />\r
-    <Compile Include="System\Guid.MonoTouch.cs" />\r
     <Compile Include="System\IConsoleDriver.cs" />\r
     <Compile Include="System\IntPtr.cs" />\r
     <Compile Include="System\KnownTerminals.cs" />\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index d1202a94e80eccaa411fd34a533e27d8925a0ae1..323efb3eba7884f165d5b975321636126b222698 100644 (file)
@@ -23,6 +23,8 @@ Mono.Globalization.Unicode/SortKeyBuffer.cs
 Mono.Globalization.Unicode/Normalization.cs
 Mono.Globalization.Unicode/NormalizationTableUtil.cs
 Mono/Runtime.cs
+Mono/RuntimeStructs.cs
+Mono/RuntimeHandles.cs
 Mono/DataConverter.cs
 Mono.Interop/ComInteropProxy.cs
 Mono.Interop/IDispatch.cs
@@ -338,66 +340,41 @@ System.Runtime.InteropServices/_SignatureHelper.cs
 System.Runtime.InteropServices/_Thread.cs
 System.Runtime.InteropServices/_Type.cs
 System.Runtime.InteropServices/_TypeBuilder.cs
-System.Runtime.InteropServices/ArrayWithOffset.cs
-System.Runtime.InteropServices/AssemblyRegistrationFlags.cs
 System.Runtime.InteropServices/BIND_OPTS.cs
 System.Runtime.InteropServices/BINDPTR.cs
-System.Runtime.InteropServices/BStrWrapper.cs
 System.Runtime.InteropServices/CALLCONV.cs
-System.Runtime.InteropServices/CallingConvention.cs
-System.Runtime.InteropServices/CharSet.cs
-System.Runtime.InteropServices/COMException.cs
-System.Runtime.InteropServices/ComMemberType.cs
-System.Runtime.InteropServices/CriticalHandle.cs
-System.Runtime.InteropServices/CurrencyWrapper.cs
 System.Runtime.InteropServices/DESCKIND.cs
-System.Runtime.InteropServices/DispatchWrapper.cs
 System.Runtime.InteropServices/DISPPARAMS.cs
 System.Runtime.InteropServices/ELEMDESC.cs
-System.Runtime.InteropServices/ErrorWrapper.cs
 System.Runtime.InteropServices/EXCEPINFO.cs
 System.Runtime.InteropServices/ExporterEventKind.cs
 System.Runtime.InteropServices/ExtensibleClassFactory.cs
-System.Runtime.InteropServices/ExternalException.cs
 System.Runtime.InteropServices/FILETIME.cs
 System.Runtime.InteropServices/FUNCDESC.cs
 System.Runtime.InteropServices/FUNCFLAGS.cs
 System.Runtime.InteropServices/FUNCKIND.cs
 System.Runtime.InteropServices/GCHandle.cs
 System.Runtime.InteropServices/GCHandleType.cs
-System.Runtime.InteropServices/HandleRef.cs
-System.Runtime.InteropServices/ICustomAdapter.cs
-System.Runtime.InteropServices/ICustomFactory.cs
-System.Runtime.InteropServices/ICustomMarshaler.cs
 System.Runtime.InteropServices/IDLDESC.cs
 System.Runtime.InteropServices/IDLFLAG.cs
 System.Runtime.InteropServices/IErrorInfo.cs
 System.Runtime.InteropServices/IMPLTYPEFLAGS.cs
 System.Runtime.InteropServices/INVOKEKIND.cs
-System.Runtime.InteropServices/IRegistrationServices.cs
 System.Runtime.InteropServices/ITypeLibConverter.cs
 System.Runtime.InteropServices/ITypeLibExporterNameProvider.cs
 System.Runtime.InteropServices/ITypeLibExporterNotifySink.cs
 System.Runtime.InteropServices/ITypeLibImporterNotifySink.cs
 System.Runtime.InteropServices/ImporterEventKind.cs
-System.Runtime.InteropServices/InvalidComObjectException.cs
-System.Runtime.InteropServices/InvalidOleVariantTypeException.cs
 System.Runtime.InteropServices/LIBFLAGS.cs
-System.Runtime.InteropServices/LayoutKind.cs
 System.Runtime.InteropServices/ManagedErrorInfo.cs
 System.Runtime.InteropServices/Marshal.cs
 System.Runtime.InteropServices/MarshalAsAttribute.cs
-System.Runtime.InteropServices/MarshalDirectiveException.cs
-System.Runtime.InteropServices/ObjectCreationDelegate.cs
 System.Runtime.InteropServices/PARAMDESC.cs
 System.Runtime.InteropServices/PARAMFLAG.cs
 System.Runtime.InteropServices/RegistrationClassContext.cs
 System.Runtime.InteropServices/RegistrationConnectionType.cs
-System.Runtime.InteropServices/SEHException.cs
 System.Runtime.InteropServices/STATSTG.cs
 System.Runtime.InteropServices/RegistrationServices.cs
-System.Runtime.InteropServices/SafeArrayRankMismatchException.cs
-System.Runtime.InteropServices/SafeArrayTypeMismatchException.cs
 System.Runtime.InteropServices/SafeBuffer.cs
 System.Runtime.InteropServices/SafeHandle.cs
 System.Runtime.InteropServices/SYSKIND.cs
@@ -423,10 +400,8 @@ System.Runtime.InteropServices/UCOMIStream.cs
 System.Runtime.InteropServices/UCOMITypeComp.cs
 System.Runtime.InteropServices/UCOMITypeInfo.cs
 System.Runtime.InteropServices/UCOMITypeLib.cs
-System.Runtime.InteropServices/UnknownWrapper.cs
 System.Runtime.InteropServices/VARDESC.cs
 System.Runtime.InteropServices/VARFLAGS.cs
-System.Runtime.InteropServices/VariantWrapper.cs
 
 System.Runtime.InteropServices.WindowsRuntime/DefaultInterfaceAttribute.cs
 System.Runtime.InteropServices.WindowsRuntime/DesignerNamespaceResolveEventArgs.cs
@@ -1287,10 +1262,37 @@ ReferenceSources/SecurityContext.cs
 ../referencesource/mscorlib/system/runtime/exceptionservices/exceptionnotification.cs
 ../referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs
 
+../referencesource/mscorlib/system/runtime/interopservices/arraywithoffset.cs
 ../referencesource/mscorlib/system/runtime/interopservices/attributes.cs
+../referencesource/mscorlib/system/runtime/interopservices/bstrwrapper.cs
+../referencesource/mscorlib/system/runtime/interopservices/callingconvention.cs
+../referencesource/mscorlib/system/runtime/interopservices/charset.cs
+../referencesource/mscorlib/system/runtime/interopservices/comexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/commembertype.cs
+../referencesource/mscorlib/system/runtime/interopservices/criticalhandle.cs
+../referencesource/mscorlib/system/runtime/interopservices/currencywrapper.cs
+../referencesource/mscorlib/system/runtime/interopservices/dispatchwrapper.cs
+../referencesource/mscorlib/system/runtime/interopservices/errorwrapper.cs
+../referencesource/mscorlib/system/runtime/interopservices/externalexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/handleref.cs
+../referencesource/mscorlib/system/runtime/interopservices/icustomadapter.cs
+../referencesource/mscorlib/system/runtime/interopservices/icustomfactory.cs
+../referencesource/mscorlib/system/runtime/interopservices/icustommarshaler.cs
+../referencesource/mscorlib/system/runtime/interopservices/icustomqueryinterface.cs
+../referencesource/mscorlib/system/runtime/interopservices/invalidcomobjectexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/invalidolevarianttypeexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/iregistrationservices.cs
+../referencesource/mscorlib/system/runtime/interopservices/layoutkind.cs
+../referencesource/mscorlib/system/runtime/interopservices/marshaldirectiveexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/objectcreationdelegate.cs
 ../referencesource/mscorlib/system/runtime/interopservices/runtimeenvironment.cs
+../referencesource/mscorlib/system/runtime/interopservices/safearrayrankmismatchexception.cs
+../referencesource/mscorlib/system/runtime/interopservices/safearraytypemismatchexception.cs
 ../referencesource/mscorlib/system/runtime/interopservices/safehandle.cs
+../referencesource/mscorlib/system/runtime/interopservices/sehexception.cs
 ../referencesource/mscorlib/system/runtime/interopservices/ucomienumconnections.cs
+../referencesource/mscorlib/system/runtime/interopservices/unknownwrapper.cs
+../referencesource/mscorlib/system/runtime/interopservices/variantWrapper.cs
 
 ../referencesource/mscorlib/system/runtime/interopservices/ComTypes/ibindctx.cs
 ../referencesource/mscorlib/system/runtime/interopservices/ComTypes/iconnectionpoint.cs
@@ -1556,6 +1558,7 @@ ReferenceSources/SecurityContext.cs
 ../referencesource/mscorlib/system/threading/lockrecursionexception.cs
 ../referencesource/mscorlib/system/threading/manualresetevent.cs
 ../referencesource/mscorlib/system/threading/ManualResetEventSlim.cs
+../referencesource/mscorlib/system/threading/monitor.cs
 ../referencesource/mscorlib/system/threading/parameterizedthreadstart.cs
 ../referencesource/mscorlib/system/threading/semaphorefullexception.cs
 ../referencesource/mscorlib/system/threading/SemaphoreSlim.cs
diff --git a/mcs/class/corlib/corlib_cmp.dll.excludes b/mcs/class/corlib/corlib_cmp.dll.excludes
deleted file mode 100644 (file)
index 1ad6431..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-System/Object.cs
-System/ValueType.cs
-System/Enum.cs
-System/Delegate.cs
-System/MulticastDelegate.cs
-System.Runtime.CompilerServices/RuntimeHelpers.cs
-System/Decimal.cs
-System/DecimalFormatter.cs
diff --git a/mcs/class/corlib/mobile_static_corlib_test.dll.exclude.sources b/mcs/class/corlib/mobile_static_corlib_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..eb17a10
--- /dev/null
@@ -0,0 +1,131 @@
+Microsoft.Win32/RegistryKeyTest.cs
+System.Diagnostics.Contracts/ContractAssertTest.cs
+System.Diagnostics.Contracts/ContractAssumeTest.cs
+System.Diagnostics.Contracts/ContractCollectionMethodsTest.cs
+System.Diagnostics.Contracts/ContractHelperTest.cs
+System.Diagnostics.Contracts/ContractMarkerMethodsTest.cs
+System.Diagnostics.Contracts/ContractMustUseRewriterTest.cs
+System.Diagnostics.Contracts/Helpers/RunAgainstReferenceAttribute.cs
+System.Diagnostics.Contracts/Helpers/TestContractBase.cs
+System.Reflection.Emit/AssemblyBuilderAccessTest.cs
+System.Reflection.Emit/AssemblyBuilderTest.cs
+System.Reflection.Emit/ConstructorBuilderTest.cs
+System.Reflection.Emit/ConstructorOnTypeBuilderInstTest.cs
+System.Reflection.Emit/CustomAttributeBuilderTest.cs
+System.Reflection.Emit/DerivedTypesTest.cs
+System.Reflection.Emit/DynamicILInfoTest.cs
+System.Reflection.Emit/DynamicMethodTest.cs
+System.Reflection.Emit/EnumBuilderTest.cs
+System.Reflection.Emit/EventBuilderTest.cs
+System.Reflection.Emit/FieldBuilderTest.cs
+System.Reflection.Emit/GenericTypeParameterBuilderTest.cs
+System.Reflection.Emit/ILGeneratorTest.cs
+System.Reflection.Emit/MethodBuilderTest.cs
+System.Reflection.Emit/MethodBuilderTestIL.cs
+System.Reflection.Emit/MethodOnTypeBuilderInstTest.cs
+System.Reflection.Emit/MethodRentalCas.cs
+System.Reflection.Emit/MethodRentalTest.cs
+System.Reflection.Emit/ModuleBuilderTest.cs
+System.Reflection.Emit/ParameterBuilderTest.cs
+System.Reflection.Emit/PropertyBuilderTest.cs
+System.Reflection.Emit/SignatureHelperTest.cs
+System.Reflection.Emit/TypeBuilderTest.cs
+System.Runtime.Remoting/ContextTest.cs
+System.Runtime.Remoting/RemotingConfigurationTest.cs
+System.Runtime.Remoting/RemotingServicesTest.cs
+System.Runtime.Remoting/SoapServicesTest.cs
+System.Runtime.Remoting/SynchronizationAttributeTest.cs
+System.Runtime.Remoting.Channels/ChannelServicesTest.cs
+System.Runtime.Remoting.Contexts/SynchronizationAttributeTest.cs
+System.Runtime.Remoting.Messaging/CallContextTest.cs
+System.Runtime.Remoting.Metadata.W3cXsd2001/SoapHexBinaryTest.cs
+System.Security.AccessControl/AuthorizationRuleTest.cs
+System.Security.AccessControl/CommonAceTest.cs
+System.Security.AccessControl/CommonAclTest.cs
+System.Security.AccessControl/CommonObjectSecurityTest.cs
+System.Security.AccessControl/CommonSecurityDescriptorTest.cs
+System.Security.AccessControl/CryptoKeyAccessRuleTest.cs
+System.Security.AccessControl/DirectoryObjectSecurityTest.cs
+System.Security.AccessControl/DirectorySecurityTest.cs
+System.Security.AccessControl/DiscretionaryAclTest.cs
+System.Security.AccessControl/EventWaitHandleSecurityTest.cs
+System.Security.AccessControl/FileSecurityTest.cs
+System.Security.AccessControl/MutexAccessRuleTest.cs
+System.Security.AccessControl/MutexSecurityTest.cs
+System.Security.AccessControl/ObjectAceTest.cs
+System.Security.AccessControl/ObjectSecurity_TTest.cs
+System.Security.AccessControl/ObjectSecurityTest.cs
+System.Security.AccessControl/RawAclTest.cs
+System.Security.AccessControl/RawSecurityDescriptorTest.cs
+System.Security.AccessControl/RegistrySecurityTest.cs
+System.Security.AccessControl/SystemAclTest.cs
+System.Security.Permissions/CodeAccessSecurityAttributeTest.cs
+System.Security.Permissions/EnvironmentPermissionAttributeTest.cs
+System.Security.Permissions/EnvironmentPermissionTest.cs
+System.Security.Permissions/FileDialogPermissionAttributeTest.cs
+System.Security.Permissions/FileDialogPermissionTest.cs
+System.Security.Permissions/FileIOPermissionAttributeTest.cs
+System.Security.Permissions/FileIOPermissionTest.cs
+System.Security.Permissions/GacIdentityPermissionAttributeTest.cs
+System.Security.Permissions/GacIdentityPermissionTest.cs
+System.Security.Permissions/HostProtectionAttributeTest.cs
+System.Security.Permissions/IBuiltInPermissionTest.cs
+System.Security.Permissions/IsolatedStorageFilePermissionAttributeTest.cs
+System.Security.Permissions/IsolatedStorageFilePermissionTest.cs
+System.Security.Permissions/IsolatedStoragePermissionAttributeTest.cs
+System.Security.Permissions/KeyContainerPermissionAttributeTest.cs
+System.Security.Permissions/PermissionSetAttributeTest.cs
+System.Security.Permissions/PrincipalPermissionAttributeTest.cs
+System.Security.Permissions/PrincipalPermissionTest.cs
+System.Security.Permissions/PublisherIdentityPermissionAttributeTest.cs
+System.Security.Permissions/PublisherIdentityPermissionTest.cs
+System.Security.Permissions/ReflectionPermissionAttributeTest.cs
+System.Security.Permissions/ReflectionPermissionTest.cs
+System.Security.Permissions/RegistryPermissionAttributeTest.cs
+System.Security.Permissions/RegistryPermissionTest.cs
+System.Security.Permissions/SecurityAttributeTest.cs
+System.Security.Permissions/SecurityPermissionAttributeTest.cs
+System.Security.Permissions/SecurityPermissionTest.cs
+System.Security.Permissions/SiteIdentityPermissionAttributeTest.cs
+System.Security.Permissions/SiteIdentityPermissionTest.cs
+System.Security.Permissions/StrongNameIdentityPermissionAttributeTest.cs
+System.Security.Permissions/StrongNameIdentityPermissionTest.cs
+System.Security.Permissions/StrongNamePublicKeyBlobTest.cs
+System.Security.Permissions/UIPermissionAttributeTest.cs
+System.Security.Permissions/UIPermissionTest.cs
+System.Security.Permissions/UrlIdentityPermissionAttributeTest.cs
+System.Security.Permissions/UrlIdentityPermissionTest.cs
+System.Security.Permissions/ZoneIdentityPermissionAttributeTest.cs
+System.Security.Permissions/ZoneIdentityPermissionTest.cs
+System.Security.Policy/AllMembershipConditionTest.cs
+System.Security.Policy/ApplicationDirectoryMembershipConditionTest.cs
+System.Security.Policy/ApplicationDirectoryTest.cs
+System.Security.Policy/ApplicationMembershipConditionTest.cs
+System.Security.Policy/ApplicationSecurityManagerCas.cs
+System.Security.Policy/ApplicationSecurityManagerTest.cs
+System.Security.Policy/ApplicationTrustTest.cs
+System.Security.Policy/CodeGroupTest.cs
+System.Security.Policy/DomainApplicationMembershipConditionTest.cs
+System.Security.Policy/EvidenceTest.cs
+System.Security.Policy/FileCodeGroupTest.cs
+System.Security.Policy/FirstMatchCodeGroupTest.cs
+System.Security.Policy/GacMembershipConditionTest.cs
+System.Security.Policy/GacTest.cs
+System.Security.Policy/HashMembershipConditionTest.cs
+System.Security.Policy/HashTest.cs
+System.Security.Policy/IBuiltInEvidenceTest.cs
+System.Security.Policy/NetCodeGroupTest.cs
+System.Security.Policy/PermissionRequestEvidenceTest.cs
+System.Security.Policy/PolicyLevelTest.cs
+System.Security.Policy/PolicyStatementTest.cs
+System.Security.Policy/PublisherMembershipConditionTest.cs
+System.Security.Policy/PublisherTest.cs
+System.Security.Policy/SiteMembershipConditionTest.cs
+System.Security.Policy/SiteTest.cs
+System.Security.Policy/StrongNameMembershipConditionTest.cs
+System.Security.Policy/StrongNameTest.cs
+System.Security.Policy/UnionCodeGroupTest.cs
+System.Security.Policy/UrlMembershipConditionTest.cs
+System.Security.Policy/UrlTest.cs
+System.Security.Policy/ZoneMembershipConditionTest.cs
+System.Security.Policy/ZoneTest.cs
diff --git a/mcs/class/corlib/mobile_static_corlib_test.dll.excludes b/mcs/class/corlib/mobile_static_corlib_test.dll.excludes
deleted file mode 100644 (file)
index eb17a10..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-Microsoft.Win32/RegistryKeyTest.cs
-System.Diagnostics.Contracts/ContractAssertTest.cs
-System.Diagnostics.Contracts/ContractAssumeTest.cs
-System.Diagnostics.Contracts/ContractCollectionMethodsTest.cs
-System.Diagnostics.Contracts/ContractHelperTest.cs
-System.Diagnostics.Contracts/ContractMarkerMethodsTest.cs
-System.Diagnostics.Contracts/ContractMustUseRewriterTest.cs
-System.Diagnostics.Contracts/Helpers/RunAgainstReferenceAttribute.cs
-System.Diagnostics.Contracts/Helpers/TestContractBase.cs
-System.Reflection.Emit/AssemblyBuilderAccessTest.cs
-System.Reflection.Emit/AssemblyBuilderTest.cs
-System.Reflection.Emit/ConstructorBuilderTest.cs
-System.Reflection.Emit/ConstructorOnTypeBuilderInstTest.cs
-System.Reflection.Emit/CustomAttributeBuilderTest.cs
-System.Reflection.Emit/DerivedTypesTest.cs
-System.Reflection.Emit/DynamicILInfoTest.cs
-System.Reflection.Emit/DynamicMethodTest.cs
-System.Reflection.Emit/EnumBuilderTest.cs
-System.Reflection.Emit/EventBuilderTest.cs
-System.Reflection.Emit/FieldBuilderTest.cs
-System.Reflection.Emit/GenericTypeParameterBuilderTest.cs
-System.Reflection.Emit/ILGeneratorTest.cs
-System.Reflection.Emit/MethodBuilderTest.cs
-System.Reflection.Emit/MethodBuilderTestIL.cs
-System.Reflection.Emit/MethodOnTypeBuilderInstTest.cs
-System.Reflection.Emit/MethodRentalCas.cs
-System.Reflection.Emit/MethodRentalTest.cs
-System.Reflection.Emit/ModuleBuilderTest.cs
-System.Reflection.Emit/ParameterBuilderTest.cs
-System.Reflection.Emit/PropertyBuilderTest.cs
-System.Reflection.Emit/SignatureHelperTest.cs
-System.Reflection.Emit/TypeBuilderTest.cs
-System.Runtime.Remoting/ContextTest.cs
-System.Runtime.Remoting/RemotingConfigurationTest.cs
-System.Runtime.Remoting/RemotingServicesTest.cs
-System.Runtime.Remoting/SoapServicesTest.cs
-System.Runtime.Remoting/SynchronizationAttributeTest.cs
-System.Runtime.Remoting.Channels/ChannelServicesTest.cs
-System.Runtime.Remoting.Contexts/SynchronizationAttributeTest.cs
-System.Runtime.Remoting.Messaging/CallContextTest.cs
-System.Runtime.Remoting.Metadata.W3cXsd2001/SoapHexBinaryTest.cs
-System.Security.AccessControl/AuthorizationRuleTest.cs
-System.Security.AccessControl/CommonAceTest.cs
-System.Security.AccessControl/CommonAclTest.cs
-System.Security.AccessControl/CommonObjectSecurityTest.cs
-System.Security.AccessControl/CommonSecurityDescriptorTest.cs
-System.Security.AccessControl/CryptoKeyAccessRuleTest.cs
-System.Security.AccessControl/DirectoryObjectSecurityTest.cs
-System.Security.AccessControl/DirectorySecurityTest.cs
-System.Security.AccessControl/DiscretionaryAclTest.cs
-System.Security.AccessControl/EventWaitHandleSecurityTest.cs
-System.Security.AccessControl/FileSecurityTest.cs
-System.Security.AccessControl/MutexAccessRuleTest.cs
-System.Security.AccessControl/MutexSecurityTest.cs
-System.Security.AccessControl/ObjectAceTest.cs
-System.Security.AccessControl/ObjectSecurity_TTest.cs
-System.Security.AccessControl/ObjectSecurityTest.cs
-System.Security.AccessControl/RawAclTest.cs
-System.Security.AccessControl/RawSecurityDescriptorTest.cs
-System.Security.AccessControl/RegistrySecurityTest.cs
-System.Security.AccessControl/SystemAclTest.cs
-System.Security.Permissions/CodeAccessSecurityAttributeTest.cs
-System.Security.Permissions/EnvironmentPermissionAttributeTest.cs
-System.Security.Permissions/EnvironmentPermissionTest.cs
-System.Security.Permissions/FileDialogPermissionAttributeTest.cs
-System.Security.Permissions/FileDialogPermissionTest.cs
-System.Security.Permissions/FileIOPermissionAttributeTest.cs
-System.Security.Permissions/FileIOPermissionTest.cs
-System.Security.Permissions/GacIdentityPermissionAttributeTest.cs
-System.Security.Permissions/GacIdentityPermissionTest.cs
-System.Security.Permissions/HostProtectionAttributeTest.cs
-System.Security.Permissions/IBuiltInPermissionTest.cs
-System.Security.Permissions/IsolatedStorageFilePermissionAttributeTest.cs
-System.Security.Permissions/IsolatedStorageFilePermissionTest.cs
-System.Security.Permissions/IsolatedStoragePermissionAttributeTest.cs
-System.Security.Permissions/KeyContainerPermissionAttributeTest.cs
-System.Security.Permissions/PermissionSetAttributeTest.cs
-System.Security.Permissions/PrincipalPermissionAttributeTest.cs
-System.Security.Permissions/PrincipalPermissionTest.cs
-System.Security.Permissions/PublisherIdentityPermissionAttributeTest.cs
-System.Security.Permissions/PublisherIdentityPermissionTest.cs
-System.Security.Permissions/ReflectionPermissionAttributeTest.cs
-System.Security.Permissions/ReflectionPermissionTest.cs
-System.Security.Permissions/RegistryPermissionAttributeTest.cs
-System.Security.Permissions/RegistryPermissionTest.cs
-System.Security.Permissions/SecurityAttributeTest.cs
-System.Security.Permissions/SecurityPermissionAttributeTest.cs
-System.Security.Permissions/SecurityPermissionTest.cs
-System.Security.Permissions/SiteIdentityPermissionAttributeTest.cs
-System.Security.Permissions/SiteIdentityPermissionTest.cs
-System.Security.Permissions/StrongNameIdentityPermissionAttributeTest.cs
-System.Security.Permissions/StrongNameIdentityPermissionTest.cs
-System.Security.Permissions/StrongNamePublicKeyBlobTest.cs
-System.Security.Permissions/UIPermissionAttributeTest.cs
-System.Security.Permissions/UIPermissionTest.cs
-System.Security.Permissions/UrlIdentityPermissionAttributeTest.cs
-System.Security.Permissions/UrlIdentityPermissionTest.cs
-System.Security.Permissions/ZoneIdentityPermissionAttributeTest.cs
-System.Security.Permissions/ZoneIdentityPermissionTest.cs
-System.Security.Policy/AllMembershipConditionTest.cs
-System.Security.Policy/ApplicationDirectoryMembershipConditionTest.cs
-System.Security.Policy/ApplicationDirectoryTest.cs
-System.Security.Policy/ApplicationMembershipConditionTest.cs
-System.Security.Policy/ApplicationSecurityManagerCas.cs
-System.Security.Policy/ApplicationSecurityManagerTest.cs
-System.Security.Policy/ApplicationTrustTest.cs
-System.Security.Policy/CodeGroupTest.cs
-System.Security.Policy/DomainApplicationMembershipConditionTest.cs
-System.Security.Policy/EvidenceTest.cs
-System.Security.Policy/FileCodeGroupTest.cs
-System.Security.Policy/FirstMatchCodeGroupTest.cs
-System.Security.Policy/GacMembershipConditionTest.cs
-System.Security.Policy/GacTest.cs
-System.Security.Policy/HashMembershipConditionTest.cs
-System.Security.Policy/HashTest.cs
-System.Security.Policy/IBuiltInEvidenceTest.cs
-System.Security.Policy/NetCodeGroupTest.cs
-System.Security.Policy/PermissionRequestEvidenceTest.cs
-System.Security.Policy/PolicyLevelTest.cs
-System.Security.Policy/PolicyStatementTest.cs
-System.Security.Policy/PublisherMembershipConditionTest.cs
-System.Security.Policy/PublisherTest.cs
-System.Security.Policy/SiteMembershipConditionTest.cs
-System.Security.Policy/SiteTest.cs
-System.Security.Policy/StrongNameMembershipConditionTest.cs
-System.Security.Policy/StrongNameTest.cs
-System.Security.Policy/UnionCodeGroupTest.cs
-System.Security.Policy/UrlMembershipConditionTest.cs
-System.Security.Policy/UrlTest.cs
-System.Security.Policy/ZoneMembershipConditionTest.cs
-System.Security.Policy/ZoneTest.cs
diff --git a/mcs/class/corlib/monodroid_corlib_test.dll.exclude.sources b/mcs/class/corlib/monodroid_corlib_test.dll.exclude.sources
new file mode 100644 (file)
index 0000000..48e7f04
--- /dev/null
@@ -0,0 +1,53 @@
+#include monodroid_corlib_test.dll.new-exclude.sources
+Microsoft.Win32/RegistryKeyTest.cs
+System/ActivatorCas.cs
+System/AppDomainCas.cs
+System/BadImageFormatExceptionCas.cs
+System/ConsoleCas.cs
+System.Diagnostics/StackFrameCas.cs
+System.Diagnostics/StackTraceCas.cs
+System/EnvironmentCas.cs
+System/ExceptionCas.cs
+System.IO/DirectoryCas.cs
+System.IO/FileLoadExceptionCas.cs
+System.IO/FileNotFoundExceptionCas.cs
+System.IO/FileStreamCas.cs
+System.IO.IsolatedStorage/IsolatedStorageFileCas.cs
+System.IO.IsolatedStorage/IsolatedStorageFileStreamCas.cs
+System.IO/PathCas.cs
+System.IO/StreamCas.cs
+System/MarshalByRefObjectCas.cs
+System.Reflection/AssemblyCas.cs
+System.Reflection/AssemblyNameCas.cs
+System.Reflection.Emit/MethodRentalCas.cs
+System.Reflection/ModuleCas.cs
+System.Reflection/StrongNameKeyPairCas.cs
+System.Reflection/VisibilityTest.cs
+System.Resources/ResourceReaderCas.cs
+System.Resources/ResourceSetCas.cs
+System.Runtime.CompilerServices/RuntimeWrappedExceptionCas.cs
+System.Runtime.InteropServices/RuntimeEnvironmentCas.cs
+System/RuntimeMethodHandleCas.cs
+System.Runtime.Serialization.Formatters.Binary/BinaryFormatterCas.cs
+System.Runtime.Versioning/ResourceConsumptionAttributeCas.cs
+System.Runtime.Versioning/ResourceExposureAttributeCas.cs
+System.Runtime.Versioning/VersioningHelperCas.cs
+System.Security.AccessControl/DirectorySecurityTest.cs
+System.Security.AccessControl/EventWaitHandleSecurityTest.cs
+System.Security.AccessControl/FileSecurityTest.cs
+System.Security/CodeAccessPermissionCas.cs
+System.Security.Cryptography/CryptoAPITransformCas.cs
+System.Security.Cryptography/CryptoConfigCas.cs
+System.Security.Cryptography.X509Certificates/X509CertificateCas.cs
+System.Security/PermissionSetCas.cs
+System.Security.Policy/ApplicationSecurityManagerCas.cs
+System.Security/SecureStringCas.cs
+System.Security/SecurityContextCas.cs
+System.Security/SecurityExceptionCas.cs
+System.Security/SecurityManagerCas.cs
+System.Threading/CompressedStackCas.cs
+System.Threading/ExecutionContextCas.cs
+System.Threading/MutexCas.cs
+System.Threading/ThreadCas.cs
+System.Threading/WaitHandleCas.cs
+System/TypedReferenceCas.cs
diff --git a/mcs/class/corlib/monodroid_corlib_test.dll.new-exclude.sources b/mcs/class/corlib/monodroid_corlib_test.dll.new-exclude.sources
new file mode 100644 (file)
index 0000000..90b0082
--- /dev/null
@@ -0,0 +1,28 @@
+System/DateTimeOffsetTestCoreFx.cs
+System.Diagnostics.Contracts/ContractAssertTest.cs
+System.Diagnostics.Contracts/ContractCollectionMethodsTest.cs
+System.Diagnostics.Contracts/ContractHelperTest.cs
+System.Diagnostics.Contracts/ContractMustUseRewriterTest.cs
+System.IO/DirectoryTest.cs
+System.Reflection.Emit/MethodBuilderTestIL.cs
+System.Security.AccessControl/AuthorizationRuleTest.cs
+System.Security.AccessControl/CommonAceTest.cs
+System.Security.AccessControl/CommonAclTest.cs
+System.Security.AccessControl/CommonObjectSecurityTest.cs
+System.Security.AccessControl/CommonSecurityDescriptorTest.cs
+System.Security.AccessControl/CryptoKeyAccessRuleTest.cs
+System.Security.AccessControl/DirectoryObjectSecurityTest.cs
+System.Security.AccessControl/DiscretionaryAclTest.cs
+System.Security.AccessControl/MutexAccessRuleTest.cs
+System.Security.AccessControl/MutexSecurityTest.cs
+System.Security.AccessControl/ObjectAceTest.cs
+System.Security.AccessControl/ObjectSecurityTest.cs
+System.Security.AccessControl/ObjectSecurity_TTest.cs
+System.Security.AccessControl/RawAclTest.cs
+System.Security.AccessControl/RawSecurityDescriptorTest.cs
+System.Security.AccessControl/RegistrySecurityTest.cs
+System.Security.AccessControl/SystemAclTest.cs
+System.Security.Claims/ClaimsIdentityTest.cs
+System.Security.Claims/ClaimsPrincipalTest.cs
+System.Security/CodeAccessPermissionTest.cs
+System/TimeZoneTest.cs
diff --git a/mcs/class/corlib/monodroid_corlib_test.dll.sources b/mcs/class/corlib/monodroid_corlib_test.dll.sources
new file mode 100644 (file)
index 0000000..011effe
--- /dev/null
@@ -0,0 +1 @@
+#include corlib_test.dll.sources
index 5b7b87f5d95487016e1885af15c16d7c934f9c2c..191d5dd7ac888e8b87e994f98ba0242c999923d8 100644 (file)
@@ -45,45 +45,45 @@ build and the tests will be run along with all the others.
 
 * Tips
 
--- Provide an unique error message for Assertion.Assert ()
+-- Provide an unique error message for Assert.IsTrue ()
 
-Include an unique message for each Assertion.Assert () so that when the assert
+Include an unique message for each Assert.IsTrue () so that when the assert
 fails, it is trivial to locate the failing one. Otherwise, it may be
 difficult to determine which part of the test is failing. A good way
 to ensure unique messages is to use something like #A01, #A02 etc.
 
     Bad:
 
-       Assertion.AssertEquals ("array match", compare[0], i1[0]);
-       Assertion.AssertEquals ("array match", compare[1], i1[1]);
-       Assertion.AssertEquals ("array match", compare[2], i1[2]);
-       Assertion.AssertEquals ("array match", compare[3], i1[3]);
+       Assert.AreEqual (compare[0], i1[0], "array match");
+       Assert.AreEqual (compare[1], i1[1], "array match");
+       Assert.AreEqual (compare[2], i1[2], "array match");
+       Assert.AreEqual (compare[3], i1[3], "array match");
 
     Good:
 
-       Assertion.AssertEquals ("#A01", compare[0], i1[0]);
-       Assertion.AssertEquals ("#A02", compare[1], i1[1]);
-       Assertion.AssertEquals ("#A03", compare[2], i1[2]);
-       Assertion.AssertEquals ("#A04", compare[3], i1[3]);
+       Assert.AreEqual (compare[0], i1[0], "#A01");
+       Assert.AreEqual (compare[1], i1[1], "#A02");
+       Assert.AreEqual (compare[2], i1[2], "#A03");
+       Assert.AreEqual (compare[3], i1[3], "#A04");
 
-Once you used such a number in an Assertion.Assert (), don't change it later on -
+Once you used such a number in an Assert.IsTrue (), don't change it later on -
 people might use it it identify the test in bug reports or in mailing
 lists.
 
--- Use Assertion.AssertEquals () to compare things, not Assertion.Assert ().
+-- Use Assert.AreEqual () to compare things, not Assert.IsTrue ().
 
-Never compare two values with Assertion.Assert () - if the test fails, people
-have no idea what went wrong while Assertion.AssertEquals () reports the failed
+Never compare two values with Assert.IsTrue () - if the test fails, people
+have no idea what went wrong while Assert.AreEqual () reports the failed
 value. Also, make sure the second paramter is the expected value, and the third
 parameter is the actual value.
 
     Bad:
 
-        Assertion.Assert ("A01", myTicks[0] == t1.Ticks);
+        Assert.IsTrue (myTicks[0] == t1.Ticks, "A01");
 
     Good:
 
-        Assertion.AssertEquals ("A01", myTicks[0], t1.Ticks);
+        Assert.AreEqual (myTicks[0], t1.Ticks, "A01");
 
 -- Namespace
 
index 6a392a4a8a8e503f6573fd6b6f1e2419d86805d4..114d68896c5a6de9edfadb80ac938174fc1c6f42 100644 (file)
@@ -9,7 +9,10 @@
     <OutputType>Library</OutputType>\r
     <NoWarn>618,612,672,809,1699,169,164,162,168,219,618,612</NoWarn>\r
     <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.jay > $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.cs
+
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+$(ProjectDir)\..\..\jay\jay -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.jay > $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.cs
+
 \r
     </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index 60d4cbd3f1831d9c7034550a0b68a1048adcdff2..519786c3cf2af60442895a8c1350b26edc2950e1 100644 (file)
@@ -18,11 +18,12 @@ install-local:
        $(INSTALL_LIB) ../../../external/binary-reference-assemblies/v4.5/*.dll $(PROFILE_DIR)/4.5-api
        $(INSTALL_LIB) ../../../external/binary-reference-assemblies/v4.5/Facades/*.dll $(PROFILE_DIR)/4.5-api/Facades
 
-       # Unfortunately, a few programs (most notably NUnit) have hardcoded checks for <prefix>/lib/mono/4.0/mscorlib.dll,
+       # Unfortunately, a few programs (most notably NUnit and FSharp) have hardcoded checks for <prefix>/lib/mono/4.0/mscorlib.dll or Mono.Posix.dll,
        # so we need to place something there or those tools break. We decided to symlink to the reference assembly for now.
-       # See https://bugzilla.xamarin.com/show_bug.cgi?id=38331
+       # See https://bugzilla.xamarin.com/show_bug.cgi?id=38331 and https://bugzilla.xamarin.com/show_bug.cgi?id=41052
        $(MKINSTALLDIRS) $(PROFILE_DIR)/4.0
        ln -sf ../4.0-api/mscorlib.dll $(PROFILE_DIR)/4.0/mscorlib.dll
+       ln -sf ../4.0-api/Mono.Posix.dll $(PROFILE_DIR)/4.0/Mono.Posix.dll
 
 DISTFILES = $(wildcard ../../../external/binary-reference-assemblies/v4.5/Facades/*.dll) $(wildcard ../../../external/binary-reference-assemblies/v4.5/*.dll) $(wildcard ../../../external/binary-reference-assemblies/v4.0/*.dll) $(wildcard ../../../external/binary-reference-assemblies/v3.5/*.dll) $(wildcard ../../../external/binary-reference-assemblies/v2.0/*.dll) Makefile
 
index 66211b4ac05d18e3d97b497ff2a9e09df3aa2e23..9da4616a8d872bd567b631fd7f04c92831c147df 100644 (file)
@@ -37,7 +37,7 @@ namespace System.Windows.Forms
     /// </devdoc>
     internal static class SecurityUtils {
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         private static volatile ReflectionPermission memberAccessPermission = null;
         private static volatile ReflectionPermission restrictedMemberAccessPermission = null;
 
@@ -62,7 +62,7 @@ namespace System.Windows.Forms
 #endif
 
         private static void DemandReflectionAccess(Type type) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             try {
                 MemberAccessPermission.Demand();
             }
@@ -74,7 +74,7 @@ namespace System.Windows.Forms
 
         [SecuritySafeCritical]
         private static void DemandGrantSet(Assembly assembly) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet targetGrantSet = assembly.PermissionSet;
             targetGrantSet.AddPermission(RestrictedMemberAccessPermission);
             targetGrantSet.Demand();
@@ -82,7 +82,7 @@ namespace System.Windows.Forms
         }
 
         private static bool HasReflectionPermission(Type type) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             try {
                 DemandReflectionAccess(type);
                 return true;
index f13e16ea9a2f8ddb8a96bf5d82fbf588e55029b7..055962a32528532d2313118ec98c8eb92b8667c0 100644 (file)
@@ -164,7 +164,7 @@ namespace System.Xml.Xsl.XsltOld {
         // The World of Compile
         //
         internal void Compile(NavigatorInput input, XmlResolver xmlResolver, Evidence evidence) {
-#if DISABLE_CAS_USE
+#if !FEATURE_MONO_CAS
             evidence = null;
 #endif
             Debug.Assert(input != null);
index 8103f0fce6e26a6c2e6ce8987157ed229da0a861..662c1c9130d8b675f4109598e703ac7e2a22bf93 100644 (file)
@@ -2125,7 +2125,7 @@ namespace System.Data.Common {
         [ResourceExposure(ResourceScope.Machine)]
         [ResourceConsumption(ResourceScope.Machine)]
         static internal Stream GetFileStream(string filename) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             (new FileIOPermission(FileIOPermissionAccess.Read, filename)).Assert();
             try {
                 return new FileStream(filename,FileMode.Open,FileAccess.Read,FileShare.Read);
@@ -2141,7 +2141,7 @@ namespace System.Data.Common {
         [ResourceExposure(ResourceScope.Machine)]
         [ResourceConsumption(ResourceScope.Machine)]
         static internal FileVersionInfo GetVersionInfo(string filename) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             (new FileIOPermission(FileIOPermissionAccess.Read, filename)).Assert(); // MDAC 62038
             try {
                 return FileVersionInfo.GetVersionInfo(filename); // MDAC 60411
index f23239bdfdf250cbe95d8abf2d0315beb8455873..6020f65eabe156245bed7a79e0b8470ba59bb710 100644 (file)
@@ -22,7 +22,7 @@ namespace System.Data {
     internal class XMLSchema {
 
         internal static TypeConverter GetConverter(Type type) { 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             HostProtectionAttribute protAttrib = new HostProtectionAttribute();
             protAttrib.SharedState = true;
             CodeAccessPermission permission = (CodeAccessPermission)protAttrib.CreatePermission();
@@ -32,7 +32,7 @@ namespace System.Data {
                 return TypeDescriptor.GetConverter(type);
             }
             finally {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 CodeAccessPermission.RevertAssert(); 
 #endif
             }
index 9ea613ebc3ab9ef3cf2cb047969af8a306b3ba90..b2448b52d74ab340e21a439f50e8dd232a44bab6 100644 (file)
@@ -580,9 +580,7 @@ namespace System.Runtime.Serialization
         internal bool RequiresMemberAccessForWrite(SecurityException securityException)
         {
 
-#if DISABLE_CAS_USE
-            return true;
-#else
+#if FEATURE_MONO_CAS
             EnsureMethodsImported();
 
             if (!IsTypeVisible(UnderlyingType))
@@ -662,6 +660,8 @@ namespace System.Runtime.Serialization
             }
 
             return false;
+#else
+            return true;
 #endif
         }
 #endif
index f18da31004bd1ed5d7460c0754a28d30cf974b62..b32d295f45b3f491af7bf8bff36b973db635a847 100644 (file)
@@ -1105,7 +1105,7 @@ namespace System.Runtime.Serialization
             }
         }
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [Fx.Tag.SecurityNote(Critical = "Holds instance of SecurityPermission that we will Demand for SerializationFormatter."
             + " Should not be modified to something else.")]
         [SecurityCritical]
index 6a71d9a194ce720d30924b411a8c31f90d1eb739..b30c82bf34e72a61b9f8f10ed84d1dd2a4925e74 100644 (file)
@@ -89,7 +89,7 @@ namespace System.Runtime.Serialization
         [SecuritySafeCritical]
         public void DemandSerializationFormatterPermission()
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             if (!demandedSerializationFormatterPermission)
             {
                 Globals.SerializationFormatterPermission.Demand();
@@ -103,7 +103,7 @@ namespace System.Runtime.Serialization
         [SecuritySafeCritical]
         public void DemandMemberAccessPermission()
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             if (!demandedMemberAccessPermission)
             {
                 Globals.MemberAccessPermission.Demand();
index 3d953393b4bd0819310efdef8c111cee09cdebe6..a61836fc14025f8b41574bdfbb12c977188054c9 100644 (file)
@@ -494,7 +494,7 @@ namespace System.Runtime.Serialization
         [MethodImpl(MethodImplOptions.NoInlining)]
         internal void GetObjectData(ISerializable obj, SerializationInfo serInfo, StreamingContext context)
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             // Demand the serialization formatter permission every time
             Globals.SerializationFormatterPermission.Demand();
 #endif
index c243af4a06dcb4af0b5b0fa097574f049daaf08f..260c7c4265c9a7db00b9b2edb90ad97f7ee7d339 100644 (file)
@@ -36,9 +36,7 @@ namespace System.Runtime
         [SecurityCritical]
         internal static bool IsInFullTrust()
         {
-#if DISABLE_CAS_USE
-            return true;
-#else
+#if FEATURE_MONO_CAS
             if (!SecurityManager.CurrentThreadRequiresSecurityContextCapture())
             {
                 return true;
@@ -53,6 +51,8 @@ namespace System.Runtime
             {
                 return false;
             }
+#else
+            return true;
 #endif
         }
 #if FEATURE_COMPRESSEDSTACK
@@ -114,11 +114,11 @@ namespace System.Runtime
         [SecurityCritical]
         internal static bool CheckAppDomainPermissions(PermissionSet permissions)
         {
-#if DISABLE_CAS_USE
-            return true;
-#else
+#if FEATURE_MONO_CAS
             return AppDomain.CurrentDomain.IsHomogenous &&
                    permissions.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet);
+#else
+            return true;
 #endif
         }
 
@@ -126,12 +126,12 @@ namespace System.Runtime
         [SecurityCritical]
         internal static bool HasEtwPermissions()
         {
-#if DISABLE_CAS_USE
-            return true;
-#else
+#if FEATURE_MONO_CAS
             //Currently unrestricted permissions are required to create Etw provider. 
             PermissionSet permissions = new PermissionSet(PermissionState.Unrestricted);
             return CheckAppDomainPermissions(permissions);
+#else
+            return true;
 #endif
         }
 
@@ -142,9 +142,7 @@ namespace System.Runtime
             [SecuritySafeCritical]
             get
             {
-#if DISABLE_CAS_USE
-                return true;
-#else
+#if FEATURE_MONO_CAS
                 if (!checkedForFullTrust)
                 {
                     inFullTrust = AppDomain.CurrentDomain.IsFullyTrusted;
@@ -152,6 +150,8 @@ namespace System.Runtime
                 }
 
                 return inFullTrust;
+#else
+                return true;
 #endif
             }
         }
index 6cd15034393a5f9f8f1655afccb97114d312148b..21727844bd5d8988b9596a6aa3153be14c157762 100644 (file)
@@ -15,23 +15,23 @@ namespace System.Xml {
     [PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
     public partial class XmlSecureResolver : XmlResolver {
         XmlResolver resolver;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         PermissionSet permissionSet;
 #endif
 
-#if DISABLE_CAS_USE
-        public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, (PermissionSet) null) {}
-
-        public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, (PermissionSet) null) {}
-#else
+#if FEATURE_MONO_CAS
         public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, CreateEvidenceForUrl(securityUrl)) {}
 
         public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, SecurityManager.GetStandardSandbox(evidence)) {}
+#else
+        public XmlSecureResolver(XmlResolver resolver, string securityUrl) : this(resolver, (PermissionSet) null) {}
+
+        public XmlSecureResolver(XmlResolver resolver, Evidence evidence) : this(resolver, (PermissionSet) null) {}
 #endif
 
         public XmlSecureResolver(XmlResolver resolver, PermissionSet permissionSet) {
             this.resolver = resolver;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             this.permissionSet = permissionSet;
 #endif
         }
@@ -41,7 +41,7 @@ namespace System.Xml {
         }
 
         public override object GetEntity(Uri absoluteUri, string role, Type ofObjectToReturn) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             permissionSet.PermitOnly();
 #endif
             return resolver.GetEntity(absoluteUri, role, ofObjectToReturn);
@@ -54,7 +54,7 @@ namespace System.Xml {
         }
 
         public static Evidence CreateEvidenceForUrl(string securityUrl) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             Evidence evidence = new Evidence();
             if (securityUrl != null && securityUrl.Length > 0) {
                 evidence.AddHostEvidence(new Url(securityUrl));
@@ -79,7 +79,7 @@ namespace System.Xml {
 #endif
         }
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [Serializable]
         private class UncDirectory : EvidenceBase, IIdentityPermissionFactory {
             private string uncDir;
index 4e8b9fe96837bb4eb1afcfb9a81901d6f26c6d0f..17b3a199ca5f249c1979788b8503df2fe30cca9a 100644 (file)
@@ -7,7 +7,7 @@ namespace System.Xml {
     [PermissionSetAttribute(SecurityAction.InheritanceDemand, Name = "FullTrust")]
     public partial class XmlSecureResolver : XmlResolver {
         public override Task<object> GetEntityAsync(Uri absoluteUri, string role, Type ofObjectToReturn) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             permissionSet.PermitOnly();
 #endif
             return resolver.GetEntityAsync(absoluteUri, role, ofObjectToReturn);
index 5a3acdfce2c2ee1a8b6b0449da740e6f3a6b8bdd..d81a2745e94b560cfcf783c9b1b3683aad0949d5 100644 (file)
@@ -116,7 +116,7 @@ namespace System.Xml.Xsl {
             if (stylesheet == null) {
                 throw new ArgumentNullException("stylesheet");
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             if (evidence == null) {
                 evidence = new Evidence();
             }
index bc1fc0b40de2522e2343e0fc431331cda84dc7e2..e1e0420b28cec01f6646ebc62fddfd7dd8441333 100644 (file)
@@ -380,7 +380,7 @@ namespace System.ComponentModel {
                     else {
                         args = new Type[] {receiverType};
                     }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     IntSecurity.FullReflection.Assert();
 #endif
                     try {
@@ -456,7 +456,7 @@ namespace System.ComponentModel {
                     else {
                         args = new Type[] {receiverType};
                     }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     IntSecurity.FullReflection.Assert();
 #endif
                     try {
index f752570b56b0344fb14501e2ef45a8b5949b1528..ad04d77a51370aba0e61ef13802c5ec1bef78583 100644 (file)
@@ -1163,7 +1163,7 @@ namespace System.ComponentModel {
             ///      a single object to be re-used for more than one type. 
             /// </devdoc> 
             private object CreateInstance(Type type) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 if ((!(type.IsPublic || type.IsNestedPublic)) && (type.Assembly == typeof(DebugTypeDescriptor).Assembly)) {
                     IntSecurity.FullReflection.Demand();
                 }
index 6a5fd3a672db01211e0b86655c58da30974b7f70..ac39527d8eb958e6e4a8f965e0e3122803f0fa7e 100644 (file)
@@ -11,15 +11,13 @@ namespace System.ComponentModel {
 
     [HostProtection(SharedState = true)]
     internal static class IntSecurity {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         public static readonly CodeAccessPermission UnmanagedCode = new SecurityPermission(SecurityPermissionFlag.UnmanagedCode);
         public static readonly CodeAccessPermission FullReflection = new ReflectionPermission(PermissionState.Unrestricted);
 #endif
 
         public static string UnsafeGetFullPath(string fileName) {
-#if DISABLE_CAS_USE
-                       return System.IO.Path.GetFullPath(fileName);
-#else
+#if FEATURE_MONO_CAS
             string full = fileName;
 
             FileIOPermission fiop = new FileIOPermission(PermissionState.None);
@@ -32,6 +30,8 @@ namespace System.ComponentModel {
                 CodeAccessPermission.RevertAssert();
             }
             return full;
+#else
+            return System.IO.Path.GetFullPath(fileName);
 #endif
         }
     }
index c79517fc5771249bd49581ab0f084f57e5fa44a6..401c21e4d6697f3c41556dd58df794435d5c3d73 100644 (file)
@@ -417,12 +417,12 @@ namespace System.ComponentModel {
                     else {
                         args = new Type[] {receiverType};
                     }
-#if !DISABLE_CAS_USE                    
+#if FEATURE_MONO_CAS
                     IntSecurity.FullReflection.Assert();
                     try {
 #endif
                         resetMethod = FindMethod(componentClass, "Reset" + Name, args, typeof(void), /* publicOnly= */ false);
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     }
                     finally {
                         CodeAccessPermission.RevertAssert();
@@ -524,13 +524,13 @@ namespace System.ComponentModel {
                         args = new Type[] {receiverType};
                     }
                     
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     IntSecurity.FullReflection.Assert();
                     try {
 #endif
                         shouldSerializeMethod = FindMethod(componentClass, "ShouldSerialize" + Name,
                                                          args, typeof(Boolean), /* publicOnly= */ false);
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     }
                     finally {
                         CodeAccessPermission.RevertAssert();
index 3eb2cd79aa41fa533530893ec7574006f0cc42f7..4061a644a7bef80834c072fc011c87952a28c679 100644 (file)
@@ -1635,12 +1635,12 @@ namespace System.ComponentModel {
                         Type converterType = GetTypeFromName(instanceAttr.ConverterTypeName);
                         if (converterType != null && typeof(TypeConverter).IsAssignableFrom(converterType)) 
                         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                             try {
                                 IntSecurity.FullReflection.Assert();
 #endif
                                 return (TypeConverter)ReflectTypeDescriptionProvider.CreateInstance(converterType, _type);
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                             } finally {
                                 CodeAccessPermission.RevertAssert();
                             }
@@ -1665,12 +1665,12 @@ namespace System.ComponentModel {
                         Type converterType = GetTypeFromName(typeAttr.ConverterTypeName);
                         if (converterType != null && typeof(TypeConverter).IsAssignableFrom(converterType)) 
                         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                             try {
                                 IntSecurity.FullReflection.Assert();
 #endif
                                 _converter = (TypeConverter)ReflectTypeDescriptionProvider.CreateInstance(converterType, _type);
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                             } finally {
                                 CodeAccessPermission.RevertAssert();
                             }
index c1e1c43b23199a3ba9b9cfc98f580dd81d3699bc..cf77c9972b2967219bba6e0992252ca86961ca7c 100644 (file)
@@ -365,7 +365,7 @@ namespace System.ComponentModel
             {
                 throw new ArgumentNullException("type");
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet typeDescriptorPermission = new PermissionSet(PermissionState.None);
             typeDescriptorPermission.AddPermission(new TypeDescriptorPermission(TypeDescriptorPermissionFlags.RestrictedRegistrationAccess));
 
@@ -401,7 +401,7 @@ namespace System.ComponentModel
             {
                 throw new ArgumentNullException("instance");
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             Type type = instance.GetType();
 
             PermissionSet typeDescriptorPermission = new PermissionSet(PermissionState.None);
@@ -475,12 +475,12 @@ namespace System.ComponentModel
                     // sense that they provide a public API while not necessarily being public themselves. As such,
                     // we need to allow instantiation of internal TypeDescriptionProviders. See the thread attached
                     // to VSWhidbey #500522 for a more detailed discussion.
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     IntSecurity.FullReflection.Assert();
                     try {
 #endif
                         prov = (TypeDescriptionProvider)Activator.CreateInstance(providerType);
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     }
                     finally {
                         CodeAccessPermission.RevertAssert();
@@ -3244,7 +3244,7 @@ namespace System.ComponentModel
             {
                 throw new ArgumentNullException("type");
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet typeDescriptorPermission = new PermissionSet(PermissionState.None);
             typeDescriptorPermission.AddPermission(new TypeDescriptorPermission(TypeDescriptorPermissionFlags.RestrictedRegistrationAccess));
 
@@ -3279,7 +3279,7 @@ namespace System.ComponentModel
             {
                 throw new ArgumentNullException("instance");
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             Type type = instance.GetType();
 
             PermissionSet typeDescriptorPermission = new PermissionSet(PermissionState.None);
index b69dd65ff8d6f3bc08e3dddab86864259b78c09c..aa7a3d002a7b02ce1e52d78b6bec29ad979be2b2 100644 (file)
@@ -75,7 +75,7 @@ namespace System.ComponentModel {
         }
 
         protected Win32Exception(SerializationInfo info, StreamingContext context) : base (info, context) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             IntSecurity.UnmanagedCode.Demand();
 #endif
             nativeErrorCode = info.GetInt32("NativeErrorCode");
index 6938ce280f6ea9405ff25143a7b96177a50c076b..aff4d8f9fd1b30dcbf9bcf88b0feb2ab64e44ad8 100644 (file)
@@ -93,7 +93,7 @@ namespace System.ComponentModel.Design {
                     Debug.WriteLineIf(RuntimeLicenseContextSwitch.TraceVerbose,"rawfile: " + rawFile);
                     string codeBase;
                     
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     // FileIOPermission is required for ApplicationBase in URL-hosted domains
                     FileIOPermission perm = new FileIOPermission(PermissionState.Unrestricted);
                     perm.Assert();
@@ -133,7 +133,7 @@ namespace System.ComponentModel.Design {
                             // file://fullpath/foo.exe
                             //
                             string fileName;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                             FileIOPermission perm = new FileIOPermission(PermissionState.Unrestricted);
                             perm.Assert();
                             try
@@ -166,15 +166,19 @@ namespace System.ComponentModel.Design {
                     else if(!resourceAssembly.IsDynamic) { // EscapedCodeBase won't be supported by emitted assemblies anyway
                         Debug.WriteLineIf(RuntimeLicenseContextSwitch.TraceVerbose,"resourceAssembly is not null");
                         string fileName;
+#if FEATURE_MONO_CAS
                         FileIOPermission perm = new FileIOPermission(PermissionState.Unrestricted);
                         perm.Assert();
+#endif
                         try
                         {
                             fileName = GetLocalPath(resourceAssembly.EscapedCodeBase);
                         }
                         finally
                         {
+#if FEATURE_MONO_CAS
                             CodeAccessPermission.RevertAssert();
+#endif
                         }
                         fileName = Path.GetFileName(fileName); // we don't want to use FileInfo here... it requests FileIOPermission that we
                         // might now have... see VSWhidbey 527758
@@ -254,7 +258,7 @@ namespace System.ComponentModel.Design {
 
         static Stream OpenRead(Uri resourceUri) {
             Stream result = null;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet perms = new PermissionSet(PermissionState.Unrestricted);
 
             perms.Assert();
@@ -267,7 +271,7 @@ namespace System.ComponentModel.Design {
             catch (Exception e) {
                 Debug.Fail(e.ToString());
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             finally {
                 CodeAccessPermission.RevertAssert();
             }
index 2f9df3f456471c22dc435a3cf5a2d82561034d11..879c5040a6e7f3763994c1c19cc863cc03148908 100644 (file)
@@ -30,7 +30,7 @@ namespace System.Diagnostics {
         public static TraceListenerCollection Listeners {
             [HostProtection(SharedState=true)]
             get {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 // Do a full damand
                 new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
 #endif
@@ -113,7 +113,7 @@ namespace System.Diagnostics {
         /// </devdoc>
         [System.Diagnostics.Conditional("TRACE")]
         public static void Close() {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             // Do a full damand
             new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
  #endif
index eee1e05c12539e977e6903810feac7eaf6ac9b7c..dfa24dcd135d7523487ffde091fbbdf318f250a3 100644 (file)
@@ -30,7 +30,7 @@ namespace System.Diagnostics {
             get {
                 if (stackTrace == null)
                     stackTrace = Environment.StackTrace;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 else
                     new EnvironmentPermission(PermissionState.Unrestricted).Demand();
 #endif
@@ -77,7 +77,7 @@ namespace System.Diagnostics {
         [ResourceExposure(ResourceScope.None)]
         [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)]
         private static void InitProcessInfo() {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             // Demand unmanaged code permission
             new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
 #endif
index 42bbb8a75c0849dfb6c45f493295a3748e0fd5bf..c400a3e411cdb36b18b7ec5dae2ca8191195b43c 100644 (file)
@@ -62,7 +62,7 @@ namespace System.Diagnostics {
         internal static string AppName {
             get {
                 if (appName == null) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                     new EnvironmentPermission(EnvironmentPermissionAccess.Read, "Path").Assert();
 #endif
                     appName = Path.GetFileName(Environment.GetCommandLineArgs()[0]);
index d4d39cae5dd8b959fca20698c2b8d2f9f58b33f4..5b622d1768efcbefce73a73be479b673e0e007d9 100644 (file)
@@ -60,7 +60,7 @@ namespace System.Windows.Forms
         }
 
         private static void DemandReflectionAccess(Type type) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             try {
                 MemberAccessPermission.Demand();
             }
@@ -72,7 +72,7 @@ namespace System.Windows.Forms
 
         [SecuritySafeCritical]
         private static void DemandGrantSet(Assembly assembly) {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet targetGrantSet = assembly.PermissionSet;
             targetGrantSet.AddPermission(RestrictedMemberAccessPermission);
             targetGrantSet.Demand();
index 53f2e02e5980a3d12800ffc19c2344e6fcf75120..4413414603e4d79aad5b6b23df3fab29685d79e2 100644 (file)
@@ -139,7 +139,9 @@ namespace System.Net {
 
             set 
             {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.ControlPolicyPermission.Demand();
+#endif
                 Instance.CredentialPolicy = value;
             }
         }
@@ -203,7 +205,9 @@ namespace System.Net {
         /// </devdoc>
         public static void Register(IAuthenticationModule authenticationModule) 
         {
+#if FEATURE_MONO_CAS
             ExceptionHelper.UnmanagedPermission.Demand();
+#endif
             Instance.Register(authenticationModule);
         }
 
@@ -212,7 +216,9 @@ namespace System.Net {
         /// </devdoc>
         public static void Unregister(IAuthenticationModule authenticationModule) 
         {
+#if FEATURE_MONO_CAS
             ExceptionHelper.UnmanagedPermission.Demand();
+#endif
             Instance.Unregister(authenticationModule);
         }
 
@@ -221,7 +227,9 @@ namespace System.Net {
         /// </devdoc>
         public static void Unregister(string authenticationScheme) 
         {
+#if FEATURE_MONO_CAS
             ExceptionHelper.UnmanagedPermission.Demand();
+#endif
             Instance.Unregister(authenticationScheme);
         }
 
index fec7f5cde3581f40c4eb63f789bb6ac3fa6bf801..d111e81a484a72aa398bec43d6278c4a4fce11ff 100644 (file)
@@ -5,8 +5,8 @@
 //------------------------------------------------------------------------------
 
 namespace System.Net {
-
+#if SECURITY_DEP
     public delegate AuthenticationSchemes AuthenticationSchemeSelector(HttpListenerRequest httpRequest);
-
+#endif
 }
 
index f9f6b94161e27d15873288644d88414d14870972..328546a1e4e967c1851d12eeeecbea3821726e41 100644 (file)
@@ -104,6 +104,11 @@ namespace System.Net {
             }
         }
 
+#if MONO
+        // Temporary bridge to old implementation
+        internal string ModuleAuthenticationType;
+#endif
+
     } // class Authorization
 
 
index d1927650d7f655b549f9d0143578694722d4d241..198f982db9c73f74a80beb4919dd0311dbfb230d 100644 (file)
@@ -101,11 +101,15 @@ using System.Configuration;
             {
                 if (s_CacheConfigSettings == null)
                 {
+#if MONO
+                    var settings = new RequestCachingSectionInternal();
+#else
                     RequestCachingSectionInternal settings = RequestCachingSectionInternal.GetSection();
 
                     s_DefaultGlobalBinding = new RequestCacheBinding (settings.DefaultCache, settings.DefaultHttpValidator, settings.DefaultCachePolicy);
                     s_DefaultHttpBinding = new RequestCacheBinding (settings.DefaultCache, settings.DefaultHttpValidator, settings.DefaultHttpCachePolicy);
                     s_DefaultFtpBinding = new RequestCacheBinding (settings.DefaultCache, settings.DefaultFtpValidator, settings.DefaultFtpCachePolicy);
+#endif
 
                     s_CacheConfigSettings = settings;
                 }
@@ -113,6 +117,22 @@ using System.Configuration;
         }
     }
 
+#if MONO
+    class RequestCacheValidator
+    {
+        public object CreateValidator ()
+        {
+            throw new NotImplementedException ();
+        }
+    }
+
+    class RequestCachingSectionInternal
+    {
+        // TODO: Implement
+        public readonly bool DisableAllCaching = true;
+    }
+#endif
+
     //
     //
     internal class RequestCacheBinding  {
index 13b735ef54e69e2dd038e17d30d4b352a4943e9b..cee3b6b2eb85a755c5891f1878b577424263d1ae 100644 (file)
@@ -17,7 +17,7 @@ namespace System.Net.Configuration
     using System.Security.Principal;
     using System.ComponentModel;
 
-
+#if !MONO
     public sealed class DefaultProxySection : ConfigurationSection
     {
         public DefaultProxySection()
@@ -134,9 +134,10 @@ namespace System.Net.Configuration
             base.Reset(defaultElement);
         }
     }
-
+#endif
     internal sealed class DefaultProxySectionInternal
     {
+#if !MONO
         [SecurityPermission(SecurityAction.Assert, Flags=SecurityPermissionFlag.ControlPrincipal)]
         internal DefaultProxySectionInternal(DefaultProxySection section)
         {
@@ -274,6 +275,50 @@ namespace System.Net.Configuration
                 this.webProxy.Credentials = SystemNetworkCredential.defaultCredential;
             }
         }
+#else
+
+        static IWebProxy GetDefaultProxy_UsingOldMonoCode()
+        {
+#if CONFIGURATION_DEP
+            DefaultProxySection sec = ConfigurationManager.GetSection ("system.net/defaultProxy") as DefaultProxySection;
+            WebProxy p;
+            
+            if (sec == null)
+                return GetSystemWebProxy ();
+            
+            ProxyElement pe = sec.Proxy;
+            
+            if ((pe.UseSystemDefault != ProxyElement.UseSystemDefaultValues.False) && (pe.ProxyAddress == null)) {
+                IWebProxy proxy = GetSystemWebProxy ();
+                
+                if (!(proxy is WebProxy))
+                    return proxy;
+                
+                p = (WebProxy) proxy;
+            } else
+                p = new WebProxy ();
+            
+            if (pe.ProxyAddress != null)
+                p.Address = pe.ProxyAddress;
+            
+            if (pe.BypassOnLocal != ProxyElement.BypassOnLocalValues.Unspecified)
+                p.BypassProxyOnLocal = (pe.BypassOnLocal == ProxyElement.BypassOnLocalValues.True);
+                
+            foreach(BypassElement elem in sec.BypassList)
+                p.BypassArrayList.Add(elem.Address);
+            
+            return p;
+#else
+            return GetSystemWebProxy ();
+#endif
+        }
+
+        static IWebProxy GetSystemWebProxy()
+        {
+            return System.Net.WebProxy.CreateDefaultProxy ();
+        }
+
+#endif
 
         internal static object ClassSyncObject
         {
@@ -292,6 +337,11 @@ namespace System.Net.Configuration
         {
             lock (DefaultProxySectionInternal.ClassSyncObject)
             {
+#if MONO
+                var res = new DefaultProxySectionInternal();
+                res.webProxy = GetDefaultProxy_UsingOldMonoCode ();
+                return res;
+#else
                 DefaultProxySection section = PrivilegedConfigurationManager.GetSection(ConfigurationStrings.DefaultProxySectionPath) as DefaultProxySection;
                 if (section == null)
                     return null;
@@ -306,6 +356,7 @@ namespace System.Net.Configuration
 
                     throw new ConfigurationErrorsException(SR.GetString(SR.net_config_proxy), exception);
                 }
+#endif
             }
         }
 
index 0df18d001be64a92f9fb759b5f5837e3e05b53c8..9f8eda80a01ebaf1d2b3f1f133a2ca0b8dd486ed 100644 (file)
@@ -302,7 +302,9 @@ namespace System.Net {
             get {
                 //This check will not allow to use local user credentials at will.
                 //Hence the username will not be exposed to the network
+#if FEATURE_MONO_CAS
                 new EnvironmentPermission(EnvironmentPermissionAccess.Read, "USERNAME").Demand();
+#endif
                 return SystemNetworkCredential.defaultCredential;
             }
         }
@@ -311,7 +313,9 @@ namespace System.Net {
             get {
                 //This check will not allow to use local user credentials at will.
                 //Hence the username will not be exposed to the network
+#if FEATURE_MONO_CAS
                 new EnvironmentPermission(EnvironmentPermissionAccess.Read, "USERNAME").Demand();
+#endif
                 return SystemNetworkCredential.defaultCredential;
             }
         }
index e6b2f8e0371b30575032684de952c06e5777e295..e3273c4c9c95a17746b5cae33d505851391c123c 100644 (file)
@@ -171,7 +171,7 @@ namespace System.Net {
             //
             if (ipString.IndexOf(':') != -1 ) {
 
-#if !FEATURE_PAL
+#if !FEATURE_PAL || MONO
                 //
                 // If the address string contains the colon character
                 // then it can only be an IPv6 address. Use a separate
@@ -184,6 +184,7 @@ namespace System.Net {
                 //
                 SocketException e = null;
                 long   scope = 0;
+#if !MONO
                 if(Socket.OSSupportsIPv6)
                 {
                     byte[] bytes = new byte[IPv6AddressBytes];
@@ -221,6 +222,7 @@ namespace System.Net {
                     e = new SocketException();
                 }
                 else
+#endif
                 {
                     unsafe
                     {
@@ -251,7 +253,14 @@ namespace System.Net {
                                 scopeId = scopeId.Substring(1);
                                 if (UInt32.TryParse(scopeId, NumberStyles.None, null, out result))
                                     return new IPAddress(numbers, result);
-
+#if MONO
+                                //
+                                // HACK: .NET does not support scopes with literals at all (API is long based)
+                                // For backward Mono compatibility parsing IPv6 addresses like
+                                // fe80::bae8:56ff:fe47:af7e%en0 will loose en0 information
+                                //
+                                return new IPAddress(numbers, 0);
+#endif
                             }
                         }
                     }
@@ -271,12 +280,13 @@ namespace System.Net {
             else
             // The new IPv4 parser is better than the native one, it can parse 0xFFFFFFFF. (It's faster too).
             {
+#if !MONO
                 // App-Compat: The .NET 4.0 parser used Winsock.  When we removed this initialization in 4.5 it 
                 // uncovered bugs in IIS's management APIs where they failed to initialize Winsock themselves.
                 // DDCC says we need to keep this for an in place release, but to remove it in the next SxS release.
                 Socket.InitializeSockets();
                 ///////////////////////////
-
+#endif
                 int end = ipString.Length;
                 long result;
                 unsafe
@@ -473,8 +483,14 @@ namespace System.Net {
 
                     m_ToString = addressString.ToString();
 #else // !FEATURE_PAL
+
+#if MONO
+                    var v6 = new IPv6AddressFormatter (m_Numbers, ScopeId);
+                    m_ToString = v6.ToString ();
+#else
                     // IPv6 addresses not supported for FEATURE_PAL
                     throw new SocketException(SocketError.OperationNotSupported);
+#endif
 #endif // !FEATURE_PAL
                 }
                 else {
index 19948efa34ef8728e2e23ed5445d988eec9f5dad..d04932e503f93d4c7f85e75d50d3d4f9e90c20b7 100644 (file)
@@ -24,6 +24,7 @@ namespace System.Net {
     using System.Net.NetworkInformation;
     using System.Runtime.Serialization;
     using Microsoft.Win32;
+    using System.Collections.Generic;
 
     internal static class IntPtrHelper {
         /*
@@ -142,7 +143,9 @@ namespace System.Net {
 
         private static void DemandCallback(object state)
         {
+#if FEATURE_MONO_CAS
             ((CodeAccessPermission) state).Demand();
+#endif
         }
 
         // This is for checking if a hostname probably refers to this machine without going to DNS.
@@ -172,7 +175,6 @@ namespace System.Net {
         private static volatile IPAddress[] _LocalAddresses;
         private static object _LocalAddressesLock;
 
-#if MONO_NOT_IMPLEMENTED
 #if !FEATURE_PAL
 
         private static volatile NetworkAddressChangePolled s_AddressChange;
@@ -285,6 +287,19 @@ namespace System.Net {
         }
 
 #else // !FEATURE_PAL
+
+        internal static bool IsAddressLocal(IPAddress ipAddress) {
+            IPAddress[] localAddresses = NclUtilities.LocalAddresses;
+            for (int i = 0; i < localAddresses.Length; i++)
+            {
+                if (ipAddress.Equals(localAddresses[i], false))
+                {
+                    return true;
+                }
+            }
+            return false;
+        }
+
         private const int HostNameBufferLength = 256;
         internal static string _LocalDomainName;
 
@@ -293,6 +308,9 @@ namespace System.Net {
         //
         private static IPHostEntry GetLocalHost()
         {
+#if MONO
+            return Dns.GetHostByName (Dns.GetHostName ());
+#else
             //
             // IPv6 Changes: If IPv6 is enabled, we can't simply use the
             //               old IPv4 gethostbyname(null). Instead we need
@@ -335,6 +353,7 @@ namespace System.Net {
 
                 return Dns.NativeToHostEntry(nativePointer);
             }
+#endif
 
         } // GetLocalHost
 
@@ -400,7 +419,6 @@ namespace System.Net {
             }
         }
 #endif // !FEATURE_PAL
-#endif
 
         private static object LocalAddressesLock
         {
@@ -948,7 +966,7 @@ namespace System.Net {
 
     internal static class ExceptionHelper
     {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         internal static readonly KeyContainerPermission KeyContainerPermissionOpen = new KeyContainerPermission(KeyContainerPermissionFlags.Open);
         internal static readonly WebPermission WebPermissionUnrestricted = new WebPermission(NetworkAccess.Connect);
         internal static readonly SecurityPermission UnmanagedPermission = new SecurityPermission(SecurityPermissionFlag.UnmanagedCode);
@@ -981,7 +999,6 @@ namespace System.Net {
             }
         }
 
-#if MONO_FEATURE_WEB_STACK
         internal static WebException IsolatedException {
             get {
                 return new WebException(NetRes.GetWebStatusString("net_requestaborted", WebExceptionStatus.KeepAliveFailure),WebExceptionStatus.KeepAliveFailure, WebExceptionInternalStatus.Isolated, null);
@@ -1005,7 +1022,6 @@ namespace System.Net {
                 return new WebException(NetRes.GetWebStatusString("net_requestaborted", WebExceptionStatus.RequestProhibitedByCachePolicy), WebExceptionStatus.RequestProhibitedByCachePolicy);
             }
         }
-#endif
     }
 
     internal enum WindowsInstallationType
@@ -1893,7 +1909,6 @@ typedef struct _SCHANNEL_CRED
         WriteWait = 2,
     }
 
-#if MONO_FEATURE_WEB_STACK
     //
     // HttpVerb - used to define various per Verb Properties
     //
@@ -1964,7 +1979,6 @@ typedef struct _SCHANNEL_CRED
         }
     }
 
-
     //
     // HttpProtocolUtils - A collection of utility functions for HTTP usage.
     //
@@ -1998,7 +2012,6 @@ typedef struct _SCHANNEL_CRED
             return D.ToUniversalTime().ToString("R", dateFormat);
         }
     }
-#endif
 
 #if !FEATURE_PAL
     // Proxy class for linking between ICertificatePolicy <--> ICertificateDecider
index 393e21431cf6288999396bb79297329a463a36c5..5a67f249f90222cdc22f11cc45662a82a6f2bfb0 100644 (file)
@@ -5,6 +5,7 @@ using System.Net;
 using System.Threading.Tasks;
 using System.Security.Permissions;
 using System.Diagnostics.CodeAnalysis;
+using System.IO;
 
 namespace System.Net.NetworkInformation
 {
@@ -13,13 +14,41 @@ namespace System.Net.NetworkInformation
     {
         public static IPGlobalProperties GetIPGlobalProperties()
         {
+#if MONODROID
+            return new AndroidIPGlobalProperties ();
+#elif MONOTOUCH || XAMMAC || MOBILE_STATIC
+            return new UnixIPGlobalProperties ();
+#elif MONO
+            switch (Environment.OSVersion.Platform) {
+            case PlatformID.Unix:
+                MibIPGlobalProperties impl = null;
+                if (Directory.Exists (MibIPGlobalProperties.ProcDir)) {
+                    impl = new MibIPGlobalProperties (MibIPGlobalProperties.ProcDir);
+                    if (File.Exists (impl.StatisticsFile))
+                        return impl;
+                }
+                if (Directory.Exists (MibIPGlobalProperties.CompatProcDir)) {
+                    impl = new MibIPGlobalProperties (MibIPGlobalProperties.CompatProcDir);
+                    if (File.Exists (impl.StatisticsFile))
+                        return impl;
+                }
+                return new UnixIPGlobalProperties ();
+            default:
+                return new Win32IPGlobalProperties ();
+            }
+#else          
             (new NetworkInformationPermission(NetworkInformationAccess.Read)).Demand();
             return new SystemIPGlobalProperties();
+#endif
         }
 
         internal static IPGlobalProperties InternalGetIPGlobalProperties()
         {
+#if MONO
+            return GetIPGlobalProperties();
+#else
             return new SystemIPGlobalProperties();
+#endif
         }
 
         /// Gets the Active Udp Listeners on this machine
index 716afeffce1e7f3b55e8de441c9d0b9714aee7c3..73db45503897c1c398cdc660dbf75de83510e38d 100644 (file)
@@ -26,7 +26,7 @@ namespace System.Net.NetworkInformation {
             }
         }
     }
-
+#if !MONO
     [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1053:StaticHolderTypesShouldNotHaveConstructors")]
     public class NetworkChange{
     #region designer support for System.Windows.dll
@@ -332,7 +332,7 @@ namespace System.Net.NetworkInformation {
             } //ends ignoreaddresschanges
         }
     }
-
+#endif
     public delegate void NetworkAddressChangedEventHandler(object sender, EventArgs e);
     public delegate void NetworkAvailabilityChangedEventHandler(object sender, NetworkAvailabilityEventArgs e);
 }
index 5f594fdd2cf4b770c4c169802eb739d7e6718468..828f60745a6642e77fb4804f5668888d8465309a 100644 (file)
@@ -8,7 +8,9 @@ namespace System.Net.NetworkInformation
     {
         /// Returns objects that describe the network interfaces on the local computer.
         public static NetworkInterface[] GetAllNetworkInterfaces(){
+#if FEATURE_MONO_CAS
             (new NetworkInformationPermission(NetworkInformationAccess.Read)).Demand();
+#endif
             return SystemNetworkInterface.GetNetworkInterfaces();
         }
 
index a0152e921111ba647f43fddae98bbf4efdd1cbfc..76f2803c39fa4dd7d9127be2734fb18e4b20d117 100644 (file)
@@ -9,12 +9,12 @@ namespace System.Net.NetworkInformation
         const int DontFragmentFlag = 2;
         int ttl = 128;
         bool dontFragment;
-
+#if !MONO
         internal PingOptions (IPOptions options) {
             this.ttl = options.ttl;
             this.dontFragment = ((options.flags & DontFragmentFlag) > 0 ? true : false);
         }
-
+#endif
         public PingOptions (int ttl, bool dontFragment) {
             if (ttl <= 0) {
                 throw new ArgumentOutOfRangeException("ttl");
index 873f40c8564fd3d2ff69c4f99da7b0af64f5776a..d3b010fedb7472444f4b4eb8c341b1f130265847 100644 (file)
@@ -37,7 +37,16 @@ namespace System.Net.NetworkInformation
                 buffer = new byte[0];
         }
 
-
+#if MONO
+        internal PingReply (IPAddress address, byte [] buffer, PingOptions options, long roundtripTime, IPStatus status)
+        {
+            this.address = address;
+            this.buffer = buffer;
+            this.options = options;
+            this.rtt = roundtripTime;
+            this.ipStatus = status;
+        }
+#else
         // the main constructor for the icmpsendecho apis
         internal PingReply (IcmpEchoReply reply) {
             address = new IPAddress (reply.address);
@@ -72,7 +81,7 @@ namespace System.Net.NetworkInformation
                 buffer = new byte[0];
 
         }
-
+#endif
 
  
         //translates the relevant icmpsendecho codes to a ipstatus code
index 1c02c328d155cc93349bc298fa300fdef21d0b6b..1402c02247d973549208fc34c08ead61d06918b9 100644 (file)
@@ -9,7 +9,7 @@ namespace System.Net.NetworkInformation
     {
         IPAddress address;
 
-        private SystemGatewayIPAddressInformation(IPAddress address){
+        internal SystemGatewayIPAddressInformation(IPAddress address){
             this.address = address;
         }
 
index 5e51f77955856516645bade5bd68a5bef1be13e9..feea9b74586dbb24c20acd80be6d77d1b1aaadb0 100644 (file)
@@ -24,11 +24,20 @@ namespace System.Net.NetworkInformation {
         internal bool transient = false;
         internal bool dnsEligible = true;
 
+#if MONO
+        public SystemIPAddressInformation(IPAddress address, bool isDnsEligible, bool isTransient)
+        {
+            this.address = address;
+            this.dnsEligible = isDnsEligible;
+            this.transient = isTransient;
+        }
+#else
         internal SystemIPAddressInformation(IPAddress address, AdapterAddressFlags flags) {
             this.address = address;
             transient = (flags & AdapterAddressFlags.Transient) > 0;
             dnsEligible = (flags & AdapterAddressFlags.DnsEligible) > 0;
         }
+#endif
 
         public override IPAddress Address{get {return address;}}
 
index 194627463c0c063b09d085fdbdd429c7560afb08..fa774cf4f341f1435283a0d6eeea5017b7e7d8af 100644 (file)
@@ -9,6 +9,7 @@ namespace System.Net.NetworkInformation {
     using System.Threading;
     using System.Collections.Generic;
 
+#if !MONO
     internal class SystemIPGlobalProperties:IPGlobalProperties {
         private FixedInfo fixedInfo;
         private bool fixedInfoInitialized = false;
@@ -456,7 +457,7 @@ namespace System.Net.NetworkInformation {
 
     }   //ends networkinformation class
 
-   
+#endif   
 
     internal struct FixedInfo{
         internal FIXED_INFO info;
index 1ff5a5598e00c33b59a168cd71dc1d02ae7fb3c4..ade419befaaa8eb4a51ca56d002da6005947e7c5 100644 (file)
@@ -20,7 +20,14 @@ namespace System.Net.NetworkInformation {
         IPEndPoint localEndPoint;
         IPEndPoint remoteEndPoint;
         TcpState state;
-
+#if MONO
+        public SystemTcpConnectionInformation (IPEndPoint local, IPEndPoint remote, TcpState state)
+        {
+            localEndPoint = local;
+            remoteEndPoint = remote;
+            this.state = state;
+        }
+#else
         internal SystemTcpConnectionInformation(MibTcpRow row) {
             state = row.state;
 
@@ -47,7 +54,7 @@ namespace System.Net.NetworkInformation {
             localEndPoint = new IPEndPoint(new IPAddress(row.localAddr, row.localScopeId), (int)localPort);
             remoteEndPoint = new IPEndPoint(new IPAddress(row.remoteAddr, row.remoteScopeId), (int)remotePort);
         }
-
+#endif
 
         public override TcpState State{get {return state;}}
         public override IPEndPoint LocalEndPoint{get {return localEndPoint;}}
index 430bd12676a5218e393645e1190b81acea6f617f..66e1e660a1ed0d88e990c12eb606d2200abd59be 100644 (file)
@@ -24,6 +24,7 @@ namespace System.Net.NetworkInformation {
         private uint preferredLifetime;
         private byte prefixLength;
 
+#if !MONO
         internal SystemUnicastIPAddressInformation(IpAdapterUnicastAddress adapterAddress) {
             IPAddress ipAddress = adapterAddress.address.MarshalIPAddress();
             this.innerInfo = new SystemIPAddressInformation(ipAddress, adapterAddress.flags);
@@ -41,6 +42,7 @@ namespace System.Net.NetworkInformation {
                 ipv4Mask = PrefixLengthToSubnetMask(prefixLength, ipAddress.AddressFamily);
             }
         }
+#endif
 
        /// <include file='doc\NetworkInterface.uex' path='docs/doc[@for="IPAddressInformation.Address"]/*' />
         public override IPAddress Address{get {return innerInfo.Address;}}
@@ -128,7 +130,7 @@ namespace System.Net.NetworkInformation {
                 return dhcpLeaseLifetime;
                 }
             }
-        
+#if !MONO
         // Helper method that marshals the addressinformation into the classes
         internal static UnicastIPAddressInformationCollection MarshalUnicastIpAddressInformationCollection(IntPtr ptr) {
             UnicastIPAddressInformationCollection addressList = new UnicastIPAddressInformationCollection();
@@ -167,5 +169,6 @@ namespace System.Net.NetworkInformation {
 
             return new IPAddress(addressBytes);
         }
+#endif
     }
 }
index 7f71c4ba8a9ced6e7eb6529f75ba36d20569829f..2995de9113dc4350739007fb9516470a035d46e0 100644 (file)
@@ -93,7 +93,9 @@ namespace System.Net {
                 return m_BindIPEndPointDelegate;
             }
             set {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.InfrastructurePermission.Demand();
+#endif
                 m_BindIPEndPointDelegate = value;
             }
         }
@@ -458,11 +460,13 @@ namespace System.Net {
                     throw new NotSupportedException(SR.GetString(SR.net_servicePointAddressNotSupportedInHostMode));
                 }
 
+#if FEATURE_MONO_CAS
                 // Don't let low-trust apps discover the proxy information.
                 if (m_ProxyServicePoint)
                 {
                     ExceptionHelper.WebPermissionUnrestricted.Demand();
                 }
+#endif
 
                 return m_Address;
             }
index ded74015f3324eda83657791aecaa0775884638d..48bb45802f08f94ea2fef8a6beeb4683a85450e6 100644 (file)
@@ -22,7 +22,7 @@ namespace System.Net {
     using Microsoft.Win32;
     
     // This turned to be a legacy type name that is simply forwarded to System.Security.Authentication.SslProtocols defined values.
-#if !MONO && !FEATURE_PAL
+#if !FEATURE_PAL || MONO
     [Flags]
     public enum SecurityProtocolType
     {
@@ -31,7 +31,8 @@ namespace System.Net {
         Tls11         = System.Security.Authentication.SslProtocols.Tls11,
         Tls12         = System.Security.Authentication.SslProtocols.Tls12,
     }
-
+#endif
+#if !MONO && !FEATURE_PAL
     internal class CertPolicyValidationCallback
     {
         readonly ICertificatePolicy  m_CertificatePolicy;
index 49bc92e0936c999f0079182efe604b6b6d3412f0..42743232cf72ab204be6f1ea18589b80d6eb29e1 100644 (file)
@@ -246,7 +246,16 @@ namespace System.Net {
         // this is the object that created the header collection.
         private WebHeaderCollectionType m_Type;
 
-#if !FEATURE_PAL
+#if MONO
+        internal bool AllowMultiValues (string name)
+        {
+            var hinfo = HInfo[name];
+            // Is common header which supports multi value or it's unknown header
+            return hinfo.AllowMultiValues || hinfo.HeaderName == "";
+        }
+#endif
+
+#if !FEATURE_PAL || MONO
         private bool AllowHttpRequestHeader {
             get {
                 if (m_Type==WebHeaderCollectionType.Unknown) {
index 1135be0891ca83a298461452d401ac4bb9d550f3..a9be75be0a64be172631a8208a3654087be8cb87 100644 (file)
@@ -4,6 +4,9 @@
 // </copyright>
 //------------------------------------------------------------------------------
 
+#if MONO
+#undef FEATURE_PAL
+#endif
 namespace System.Net {
     using System.Collections;
     using System.Collections.Generic;
@@ -53,6 +56,7 @@ namespace System.Net {
         private  AuthenticationLevel m_AuthenticationLevel;
         private  TokenImpersonationLevel m_ImpersonationLevel;
 #endif
+
         private RequestCachePolicy      m_CachePolicy;
         private RequestCacheProtocol    m_CacheProtocol;
         private RequestCacheBinding     m_CacheBinding;
@@ -361,7 +365,9 @@ namespace System.Net {
                 throw new ArgumentNullException("creator");
             }
 
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
 
             // Lock this object, then walk down PrefixList looking for a place to
             // to insert this prefix.
@@ -523,7 +529,11 @@ namespace System.Net {
                     lock (InternalSyncObject) {
                         if (s_PrefixList == null) {
                             GlobalLog.Print("WebRequest::Initialize(): calling ConfigurationManager.GetSection()");
+#if MONO
+                            s_PrefixList = PopulatePrefixList ();
+#else
                             s_PrefixList = WebRequestModulesSectionInternal.GetSection().WebRequestModules;
+#endif
                         }
                     }
                 }
@@ -535,6 +545,30 @@ namespace System.Net {
             }
         }
 
+#if MONO
+        static ArrayList PopulatePrefixList ()
+        {
+            var res = new ArrayList();
+
+#if MOBILE || !CONFIGURATION_DEP
+            IWebRequestCreate http = new HttpRequestCreator ();
+            res.Add(new WebRequestPrefixElement("http", http));
+            res.Add(new WebRequestPrefixElement("https", http));
+            res.Add(new WebRequestPrefixElement("file", new FileWebRequestCreator ()));
+            res.Add(new WebRequestPrefixElement("ftp", new FtpRequestCreator ()));
+#else
+            object cfg = ConfigurationManager.GetSection ("system.net/webRequestModules");
+            WebRequestModulesSection s = cfg as WebRequestModulesSection;
+            if (s != null) {
+                foreach (WebRequestModuleElement el in s.WebRequestModules)
+                    res.Add (new WebRequestPrefixElement(el.Prefix, el.Type));
+            }
+#endif
+            return res;
+        }
+#endif
+
+
         // constructors
 
         /// <devdoc>
@@ -588,8 +622,10 @@ namespace System.Net {
                 return RequestCacheManager.GetBinding(string.Empty).Policy;
             }
             set {
+#if FEATURE_MONO_CAS
                 // This is a replacement of RequestCachePermission demand since we are not including the latest in the product.
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
 
                 RequestCacheBinding binding = RequestCacheManager.GetBinding(string.Empty);
                 RequestCacheManager.SetBinding(string.Empty, new RequestCacheBinding(binding.Cache, binding.Validator, value));
@@ -975,7 +1011,7 @@ namespace System.Net {
             }
         }
 
-
+#if !MONO
         // Methods to retrieve the context of the "reading phase" and of the "writing phase" of the request.
         // Each request type can define what goes into what phase.  Typically, the writing phase corresponds to
         // GetRequestStream() and the reading phase to GetResponse(), but if there's no request body, both phases
@@ -996,7 +1032,7 @@ namespace System.Net {
         {
             throw ExceptionHelper.MethodNotImplementedException;
         }
-
+#endif
 
         //
         //
@@ -1072,13 +1108,17 @@ namespace System.Net {
         {
             get
             {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 return InternalDefaultWebProxy;
             }
 
             set
             {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 InternalDefaultWebProxy = value;
             }
         }
@@ -1088,13 +1128,20 @@ namespace System.Net {
         //
         public static IWebProxy GetSystemWebProxy()
         {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
             return InternalGetSystemWebProxy();
         }
 
         internal static IWebProxy InternalGetSystemWebProxy()
         {
+#if MONO
+            // FIXME: Need to break mobile internal API
+            return WebProxy.CreateDefaultProxy();
+#else
             return new WebProxyWrapperOpaque(new WebProxy(true));
+#endif
         }
 
         //
@@ -1162,7 +1209,7 @@ namespace System.Net {
             }
         }
 
-
+#if !MONO
         //
         internal void SetupCacheProtocol(Uri uri)
         {
@@ -1242,5 +1289,6 @@ namespace System.Net {
                 s_EtwFireEndGetRequestStream(this, success, synchronous);
             }
         }
+#endif
     } // class WebRequest
 } // namespace System.Net
index b3e49c94092d9ecacf44cd61ae26a6373f9ba32e..d52fcbca150143bf0aef3994bb16809b66d9ebdb 100644 (file)
@@ -17,12 +17,14 @@ namespace System.Net {
     using System.Net.Configuration;
     using System.Diagnostics.CodeAnalysis;
 
+#if !MONO
     internal enum ReadState {
         Start,
         StatusLine, // about to parse status line
         Headers,    // reading headers
         Data        // now read data
     }
+#endif
 
     internal enum DataParseStatus {
         NeedMoreData = 0,   // need more data
@@ -64,7 +66,7 @@ namespace System.Net {
         public WebParseErrorCode     Code;
     }
 
-
+#if !MONO
     struct TunnelStateObject {
         internal TunnelStateObject(HttpWebRequest r, Connection c){
             Connection = c;
@@ -3846,4 +3848,5 @@ done:
         }
 #endif
     }
+#endif
 }
index 2a7463906e8f5a8ec570515929a22de261a7fd8e..4d283be687438ddb28876853ee476efde265f512 100644 (file)
@@ -315,6 +315,8 @@ namespace System.Net {
 #endif // !FEATURE_PAL
 
     }
+
+#if !MONO
     //
     // This class is a wrapper for Http.sys V2 request queue handle.
     //
@@ -389,7 +391,7 @@ namespace System.Net {
             return true;
         }
     }
-
+#endif
     //
     // SafeHandle to wrap handles created by IcmpCreateFile or Icmp6CreateFile
     // from either icmp.dll or iphlpapi.dll. These handles must be closed by
@@ -412,6 +414,7 @@ namespace System.Net {
         }
     }
 
+#if !MONO
     //
     // Used when working with WinHTTP APIs, like WinHttpOpen(). Holds the HINTERNET handle.
     //
@@ -447,6 +450,7 @@ namespace System.Net {
             return UnsafeNclNativeMethods.SspiHelper.SspiFreeAuthIdentity(handle) == SecurityStatus.OK;
         }
     }
+#endif
     
 #if !FEATURE_PAL
 
@@ -676,6 +680,7 @@ namespace System.Net {
         }
     }
 
+#if !MONO
     ///////////////////////////////////////////////////////////////
     //
     // A few Win32 APIs return pointers to blobs that need GlobalFree().
@@ -754,6 +759,7 @@ namespace System.Net {
             return UnsafeNclNativeMethods.SafeNetHandles.LocalFree(handle) == IntPtr.Zero;
         }
     }
+#endif
 
 #if !FEATURE_PAL
     [SuppressUnmanagedCodeSecurity]
@@ -2136,6 +2142,7 @@ namespace System.Net {
 
 #endif // !FEATURE_PAL
 
+#if !MONO
     internal class SafeNativeOverlapped : SafeHandle
     {
         internal static readonly SafeNativeOverlapped Zero = new SafeNativeOverlapped();
@@ -2740,6 +2747,7 @@ namespace System.Net {
         }
 
     }
+#endif
 
 #if !FEATURE_PAL
 
index 86644c661ac1a7966babdedf55a7dd3d15afb25f..9f04a33e0b7d529739ef11c801bfd54f017b75bc 100644 (file)
@@ -381,7 +381,7 @@ namespace System.Net.Security {
                 // demand the same permissions, then we should remove our
                 // demand here.
                 //
-                #if !DISABLE_CAS_USE
+                #if FEATURE_MONO_CAS
                 ExceptionHelper.KeyContainerPermissionOpen.Demand(); 
                 #endif
                 
@@ -437,7 +437,7 @@ namespace System.Net.Security {
                             // For v 1.1 compat We want to ensure the store is opened under the **process** acount.
                             //
                             try {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                                 using (WindowsIdentity.Impersonate(IntPtr.Zero))
 #endif
                                 {
@@ -583,7 +583,7 @@ namespace System.Net.Security {
         //          Note: We call a user certificate selection delegate under permission
         //          assert but the signature of the delegate is unique so it's safe
         //
-        #if !DISABLE_CAS_USE
+        #if FEATURE_MONO_CAS
         [StorePermission(SecurityAction.Assert, Unrestricted=true)]
         #endif
         private bool AcquireClientCredentials(ref byte[] thumbPrint)
@@ -826,7 +826,7 @@ namespace System.Net.Security {
         //          Note: We call a user certificate selection delegate under permission
         //          assert but the signature of the delegate is unique so it's safe
         //
-        #if !DISABLE_CAS_USE
+        #if FEATURE_MONO_CAS
         [StorePermission(SecurityAction.Assert, Unrestricted=true)]
         #endif
         private bool AcquireServerCredentials(ref byte[] thumbPrint)
@@ -906,7 +906,7 @@ namespace System.Net.Security {
                 //
                 // For v 1.1 compat We want to ensure the credential are accessed under >>process<< acount.
                 //
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 using (WindowsIdentity.Impersonate(IntPtr.Zero))
 #endif
                 {
@@ -1285,7 +1285,7 @@ namespace System.Net.Security {
         //SECURITY: The scenario is allowed in semitrust StorePermission is asserted for Chain.Build
         //          A user callback has unique signature so it is safe to call it under permisison assert.
         //
-        #if !DISABLE_CAS_USE
+        #if FEATURE_MONO_CAS
         [StorePermission(SecurityAction.Assert, Unrestricted=true)]
         #endif
         internal bool VerifyRemoteCertificate(RemoteCertValidationCallback remoteCertValidationCallback)
index 4d289ac7bc974be051af38c24b23102e412ac5a3..0365206cf5fb0949bdd7a36532f5726277e84b37 100644 (file)
@@ -20,8 +20,13 @@ namespace System.Net
     {
         internal Semaphore(int initialCount, int maxCount) : base() {
             lock (this) {
+#if MONO
+                int errorCode;
+                Handle = System.Threading.Semaphore.CreateSemaphore_internal(initialCount, maxCount, null, out errorCode);
+#else
                 // 
                 Handle = UnsafeNclNativeMethods.CreateSemaphore(IntPtr.Zero, initialCount, maxCount, IntPtr.Zero);
+#endif
             }
         }
 
@@ -36,14 +41,19 @@ namespace System.Net
 */
 
         internal bool ReleaseSemaphore() {
-#if DEBUG        
+#if MONO
+            int previousCount;
+            return System.Threading.Semaphore.ReleaseSemaphore_internal (Handle, 1, out previousCount);
+#else
+#if DEBUG
             int previousCount;
             bool success = UnsafeNclNativeMethods.ReleaseSemaphore(Handle, 1, out previousCount);        
             GlobalLog.Print("ReleaseSemaphore#"+ValidationHelper.HashString(this)+" success:"+success+" previousCount:"+previousCount.ToString());
             return success;
 #else            
             return UnsafeNclNativeMethods.ReleaseSemaphore(Handle, 1, IntPtr.Zero);
-#endif            
+#endif
+#endif
         }
 
         /*
index 29eb3e52549eb1cc4e4b5cf7bf4a26ab042b5291..e941002364158843181ef58cbfb341bec1bd16b8 100644 (file)
@@ -43,7 +43,9 @@ namespace System.Net {
         //
         public override int Count {
             get {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 return m_SyncTable.Count;
             }
         }
@@ -106,7 +108,9 @@ namespace System.Net {
         //
         public override ICollection Keys {
             get {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 return m_SyncTable.Keys;
             }
         }
@@ -114,14 +118,18 @@ namespace System.Net {
         public override object SyncRoot {
             [HostProtection(Synchronization=true)]
             get {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 return m_SyncTable;
             }
         }
         //
         public override ICollection Values {
             get {
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 if (m_ValuesWrapper == null)
                 {
                     m_ValuesWrapper = new ValueCollection(this);
@@ -136,7 +144,9 @@ namespace System.Net {
         }
         //
         public override void Clear() {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
             m_SyncTable.Clear();
         }
         //
@@ -146,7 +156,9 @@ namespace System.Net {
         }
         //
         public override bool ContainsValue(string value) {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
             foreach (SpnToken spnToken in m_SyncTable.Values)
             {
                 if (spnToken.Spn == value)
@@ -157,7 +169,9 @@ namespace System.Net {
 
         // We have to unwrap the SpnKey and just expose the Spn
         public override void CopyTo(Array array, int index) {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
             CheckCopyToArguments(array, index, Count);
 
             int offset = 0;
@@ -169,7 +183,9 @@ namespace System.Net {
         }
         //
         public override IEnumerator GetEnumerator() {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
 
             foreach (string key in m_SyncTable.Keys)
             {
@@ -195,7 +211,9 @@ namespace System.Net {
             try {
                 Uri uri = new Uri(key);
                 key = uri.GetParts(UriComponents.Scheme | UriComponents.Host | UriComponents.Port | UriComponents.Path, UriFormat.SafeUnescaped);
+#if FEATURE_MONO_CAS
                 new WebPermission(NetworkAccess.Connect, new Uri(key)).Demand();
+#endif
             }
             catch(UriFormatException e) {
                 throw new ArgumentException(SR.GetString(SR.net_mustbeuri, "key"), "key", e);
index 059e88d5bcde16c8e502e603def82720c600ed11..c75a7136694cc52e0e2a78f7a3675fb631d843df 100644 (file)
@@ -182,7 +182,9 @@ namespace System.Net {
 
         static TimerThread() {
             s_ThreadEvents = new WaitHandle[] { s_ThreadShutdownEvent, s_ThreadReadyEvent };
+#if MONO_FEATURE_MULTIPLE_APPDOMAINS
             AppDomain.CurrentDomain.DomainUnload += new EventHandler(OnDomainUnload);
+#endif
         }
 
         /// <summary>
index 4ae8d5c7c05875839a2adcf8ed0a1a0a43e44522..0db05f3620e2fc500dfb3c0db05801c66b6bf99c 100644 (file)
@@ -246,9 +246,11 @@ namespace System.Net {
                 if(Logging.On)Logging.Exception(Logging.Web, this, "BeginGetRequestStream", exception);
                 throw;
             } finally {
+#if !MONO
                 if (FrameworkEventSource.Log.IsEnabled()) {
                     LogBeginGetRequestStream(success, synchronous: false);
                 }
+#endif
                 GlobalLog.Leave("FileWebRequest::BeginGetRequestSteam");
             }
 
@@ -280,9 +282,11 @@ namespace System.Net {
                 if(Logging.On)Logging.Exception(Logging.Web, this, "BeginGetResponse", exception);
                 throw;
             } finally {
+#if !MONO
                 if (FrameworkEventSource.Log.IsEnabled()) {
                     LogBeginGetResponse(success, synchronous: false);
                 }
+#endif
                 GlobalLog.Leave("FileWebRequest::BeginGetResponse");
             }
 
@@ -319,9 +323,11 @@ namespace System.Net {
                 throw;
             } finally {
                 GlobalLog.Leave("FileWebRequest::EndGetRequestStream");
+#if !MONO
                 if (FrameworkEventSource.Log.IsEnabled()) {
                     LogEndGetRequestStream(success, synchronous: false);
                 }
+#endif
             }
 
             return stream;
@@ -355,10 +361,12 @@ namespace System.Net {
             } finally {
                 GlobalLog.Leave("FileWebRequest::EndGetResponse");
 
+#if !MONO
                 // there is no statusCode in FileWebRequest object, defaulting it to zero.
                 if (FrameworkEventSource.Log.IsEnabled()) {
                     LogEndGetResponse(success, synchronous: false, statusCode: 0);
                 }
+#endif
             }
 
             return response;
index 62ca59ada63ad08dddb09c6ce3503c4a1e0cfce1..80acb75ad34e7d3d5b2b24817a568c07b451b34f 100644 (file)
@@ -238,7 +238,7 @@ namespace System.Net {
         /// </devdoc>
         public IWebProxy Proxy {
             get {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
 #endif
                 if (!m_ProxySet) {
@@ -248,7 +248,7 @@ namespace System.Net {
                 }
             }
             set {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
 #endif
                 m_Proxy = value;
index ca05e1355e561793915794b0bdb735542ee2df37..fe5858875faa8c20236f15eb604adbe491b20c26 100644 (file)
@@ -414,7 +414,9 @@ namespace System.Net {
         /// </devdoc>
         [Obsolete("This method has been deprecated. Please use the proxy selected for you by default. http://go.microsoft.com/fwlink/?linkid=14202")]
         public static WebProxy GetDefaultProxy() {
+#if FEATURE_MONO_CAS
             ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
             return new WebProxy(true);
         }
 
@@ -435,7 +437,9 @@ namespace System.Net {
             if (useRegistry) {
                 // just make the proxy advanced, don't populate with any settings
                 // note - this will happen in the context of the user performing the deserialization (their proxy settings get read)
+#if FEATURE_MONO_CAS
                 ExceptionHelper.WebPermissionUnrestricted.Demand();
+#endif
                 UnsafeUpdateFromRegistry();
                 return;
             }
@@ -497,6 +501,28 @@ namespace System.Net {
             }
         }
 
+#if MONO
+        public static IWebProxy CreateDefaultProxy ()
+        {
+#if MONOTOUCH
+            return Mono.Net.CFNetwork.GetDefaultProxy ();
+#elif MONODROID
+            // Return the system web proxy.  This only works for ICS+.
+            var data = AndroidPlatform.GetDefaultProxy ();
+            if (data != null)
+                return data;
+#else
+            if (Platform.IsMacOS) {
+                var data = Mono.Net.CFNetwork.GetDefaultProxy ();
+                if (data != null)
+                    return data;
+            }
+#endif
+
+            return new WebProxy (true);
+        }
+#endif
+
         // This constructor is used internally to make WebProxies that read their state from the registry.
         // 
         internal WebProxy(bool enableAutoproxy)
@@ -515,7 +541,7 @@ namespace System.Net {
         internal void UnsafeUpdateFromRegistry() {
             GlobalLog.Assert(!_UseRegistry, "WebProxy#{0}::UnsafeUpdateFromRegistry()|_UseRegistry ScriptEngine#{1}", ValidationHelper.HashString(this), ValidationHelper.HashString(m_ScriptEngine));
             _UseRegistry = true;
-#if !FEATURE_PAL
+#if !FEATURE_PAL || !MOBILE
             ScriptEngine = new AutoWebProxyScriptEngine(this, true);
             WebProxyData webProxyData = ScriptEngine.GetWebProxyData();
 
index 4e565d3242c7dfc9f68c7b2ae4b617124d1debb3..8a69ca2fae89fc321d3019b5ab1a74177f28d8e7 100644 (file)
@@ -3,7 +3,9 @@
 //     Copyright (c) Microsoft Corporation.  All rights reserved.
 // </copyright>
 //------------------------------------------------------------------------------
-
+#if MONO
+#undef PLATFORM_UNIX
+#endif
 namespace System {
     using System.Runtime.InteropServices;
     using System.Text;
@@ -123,6 +125,10 @@ namespace System {
             QueryIriCanonical =         0x20000000000,
             FragmentIriCanonical =      0x40000000000,
             IriCanonical =              0x78000000000,
+
+#if MONO
+            CompressedSlashes = 0x100000000000
+#endif
         }
 
         private Flags       m_Flags;
@@ -234,16 +240,18 @@ namespace System {
                    ((s_IdnScope == UriIdnScope.All) || ((s_IdnScope == UriIdnScope.AllExceptIntranet)
                                                                             && StaticNotAny(flags, Flags.IntranetUri))));
         }
-
+#if !MONO
         //
         // check if the scheme + host are in intranet or not
         // Used to determine of we apply idn or not
         //
         private static volatile IInternetSecurityManager s_ManagerRef = null;
         private static object s_IntranetLock = new object();
+#endif
 
         private bool IsIntranet(string schemeHost)
         {
+#if !MONO
             bool error = false;
             int zone = -1;
             int E_FAIL = unchecked((int)0x80004005);
@@ -309,6 +317,7 @@ namespace System {
                 }
                 return true;
             }
+#endif
             return false;
         }
 
@@ -461,8 +470,14 @@ namespace System {
 
         private void CreateUri(Uri baseUri, string relativeUri, bool dontEscape)
         {
+            const UriKind kind =
+#if MONO
+                DotNetRelativeOrAbsolute;
+#else
+                RelativeOrAbsolute;
+#endif
             // Parse relativeUri and populate Uri internal data.
-            CreateThis(relativeUri, dontEscape, UriKind.RelativeOrAbsolute);
+            CreateThis(relativeUri, dontEscape, kind);
 
             UriFormatException e;
             if (baseUri.Syntax.IsSimple)
@@ -953,12 +968,30 @@ namespace System {
 
         // Value from config Uri section
         // The use of this IDN mechanic is discouraged on Win8+ due to native platform improvements.
-        private static volatile UriIdnScope s_IdnScope = IdnElement.EnabledDefaultValue;
+        private static volatile UriIdnScope s_IdnScope = 
+#if !CONFIGURATION_DEP
+            UriIdnScope.None;
+#else
+            IdnElement.EnabledDefaultValue;
+#endif
 
         // Value from config Uri section
         // On by default in .NET 4.5+ and cannot be disabled by config.
         private static volatile bool s_IriParsing = 
+#if MONO
+            !(Environment.GetEnvironmentVariable ("MONO_URI_IRIPARSING") == "false");
+#else
             (UriParser.ShouldUseLegacyV2Quirks ? IriParsingElement.EnabledDefaultValue : true);
+#endif
+
+#if MONO
+        // HACK for paths such as "/foo" to be absolute regardless of platform
+        static bool useDotNetRelativeOrAbsolute = Environment.GetEnvironmentVariable ("MONO_URI_DOTNETRELATIVEORABSOLUTE") == "true";
+
+        const UriKind DotNetRelativeOrAbsolute = (UriKind) 300;
+
+        internal static readonly bool IsWindowsFileSystem = System.IO.Path.DirectorySeparatorChar == '\\';
+#endif
 
         private static object s_initLock;
 
@@ -983,7 +1016,7 @@ namespace System {
             if (!s_ConfigInitialized) {
                 lock(InitializeLock) {
                     if (!s_ConfigInitialized && !s_ConfigInitializing) {
-
+#if !MONO
                         // setting s_ConfigInitializing to true makes sure, that in web scenarios,
                         // where Uri instances may be created while parsing the web.config files, will not
                         // call into this code block again. We'll enter the following code only once per
@@ -1003,14 +1036,14 @@ namespace System {
                             SetEscapedDotSlashSettings(section, Uri.UriSchemeWs);
                             SetEscapedDotSlashSettings(section, Uri.UriSchemeWss);
                         }
-
+#endif
                         s_ConfigInitialized = true;
                         s_ConfigInitializing = false;
                     }
                 }
             }
         }
-
+#if !MONO
         // Legacy - This no longer has any affect in .NET 4.5 (non-quirks). See UriParser.HttpSyntaxFlags.
         private static void SetEscapedDotSlashSettings(UriSectionInternal uriSection, string scheme)
         {
@@ -1032,12 +1065,19 @@ namespace System {
                 }
             }
         }
-
+#endif
         private string GetLocalPath(){
             EnsureParseRemaining();
 
+#if MONO
+            //
+            // I think this is wrong but it keeps LocalPath fully backward compatible
+            //
+            if (IsUncOrDosPath && (IsWindowsFileSystem || !IsUncPath))
+#else
             //Other cases will get a Unix-style path
             if (IsUncOrDosPath)
+#endif
             {
                 EnsureHostString(false);
                 int start;
@@ -2116,8 +2156,19 @@ namespace System {
                         {
                             // see VsWhidbey#226745 V1.0 did not support file:///, fixing it with minimal behavior change impact
                             // Only FILE scheme may have UNC Path flag set
+#if MONO
+                            if (!IsWindowsFileSystem) {
+                                if (i - idx > 3) {
+                                    m_Flags |= Flags.CompressedSlashes;
+                                    idx = i;
+                                }
+                            } else {
+#endif
                             m_Flags |= Flags.UncPath;
                             idx = i;
+#if MONO
+                            }
+#endif
                         }
                     }
                 }
@@ -2128,8 +2179,8 @@ namespace System {
 #if !PLATFORM_UNIX
                 if ((m_Flags & (Flags.UncPath|Flags.DosPath)) != 0) {
                 }
-#else
-                if ((m_Flags & Flags.ImplicitFile) != 0) {
+// #else
+                else if (!IsWindowsFileSystem && (m_Flags & (Flags.ImplicitFile|Flags.CompressedSlashes)) != 0) {
                     // Already parsed up to the path
                 }
 #endif // !PLATFORM_UNIX
@@ -2140,9 +2191,9 @@ namespace System {
                     if (m_Syntax.InFact(UriSyntaxFlags.MustHaveAuthority)) {
                         // (V1.0 compatiblity) This will allow http:\\ http:\/ http:/\
 #if !PLATFORM_UNIX
-                        if ((first == '/' || first == '\\') && (second == '/' || second == '\\'))
-#else
-                        if (first == '/' && second == '/')
+                        if ((IsWindowsFileSystem && (first == '/' || first == '\\') && (second == '/' || second == '\\')) ||
+// #else
+                        (!IsWindowsFileSystem && (first == '/' && second == '/')))
 #endif // !PLATFORM_UNIX
                         {
                             m_Flags |= Flags.AuthorityFound;
@@ -2300,7 +2351,7 @@ namespace System {
 
                     idx+=2;
 #if !PLATFORM_UNIX
-                    if ((cF & (Flags.UncPath|Flags.DosPath)) != 0) {
+                    if ((cF & (Flags.UncPath|Flags.DosPath|Flags.CompressedSlashes)) != 0) {
                         // Skip slashes if it was allowed during ctor time
                         // NB: Today this is only allowed if a Unc or DosPath was found after the scheme
                         while( idx < (ushort)(cF & Flags.IndexMask) && (m_String[idx] == '/' || m_String[idx] == '\\')) {
@@ -3632,7 +3683,7 @@ namespace System {
                 return 0;
             }
 #if !PLATFORM_UNIX
-            else if ((c=uriString[idx]) == '/' || c == '\\') {
+            else if (((c=uriString[idx]) == '/' && IsWindowsFileSystem) || c == '\\') {
                 //UNC share ?
                 if ((c=uriString[idx+1]) == '\\' || c == '/') {
                     flags |= (Flags.UncPath|Flags.ImplicitFile|Flags.AuthorityFound);
@@ -3647,7 +3698,6 @@ namespace System {
                 err = ParsingError.BadFormat;
                 return 0;
             }
-#else
             else if (uriString[idx] == '/') {
                 // On UNIX an implicit file has the form /<path> or scheme:///<path>
                 if (idx == 0 || uriString[idx-1] != ':' ) {
@@ -3901,8 +3951,14 @@ namespace System {
             {
                 if (syntax.InFact(UriSyntaxFlags.AllowEmptyHost))
                 {
+#if !PLATFORM_UNIX
                     flags &= ~Flags.UncPath;    //UNC cannot have an empty hostname
-                    if (StaticInFact(flags, Flags.ImplicitFile))
+#endif
+                    if (StaticInFact(flags, Flags.ImplicitFile)
+#if MONO
+                     && (pString[idx] != '/' || IsWindowsFileSystem)
+#endif
+                     )
                         err = ParsingError.BadHostName;
                     else
                         flags |= Flags.BasicHostType;
@@ -3912,6 +3968,14 @@ namespace System {
 
                 if (hasUnicode && iriParsing && hostNotUnicodeNormalized){
                     flags |= Flags.HostUnicodeNormalized;// no host
+
+#if MONO
+                    // I am not certain this is the best fix but for Unix implicit paths with
+                    // unicode characters the host must be valid (null or non-empty) as
+                    // CreateUriInfo assumes. This should happen only for paths like /foo/path-with-unicode
+                    if (newHost.Length == 0 && (flags & Flags.BasicHostType) != 0)
+                        newHost = null;
+#endif
                 }
 
                  return idx;
@@ -5117,6 +5181,7 @@ namespace System {
            else {
                if (basePart.IsImplicitFile) {
 #if !PLATFORM_UNIX
+                if (IsWindowsFileSystem)
                    if (basePart.IsDosPath) {
                        // The FILE DOS path comes as /c:/path, we have to exclude first 3 chars from compression
                        path = Compress(path, 3, ref length, basePart.Syntax);
@@ -5125,7 +5190,8 @@ namespace System {
                    else {
                        left =  @"\\" + basePart.GetParts(UriComponents.Host, UriFormat.Unescaped);
                    }
-#else
+//#else
+                else
                    left =  basePart.GetParts(UriComponents.Host, UriFormat.Unescaped);
 #endif // !PLATFORM_UNIX
 
index 8d03b121435cbb4579f123df0e46210ad2a4ab4f..9f55631246f21d5a8d9579df9422dc10efdc4183 100644 (file)
@@ -17,6 +17,9 @@ Author:
 Revision History:
 
 --*/
+#if MONO
+#undef PLATFORM_UNIX
+#endif
 
 namespace System {
     using System.Globalization;
@@ -33,6 +36,9 @@ namespace System {
             // if (!Enum.IsDefined(typeof(UriKind), uriKind)) -- We currently believe that Enum.IsDefined() is too slow 
             // to be used here.
             if ((int)uriKind < (int)UriKind.RelativeOrAbsolute || (int)uriKind > (int)UriKind.Relative) {
+#if MONO
+                if (uriKind != DotNetRelativeOrAbsolute)
+#endif
                 throw new ArgumentException(SR.GetString(SR.net_uri_InvalidUriKind, uriKind));
             }
 
@@ -55,6 +61,12 @@ namespace System {
             {
                 if (IsImplicitFile)
                 {
+#if MONO
+                    if (uriKind == UriKind.RelativeOrAbsolute && m_String.Length > 0 && m_String[0] == '/' && !useDotNetRelativeOrAbsolute) {
+                        // For original Mono behaviour where / is considered to be absolute path
+                    }
+                    else
+#endif
                     // V1 compat VsWhidbey#252282
                     // A relative Uri wins over implicit UNC path unless the UNC path is of the form "\\something" and 
                     // uriKind != Absolute
@@ -312,7 +324,13 @@ namespace System {
         public static bool TryCreate(Uri baseUri, string relativeUri, out Uri result)
         {
             Uri relativeLink;
-            if (TryCreate(relativeUri, UriKind.RelativeOrAbsolute, out relativeLink))
+            const UriKind kind =
+#if MONO
+                DotNetRelativeOrAbsolute;
+#else
+                RelativeOrAbsolute;
+#endif
+            if (TryCreate(relativeUri, kind, out relativeLink))
             {
                 if (!relativeLink.IsAbsoluteUri)
                     return TryCreate(baseUri, relativeLink, out result);
@@ -658,6 +676,9 @@ namespace System {
             // if (!Enum.IsDefined(typeof(UriKind), uriKind)) -- We currently believe that Enum.IsDefined() is too slow 
             // to be used here.
             if ((int)uriKind < (int)UriKind.RelativeOrAbsolute || (int)uriKind > (int)UriKind.Relative){
+#if MONO
+                if (uriKind != DotNetRelativeOrAbsolute)
+#endif               
                 throw new ArgumentException(SR.GetString(SR.net_uri_InvalidUriKind, uriKind));
             }
 
@@ -715,8 +736,15 @@ namespace System {
 
             if ((object)relativeUri != null)
             {
-                if (relativeUri.IsAbsoluteUri)
+                if (relativeUri.IsAbsoluteUri) {
+#if MONO
+                // Hack for Mono specific handling of /paths which are absolute on unix but
+                // we want to allow concatination of such paths to match .net
+                if (!(!IsWindowsFileSystem && relativeUri.OriginalString [0] == '/' && relativeUri.IsImplicitFile))
+#endif
+
                     return relativeUri;
+                }
 
                 relativeStr = relativeUri.OriginalString;
                 userEscaped = relativeUri.UserEscaped;
index bf2483d2f12207d1b27581311a314fe3210ed1bb..009eef5770247e369262cd46c3c9363edf6577ea 100644 (file)
@@ -166,8 +166,9 @@ namespace System {
         //
         public static void Register(UriParser uriParser, string schemeName, int defaultPort)
         {
+#if FEATURE_MONO_CAS
             ExceptionHelper.InfrastructurePermission.Demand();
-
+#endif
             if (uriParser == null)
                 throw new ArgumentNullException("uriParser");
 
index 602c90757764d06aa1c51480644c0d1d65ecdf71..39d0c2c0f6c98c5b6b90f7cda523ad1aa6fe7306 100644 (file)
@@ -1,4 +1,4 @@
-#if !PLATFORM_UNIX
+#if !PLATFORM_UNIX || MONO
 //------------------------------------------------------------------------------
 // <copyright file="_UncName.cs" company="Microsoft">
 //     Copyright (c) Microsoft Corporation.  All rights reserved.
@@ -54,6 +54,14 @@ namespace System {
 
             if (start==end)
                 return false;
+
+#if MONO
+            if (!Uri.IsWindowsFileSystem) {
+                if (!(end - start > 2 && name[start] == '\\' && name[start + 1] == '\\')) {
+                    return false;
+                }
+            }
+#endif
             //
             // First segment could consist of only '_' or '-' but it cannot be all digits or empty
             //
index 8256cb7a4173c51eb316c17db828fbc612348ec8..1a2adb1cfdb3d06fb2e66ebf99838a0a122abb67 100644 (file)
@@ -405,7 +405,7 @@ namespace System.Text.RegularExpressions {
         * This method is internal virtual so the jit does not inline it.
         */
         [
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             HostProtection(MayLeakOnAbort=true),
 #endif
             MethodImplAttribute(MethodImplOptions.NoInlining)
@@ -1195,7 +1195,7 @@ namespace System.Text.RegularExpressions {
 #if !(SILVERLIGHT || FULL_AOT_RUNTIME)
         /// <devdoc>
         /// </devdoc>
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [HostProtection(MayLeakOnAbort=true)]
 #endif
         [ResourceExposure(ResourceScope.Machine)] // The AssemblyName is interesting.
@@ -1208,7 +1208,7 @@ namespace System.Text.RegularExpressions {
 
         /// <devdoc>
         /// </devdoc>
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [HostProtection(MayLeakOnAbort=true)]
 #endif
         [ResourceExposure(ResourceScope.Machine)] // The AssemblyName is interesting.
@@ -1218,7 +1218,7 @@ namespace System.Text.RegularExpressions {
             CompileToAssemblyInternal(regexinfos, assemblyname, attributes, null);
         }
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [HostProtection(MayLeakOnAbort=true)]
 #endif
         [ResourceExposure(ResourceScope.Machine)]
index 69fcc04a1eafc1b79bb484f7ad806712e6adc5a2..6f191129671672f5a0d3c58901385525b798814c 100644 (file)
@@ -131,7 +131,7 @@ namespace System.Text.RegularExpressions {
             // <SECREVIEW> Regex only generates string manipulation, so this is ok.
             // </SECREVIEW>      
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             new ReflectionPermission(PermissionState.Unrestricted).Assert();
 #endif
             try {
@@ -172,7 +172,9 @@ namespace System.Text.RegularExpressions {
 #endif
             }
             finally {
+#if FEATURE_MONO_CAS 
                 CodeAccessPermission.RevertAssert();
+#endif
             }
         }
 
@@ -195,14 +197,16 @@ namespace System.Text.RegularExpressions {
 
             // <SECREVIEW> Regex only generates string manipulation, so this is ok.
             // </SECREVIEW>         
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             new ReflectionPermission(PermissionState.Unrestricted).Assert();
 #endif
             try {
                 factory = c.FactoryInstanceFromCode(code, options);
             }
             finally {
+#if FEATURE_MONO_CAS
                 CodeAccessPermission.RevertAssert();
+#endif
             }
             return factory;
         }
@@ -235,7 +239,7 @@ namespace System.Text.RegularExpressions {
         
                 Type factory;
         
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 new ReflectionPermission(PermissionState.Unrestricted).Assert();
 #endif
                 try {
@@ -243,7 +247,9 @@ namespace System.Text.RegularExpressions {
                     c.GenerateRegexType(pattern, options, fullname, regexes[i].IsPublic, code, tree, factory, mTimeout);
                 }
                 finally {
+#if FEATURE_MONO_CAS
                     CodeAccessPermission.RevertAssert();
+#endif
                 }
             }
         
@@ -3043,7 +3049,7 @@ namespace System.Text.RegularExpressions {
             // SECREVIEW : Regex only generates string manipulation, so this is
             //           : ok.
             //
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             new ReflectionPermission(PermissionState.Unrestricted).Assert();
 #endif
             try {
@@ -3055,7 +3061,7 @@ namespace System.Text.RegularExpressions {
                 CustomAttributeBuilder transparencyAttribute = new CustomAttributeBuilder(transparencyCtor, new object[0]);
                 assemblyAttributes.Add(transparencyAttribute);
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 ConstructorInfo securityRulesCtor = typeof(SecurityRulesAttribute).GetConstructor(new Type[] { typeof(SecurityRuleSet) });
                 CustomAttributeBuilder securityRulesAttribute =
                     new CustomAttributeBuilder(securityRulesCtor, new object[] { SecurityRuleSet.Level2 });
@@ -3081,7 +3087,9 @@ namespace System.Text.RegularExpressions {
                 }
             }
             finally {
+#if FEATURE_MONO_CAS
                 CodeAccessPermission.RevertAssert();
+#endif
             }
         }
 
index 97f33d958530c1218c21a0de68e5c610aeba16f6..037486b36d83e7f5a92136a7291699bacc0e1512 100644 (file)
@@ -77,7 +77,7 @@ namespace System.Text.RegularExpressions {
         ///       multiple threads.</para>
         /// </devdoc>
 #if !SILVERLIGHT
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [HostProtection(Synchronization=true)]
 #endif
         static public Group Synchronized(Group inner) {
index 6c0ff3850a410dfdd38f0df3425b975520db41f6..f6c8d5cce125fffcbf1c91e5a1b34f4adc45b722 100644 (file)
@@ -201,7 +201,7 @@ namespace System.Text.RegularExpressions {
         /// </devdoc>
 
 #if !SILVERLIGHT
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         [HostProtection(Synchronization=true)]
 #endif
         static public Match Synchronized(Match inner) {
index 640758a4461a1e6ab52d039a3db54e118752d76b..46131cf7ab9b8621a704ff5ad0a007b980165097 100644 (file)
@@ -28,7 +28,7 @@ namespace System.Text.RegularExpressions {
         protected internal override RegexRunner CreateInstance() {
             CompiledRegexRunner runner = new CompiledRegexRunner();
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             new ReflectionPermission(PermissionState.Unrestricted).Assert();
 #endif
             runner.SetDelegates((NoParamDelegate)       goMethod.CreateDelegate(typeof(NoParamDelegate)),
index 92fecf7812adb3acf330548b3ab483e8070d53ff..c5a093a1765a87ffbe3856cec3636fdc2d8cf76f 100644 (file)
@@ -23,7 +23,7 @@ namespace System.Security.Cryptography.X509Certificates {
 
     internal class X509Utils {
         private X509Utils () {}
-
+#if !MONO
         internal static bool IsCertRdnCharString (uint dwValueType) {
             return ((dwValueType & CAPI.CERT_RDN_TYPE_MASK) >= CAPI.CERT_RDN_NUMERIC_STRING);
         }
@@ -349,16 +349,26 @@ namespace System.Security.Cryptography.X509Certificates {
             CAPI.CRYPT_OID_INFO pOIDInfo = CAPI.CryptFindOIDInfo(CAPI.CRYPT_OID_INFO_OID_KEY, pszOid, 0);
             return pOIDInfo.Algid;
         }
-
+#endif
 #if FEATURE_CORESYSTEM
         [SecuritySafeCritical]
 #endif
-        internal static string FindOidInfo(uint keyType, string keyValue, OidGroup oidGroup) {
+        internal static string FindOidInfo(uint keyType, string keyValue, System.Security.Cryptography.OidGroup oidGroup) {
             if (keyValue == null)
                 throw new ArgumentNullException("keyValue");
             if (keyValue.Length == 0)
                 return null;
 
+#if MONO
+            switch(keyType) {
+                case CAPI.CRYPT_OID_INFO_OID_KEY:
+                    return CAPI.CryptFindOIDInfoNameFromKey(keyValue, oidGroup);
+                case CAPI.CRYPT_OID_INFO_NAME_KEY:
+                    return CAPI.CryptFindOIDInfoKeyFromName(keyValue, oidGroup);
+                default:
+                    throw new NotImplementedException(keyType.ToString());
+            }
+#else
             SafeLocalAllocHandle pvKey = SafeLocalAllocHandle.InvalidHandle;
 
             try {
@@ -389,21 +399,22 @@ namespace System.Security.Cryptography.X509Certificates {
             finally {
                 pvKey.Dispose();
             }
+#endif
         }
 
         // Try to find OID info within a specific group, and if that doesn't work fall back to all
         // groups for compatibility with previous frameworks
-        internal static string FindOidInfoWithFallback(uint key, string value, OidGroup group) {
+        internal static string FindOidInfoWithFallback(uint key, string value, System.Security.Cryptography.OidGroup group) {
             string info = FindOidInfo(key, value, group);
 
             // If we couldn't find it in the requested group, then try again in all groups
-            if (info == null && group != OidGroup.All) {
-                info = FindOidInfo(key, value, OidGroup.All);
+            if (info == null && group != System.Security.Cryptography.OidGroup.All) {
+                info = FindOidInfo(key, value, System.Security.Cryptography.OidGroup.All);
             }
 
             return info;
         }
-
+#if !MONO
         //
         // verify the passed keyValue is valid as per X.208
         //
@@ -568,5 +579,6 @@ error:
             else 
                 return SR.GetString(SR.Unknown_Error);
         }
+#endif
     }
 }
index 4d181e8c220ef641b32877061806d212cd3454a4..973773d29467b190eb5bc811cf07ab5f8f843ee4 100644 (file)
@@ -34,6 +34,7 @@ namespace System.IO.Ports
 #endif
         internal static String GetMessage(int errorCode) 
         {
+#if !MONO
             StringBuilder sb = new StringBuilder(512);
             int result = SafeNativeMethods.FormatMessage(NativeMethods.FORMAT_MESSAGE_IGNORE_INSERTS |
                 NativeMethods.FORMAT_MESSAGE_FROM_SYSTEM | NativeMethods.FORMAT_MESSAGE_ARGUMENT_ARRAY,
@@ -47,6 +48,7 @@ namespace System.IO.Ports
                 return s;
             }
             else 
+#endif
             {
                 return SR.GetString(SR.IO_UnknownError, errorCode);
             }
index bc6669c501f4028c78efc6602b62b86c5dc5d182..1f0d34927aff21908e1404cf8b4d0c8dd01d8510 100644 (file)
@@ -52,7 +52,7 @@ namespace System.Collections.Concurrent
     [ComVisible(false)]
     [DebuggerTypeProxy(typeof(SystemThreadingCollection_IProducerConsumerCollectionDebugView<>))]
     [DebuggerDisplay("Count = {Count}")]
-#if !(FEATURE_NETCORE || DISABLE_CAS_USE)
+#if !FEATURE_NETCORE
     [HostProtection(Synchronization = true, ExternalThreading = true)]
 #endif
     public class ConcurrentBag<T> : IProducerConsumerCollection<T>, IReadOnlyCollection<T>
index 9a77cc0a64c37fb9de42a1f2f129bfefeb83a55a..360a55fa534abd5beff1d34fff8ac7d2a233e1c9 100644 (file)
@@ -1,3 +1,6 @@
+#if MONO
+#undef FEATURE_PAL
+#endif
 // ==++==
 // 
 //   Copyright (c) Microsoft Corporation.  All rights reserved.
@@ -21,6 +24,7 @@ namespace System.Threading
 #endif
     using System.Runtime.Versioning;
     using System.Runtime.ConstrainedExecution;
+    using System.Runtime.CompilerServices;
 
 
     [HostProtection(Synchronization=true, ExternalThreading=true)]
@@ -66,11 +70,19 @@ namespace System.Threading
             {
                 throw new ArgumentException(SR.GetString(SR.Argument_WaitHandleNameTooLong));
             }
+
+#if MONO
+            int errorCode;
+            var myHandle = new SafeWaitHandle (CreateSemaphore_internal (initialCount, maximumCount, name, out errorCode), true);
+#else
             SafeWaitHandle   myHandle = SafeNativeMethods.CreateSemaphore(null, initialCount, maximumCount, name);
+#endif
             
             if (myHandle.IsInvalid)
             {
+#if !MONO
                 int errorCode = Marshal.GetLastWin32Error(); 
+#endif
 
                 if(null != name && 0 != name.Length && NativeMethods.ERROR_INVALID_HANDLE == errorCode)
                     throw new WaitHandleCannotBeOpenedException(SR.GetString(SR.WaitHandleCannotBeOpenedException_InvalidHandle,name));
@@ -119,6 +131,11 @@ namespace System.Threading
                 throw new ArgumentException(SR.GetString(SR.Argument_WaitHandleNameTooLong));
             }
             SafeWaitHandle   myHandle;
+
+#if MONO
+            int errorCode;
+            myHandle = new SafeWaitHandle (CreateSemaphore_internal (initialCount, maximumCount, name, out errorCode), true);
+#else
 #if !FEATURE_PAL && !FEATURE_NETCORE
             // For ACL's, get the security descriptor from the SemaphoreSecurity.
             if (semaphoreSecurity != null) {
@@ -137,7 +154,9 @@ namespace System.Threading
 #if !FEATURE_PAL && !FEATURE_NETCORE
             }
 #endif
+
             int errorCode = Marshal.GetLastWin32Error();
+#endif
             if (myHandle.IsInvalid)
             {
                 if(null != name && 0 != name.Length && NativeMethods.ERROR_INVALID_HANDLE == errorCode)
@@ -259,7 +278,14 @@ namespace System.Threading
             }
 
             result = null;
+#if MOBILE
+            throw new NotSupportedException ();
+#else
 
+#if MONO
+            int errorCode;
+            var myHandle = new SafeWaitHandle (OpenSemaphore_internal (name, rights, out errorCode), true);
+#else
             //Pass false to OpenSemaphore to prevent inheritedHandles
 #if FEATURE_PAL || FEATURE_NETCORE
             const int SYNCHRONIZE            = 0x00100000;
@@ -268,11 +294,14 @@ namespace System.Threading
             SafeWaitHandle myHandle = SafeNativeMethods.OpenSemaphore(SEMAPHORE_MODIFY_STATE | SYNCHRONIZE, false, name);
 #else
             SafeWaitHandle myHandle = SafeNativeMethods.OpenSemaphore((int) rights, false, name);
+#endif
 #endif
             
             if (myHandle.IsInvalid)
             {
+#if !MONO
                 int errorCode = Marshal.GetLastWin32Error();
+#endif
 
                 if (NativeMethods.ERROR_FILE_NOT_FOUND == errorCode || NativeMethods.ERROR_INVALID_NAME == errorCode)
                     return OpenExistingResult.NameNotFound;
@@ -285,6 +314,7 @@ namespace System.Threading
             }
             result = new Semaphore(myHandle);
             return OpenExistingResult.Success;
+#endif
         }
 
 
@@ -318,7 +348,11 @@ namespace System.Threading
             //   the semaphore's count to exceed the maximum count set when Semaphore was created
             //Non-Zero return 
 
+#if MONO
+            if (!ReleaseSemaphore_internal(Handle, releaseCount, out previousCount))
+#else
             if (!SafeNativeMethods.ReleaseSemaphore(SafeWaitHandle, releaseCount, out previousCount))
+#endif
             {
                 throw new SemaphoreFullException();
             }
@@ -342,6 +376,19 @@ namespace System.Threading
             semaphoreSecurity.Persist(SafeWaitHandle);
         }
 #endif
+
+#if MONO
+        [MethodImplAttribute(MethodImplOptions.InternalCall)]
+        internal static extern IntPtr CreateSemaphore_internal (
+            int initialCount, int maximumCount, string name, out int errorCode);
+
+        [MethodImplAttribute(MethodImplOptions.InternalCall)]
+        internal static extern bool ReleaseSemaphore_internal (
+            IntPtr handle, int releaseCount, out int previousCount);
+
+        [MethodImplAttribute (MethodImplOptions.InternalCall)]
+        private static extern IntPtr OpenSemaphore_internal (string name, SemaphoreRights rights, out int errorCode);
+#endif
     }
 }
 
index 6f5e71e5eefde5f2c6a02b2b3c3a1c0952f226e9..8bab3650892309e5ae293c4c8d84906c39ac867a 100644 (file)
@@ -429,7 +429,7 @@ namespace System {
 
 #if MONO
                         if (method != null) { // source can be null
-                            _source = method.DeclaringType.Assembly.UnprotectedGetName ().Name;
+                            _source = method.DeclaringType.Assembly.GetName ().Name;
                         }
 #else
                         Module module = method.Module;
@@ -989,6 +989,7 @@ namespace System {
         [System.Security.SecurityCritical]  // auto-generated
         internal virtual String InternalToString()
         {
+#if FEATURE_MONO_CAS
             try 
             {
 #pragma warning disable 618
@@ -1001,6 +1002,7 @@ namespace System {
                 //under normal conditions there should be no exceptions
                 //however if something wrong happens we still can call the usual ToString
             }
+#endif
 
             // Get the current stack trace string.  On CoreCLR we don't bother
             // to try and include file/line-number information because all AppDomains
index aa7a29985e94cf77fe4767857c5be7dec6214025..e318533937add8f2b4d6daf84e59f23d4888e72e 100644 (file)
@@ -96,9 +96,7 @@ namespace System.IO {
             if (!isFullyQualified && !isInvalidPath)
                 return path;
 
-#if DISABLE_CAS_USE
-            bool safeToReturn = !isInvalidPath;
-#else
+#if FEATURE_MONO_CAS
             bool safeToReturn = false;
             try {
                 if (!isInvalidPath) {
@@ -119,7 +117,9 @@ namespace System.IO {
                 // from Security.Util.StringExpressionSet.CanonicalizePath when ':' is found in the path
                 // beyond string index position 1.  
             }
-#endif // DISABLE_CAS_USE
+#else
+            bool safeToReturn = !isInvalidPath;
+#endif // FEATURE_MONO_CAS
             if (!safeToReturn) {
                 if (Path.IsDirectorySeparator(path[path.Length - 1]))
                     path = Environment.GetResourceString("IO.IO_NoPermissionToDirectoryName");
index 7b1b1c15e2548b8d8ad04a910cf7fa127b029051..f3da2cbd41494aebb6df942f558eec330533cadb 100644 (file)
@@ -130,7 +130,7 @@ namespace System.IO {
         [System.Security.SecurityCritical]  // auto-generated
         private FileInfo(SerializationInfo info, StreamingContext context) : base(info, context)
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if !FEATURE_CORECLR
             new FileIOPermission(FileIOPermissionAccess.Read, new String[] { FullPath }, false, false).Demand();
 #endif
@@ -187,7 +187,7 @@ namespace System.IO {
                 String directoryName = Path.GetDirectoryName(FullPath);
                 if (directoryName != null)
                 {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if FEATURE_CORECLR
                     FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Read, DisplayPath, FullPath);
                     state.EnsureState();
@@ -338,7 +338,7 @@ namespace System.IO {
         [ResourceConsumption(ResourceScope.Machine, ResourceScope.Machine)]
         public override void Delete()
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if FEATURE_CORECLR
             FileSecurityState state = new FileSecurityState(FileSecurityStateAccess.Write, DisplayPath, FullPath);
             state.EnsureState();
index 23abfb231d44ebf910e6b72ec86c4a37ae089cb1..c551e66159a62169796f281e8db3d27737838e1c 100644 (file)
@@ -18,7 +18,7 @@
 using System;
 using System.Collections;
 using System.Security;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 using System.Security.Permissions;
 #endif
 using Microsoft.Win32;
@@ -30,7 +30,7 @@ using System.Diagnostics.Contracts;
 
 namespace System.IO {
     [Serializable]
-#if !FEATURE_CORECLR && !DISABLE_CAS_USE
+#if !FEATURE_CORECLR && FEATURE_MONO_CAS
     [FileIOPermissionAttribute(SecurityAction.InheritanceDemand,Unrestricted=true)]
 #endif
     [ComVisible(true)]
@@ -102,7 +102,7 @@ namespace System.IO {
                     demandDir = Directory.GetDemandDir(FullPath, true);
                 else
                     demandDir = FullPath;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if FEATURE_CORECLR
                 FileSecurityState sourceState = new FileSecurityState(FileSecurityStateAccess.PathDiscovery, String.Empty, demandDir);
                 sourceState.EnsureState();
@@ -124,7 +124,7 @@ namespace System.IO {
                     demandDir = Directory.GetDemandDir(FullPath, true);
                 else
                     demandDir = FullPath;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if !FEATURE_CORECLR
                 new FileIOPermission(FileIOPermissionAccess.PathDiscovery, demandDir).Demand();
 #endif
@@ -351,7 +351,7 @@ namespace System.IO {
             [System.Security.SecuritySafeCritical]
             #endif
             set {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if !FEATURE_CORECLR
                 new FileIOPermission(FileIOPermissionAccess.Write, FullPath).Demand();
 #endif
@@ -384,7 +384,7 @@ namespace System.IO {
         [ComVisible(false)]
         public virtual void GetObjectData(SerializationInfo info, StreamingContext context)
         {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
 #if !FEATURE_CORECLR
             new FileIOPermission(FileIOPermissionAccess.PathDiscovery, FullPath).Demand();
 #endif
index 2960876b8291317fe8e0bad79c5e7f8449f3ac8b..786e7af959af6bc003727a128acac5ceef177560 100644 (file)
@@ -163,7 +163,7 @@ namespace System.IO {
             if (_isOpen) {
                 throw new InvalidOperationException(Environment.GetResourceString("InvalidOperation_CalledTwice"));
             }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             if (!skipSecurityCheck) {
 #pragma warning disable 618
                 new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
@@ -244,7 +244,7 @@ namespace System.IO {
             if (_isOpen)
                 throw new InvalidOperationException(Environment.GetResourceString("InvalidOperation_CalledTwice"));
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             if (!skipSecurityCheck)
 #pragma warning disable 618
                 new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
index c2931dc9e6cf5f6b90c570128bed5ead0ce31e2c..350cb47cb47458a91cebb912d49cfcdae81bf40f 100644 (file)
@@ -51,7 +51,7 @@ namespace System.Resources {
             // Don't use Assembly manifest, but grovel on disk for a file.
             try
             {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 new System.Security.Permissions.FileIOPermission(System.Security.Permissions.PermissionState.Unrestricted).Assert();
 #endif
 
@@ -79,7 +79,7 @@ namespace System.Resources {
             }
             finally
             {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 System.Security.CodeAccessPermission.RevertAssert();
 #endif
             }
index bd3177842e76eb1fa9840e22f970ae5271765046..e63dd0d3c5708dee82b64d6fe0586750250a1843 100644 (file)
@@ -350,13 +350,13 @@ namespace System.Resources {
             // write to the temp directory (enforced via a Windows ACL).  Fall back to a MemoryStream.
             Stream dataSection = null;  // Either a FileStream or a MemoryStream
             String tempFile = null;
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             PermissionSet permSet = new PermissionSet(PermissionState.None);
             permSet.AddPermission(new EnvironmentPermission(PermissionState.Unrestricted));
             permSet.AddPermission(new FileIOPermission(PermissionState.Unrestricted));
 #endif
             try {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 permSet.Assert();
 #endif
                 tempFile = Path.GetTempFileName();
@@ -375,7 +375,7 @@ namespace System.Resources {
                 dataSection = new MemoryStream();
             }
             finally {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 PermissionSet.RevertAssert();
 #endif
             }
index f518646e30cdd460aac1c175e95662f1b754c580..b1b8e3e48f4f9b142298c47a377a88da38130a6c 100644 (file)
@@ -5028,10 +5028,12 @@ namespace System
             return obj == (object)this;
         }
 
+#if !MONO
         public override int GetHashCode() 
         {
             return RuntimeHelpers.GetHashCode(this);
         }
+#endif
 
 #if !FEATURE_CORECLR
         public static bool operator ==(RuntimeType left, RuntimeType right)
@@ -5326,7 +5328,7 @@ namespace System
                             throw new MissingMethodException(Environment.GetResourceString("MissingConstructor_Name", FullName));
                         }
 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                         // If we're creating a delegate, we're about to call a
                         // constructor taking an integer to represent a target
                         // method. Since this is very difficult (and expensive)
@@ -5357,7 +5359,7 @@ namespace System
                             new SecurityPermission(SecurityPermissionFlag.UnmanagedCode).Demand();
 #endif // FEATURE_CORECLR
                         }
-#endif // !DISABLE_CAS_USE
+#endif // FEATURE_MONO_CAS
                         if (invokeMethod.GetParametersNoCopy().Length == 0)
                         {
                             if (args.Length != 0)
@@ -5369,12 +5371,31 @@ namespace System
                                     Environment.GetResourceString("NotSupported_CallToVarArg")));
                             }
 
+#if MONO && FEATURE_REMOTING
+                            if (activationAttributes != null && activationAttributes.Length != 0) {
+                                server = ActivationCreateInstance (invokeMethod, bindingAttr, binder, args, culture, activationAttributes);
+                            } else {
+#endif
                             // fast path??
                             server = Activator.CreateInstance(this, true);
+
+#if MONO && FEATURE_REMOTING
+                            }
+#endif
                         }
                         else
                         {
+#if MONO && FEATURE_REMOTING
+
+                            if (activationAttributes != null && activationAttributes.Length != 0) {
+                                server = ActivationCreateInstance (invokeMethod, bindingAttr, binder, args, culture, activationAttributes);
+                            } else {
+#endif
                             server = ((ConstructorInfo)invokeMethod).Invoke(bindingAttr, binder, args, culture);
+#if MONO && FEATURE_REMOTING
+                            }
+#endif
+
                             if (state != null)
                                 binder.ReorderArgumentArray(ref args, state);
                         }
@@ -5400,7 +5421,25 @@ namespace System
             //Console.WriteLine(server);
             return server;                                
         }
-#if !MONO
+
+#if MONO
+#if FEATURE_REMOTING
+        //
+        // .NET seems to do this deep in method invocation which looks odd as it
+        // needs extra push/pop as PushActivationAttributes/PopActivationAttributes.
+        // We let them do nothing and have all logic here without complicated checks
+        // inside fast path invoke.
+        //
+        object ActivationCreateInstance (MethodBase invokeMethod, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
+        {
+            var server = ActivationServices.CreateProxyFromAttributes (this, activationAttributes);
+            if (server != null)
+                invokeMethod.Invoke (server, bindingAttr, binder, args, culture);
+
+            return server;
+        }
+#endif
+#else
         // the cache entry
         class ActivatorCacheEntry
         {
index d6e858960bacb34dc2967830bc6cc2ffac59f49c..73778f3f4b142bf427734ef93fc793657594113e 100644 (file)
@@ -65,10 +65,22 @@ namespace System.Runtime.InteropServices {
             return !(a == b);
         }
 
+#if MONO
+        int CalculateCount()
+        {
+            Array a = m_array as Array;
+            if (a == null)
+                throw new ArgumentException ();
+
+            var total = a.Rank * a.Length;
+            return total - m_offset;
+        }
+#else
         [System.Security.SecurityCritical]  // auto-generated
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private extern int CalculateCount();
+#endif
     
         private Object m_array;
         private int    m_offset;
index 308fa38c8402310674d4975f921b155f0bb13651..2c6793f0d15d829aa75937612390bf595ff8e12d 100644 (file)
@@ -206,10 +206,16 @@ public abstract class CriticalHandle : CriticalFinalizerObject, IDisposable
         GC.SuppressFinalize(this);
     }
 
+#if MONO
+    static void FireCustomerDebugProbe()
+    {
+    }
+#else
     [ResourceExposure(ResourceScope.None)]
     [MethodImplAttribute(MethodImplOptions.InternalCall)]
     [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
     private extern void FireCustomerDebugProbe();
+#endif
 
     [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
     protected void SetHandle(IntPtr handle) {
index 3f9b3d38879c29f281cbb8c4b9f71aea6bd577f5..50740031b6196b51f4c4a4759f13bea1b1674cd7 100644 (file)
@@ -12,7 +12,7 @@
 **
 **
 =============================================================================*/
-
+#if !FULL_AOT_RUNTIME
 namespace System.Runtime.InteropServices {
    
     using System;
@@ -51,3 +51,4 @@ namespace System.Runtime.InteropServices {
         private Object m_WrappedObject;
     }
 }
+#endif
\ No newline at end of file
index 694412fd471faf0fd6eb03a415363e7e944e1393..0cf3823868c81c51fd13aeeb4f37ca1b889574ca 100644 (file)
@@ -12,7 +12,7 @@
 **
 **
 =============================================================================*/
-
+#if !FULL_AOT_RUNTIME
 namespace System.Runtime.InteropServices {
    
     using System;
@@ -54,3 +54,4 @@ namespace System.Runtime.InteropServices {
         private int m_ErrorCode;
     }
 }
+#endif
\ No newline at end of file
index 0740184423ba49a4ce7d543b41f4d76835b91bd9..b74e4d606b57f0e28c77d31cb059015706e0da26 100644 (file)
@@ -110,7 +110,7 @@ namespace System.Runtime.InteropServices {
                 return null;
 #endif
             String dir = GetRuntimeDirectoryImpl();
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
             new FileIOPermission(FileIOPermissionAccess.PathDiscovery, dir).Demand();
 #endif
             return dir;
@@ -143,7 +143,7 @@ namespace System.Runtime.InteropServices {
                 String path = sb.ToString();
 #endif
                 
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 // Do security check
                 new FileIOPermission(FileIOPermissionAccess.PathDiscovery, path).Demand();
 #endif
index 6536f3c77d2dc5806656871a48c6a1d35d654b26..c7610dc3687bf40644b2c6e3645a7ecdb5398ae9 100644 (file)
@@ -276,7 +276,7 @@ public abstract partial class SafeHandle : CriticalFinalizerObject, IDisposable
     [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
     [MethodImplAttribute(MethodImplOptions.InternalCall)]
     public extern void SetHandleAsInvalid();
-
+#endif
     // Implement this abstract method in your derived class to specify how to
     // free the handle. Be careful not write any code that's subject to faults
     // in this method (the runtime will prepare the infrastructure for you so
@@ -287,7 +287,7 @@ public abstract partial class SafeHandle : CriticalFinalizerObject, IDisposable
     // MDA is enabled.
     [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
     protected abstract bool ReleaseHandle();
-
+#if !MONO
     // Add a reason why this handle should not be relinquished (i.e. have
     // ReleaseHandle called on it). This method has dangerous in the name since
     // it must always be used carefully (e.g. called within a CER) to avoid
index 87782cd343c7e19a2d458c90e72ec8b595ba2889..fd5131e8e061f7980638fe85c32d454853210bfb 100644 (file)
@@ -71,7 +71,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
         private BinaryMethodReturn binaryMethodReturn;
         private bool bIsCrossAppDomain;
 #endif        
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
         private static FileIOPermission sfileIOPermission = new FileIOPermission(PermissionState.Unrestricted);
 #endif        
         private SerStack ValueFixupStack
@@ -1362,7 +1362,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
                 if (bSimpleAssembly)
                 {
                     try {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                           sfileIOPermission.Assert();
 #endif
                           try {
@@ -1373,7 +1373,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
 #endif // FEATURE_FUSION
                           }
                           finally {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                               CodeAccessPermission.RevertAssert();
 #endif
                           }
@@ -1390,14 +1390,14 @@ namespace System.Runtime.Serialization.Formatters.Binary {
                 else {
                     try
                     {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                           sfileIOPermission.Assert();
 #endif
                           try {
                               assm = Assembly.Load(assemblyName);
                           }
                           finally {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                               CodeAccessPermission.RevertAssert();
 #endif
                           }
@@ -1512,7 +1512,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
             if ( !FormatterServices.UnsafeTypeForwardersIsEnabled() && sourceAssembly != destAssembly )
             {
                 // we have a type forward to attribute !
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                 // we can try to see if the dest assembly has less permissionSet
                 if (!destAssembly.PermissionSet.IsSubsetOf(sourceAssembly.PermissionSet))
 #endif
@@ -1530,7 +1530,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
                             typeFowardedFromAssembly = Assembly.Load(typeInfo.AssemblyString);
                         }
                         catch { }
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                         if (typeFowardedFromAssembly != sourceAssembly)
                         {
                             // throw security exception
@@ -1540,7 +1540,7 @@ namespace System.Runtime.Serialization.Formatters.Binary {
                     }
                     else
                     {
-#if !DISABLE_CAS_USE
+#if FEATURE_MONO_CAS
                         // throw security exception
                         throw new SecurityException() { Demanded = sourceAssembly.PermissionSet };
 #endif
index 9232230801d229d6917bcf3c9a72c48b9c5ed8a0..2bb82ed520e13f8c22650469c3ad1c723be7cfe2 100644 (file)
@@ -31,7 +31,7 @@ namespace System.Threading {
 
     [HostProtection(Synchronization=true, ExternalThreading=true)]
     [System.Runtime.InteropServices.ComVisible(true)]
-    public static class Monitor 
+    public static partial class Monitor
     {
         /*=========================================================================
         ** Obtain the monitor lock of obj. Will block if another thread holds the lock
@@ -66,11 +66,12 @@ namespace System.Threading {
             throw new ArgumentException(Environment.GetResourceString("Argument_MustBeFalse"), "lockTaken");
         }
 
+#if !MONO
         [System.Security.SecuritySafeCritical]
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern void ReliableEnter(Object obj, ref bool lockTaken);
-
+#endif
 
 
         /*=========================================================================
@@ -160,10 +161,12 @@ namespace System.Threading {
             ReliableEnterTimeout(obj, MillisecondsTimeoutFromTimeSpan(timeout), ref lockTaken);
         }
 
+#if !MONO
         [System.Security.SecuritySafeCritical]
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern void ReliableEnterTimeout(Object obj, int timeout, ref bool lockTaken);
+#endif
 
         [System.Security.SecuritySafeCritical]
         public static bool IsEntered(object obj)
@@ -174,10 +177,12 @@ namespace System.Threading {
             return IsEnteredNative(obj);
         }
 
+#if !MONO
         [System.Security.SecurityCritical]
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern bool IsEnteredNative(Object obj);
+#endif
 
         /*========================================================================
     ** Waits for notification from the object (via a Pulse/PulseAll). 
@@ -190,10 +195,12 @@ namespace System.Threading {
     **
         ** Exceptions: ArgumentNullException if object is null.
     ========================================================================*/
+#if !MONO
         [System.Security.SecurityCritical]  // auto-generated
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern bool ObjWait(bool exitContext, int millisecondsTimeout, Object obj);
+#endif
 
         [System.Security.SecuritySafeCritical]  // auto-generated
         public static bool Wait(Object obj, int millisecondsTimeout, bool exitContext)
@@ -228,10 +235,12 @@ namespace System.Threading {
         * Exceptions: SynchronizationLockException if this method is not called inside
         * a synchronized block of code.
         ========================================================================*/
+#if !MONO
         [System.Security.SecurityCritical]  // auto-generated
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern void ObjPulse(Object obj);
+#endif
 
         [System.Security.SecuritySafeCritical]  // auto-generated
         public static void Pulse(Object obj)
@@ -247,10 +256,12 @@ namespace System.Threading {
         /*========================================================================
         ** Sends a notification to all waiting objects. 
         ========================================================================*/
+#if !MONO
         [System.Security.SecurityCritical]  // auto-generated
         [ResourceExposure(ResourceScope.None)]
         [MethodImplAttribute(MethodImplOptions.InternalCall)]
         private static extern void ObjPulseAll(Object obj);
+#endif
 
         [System.Security.SecuritySafeCritical]  // auto-generated
         public static void PulseAll(Object obj)
diff --git a/mcs/errors/cs0121-24.cs b/mcs/errors/cs0121-24.cs
deleted file mode 100644 (file)
index 6617508..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-// CS0121: The call is ambiguous between the following methods or properties: `A.GetValues(string[], string)' and `A.GetValues(string, params string[])'
-// Line: 23
-// CSC BUG: Correct according the spec, no identity conversion to do tie-breaking
-
-class A
-{
-       public int GetValues (string[] s, string value = null)
-       {
-               return 1;
-       }
-
-       public int GetValues (string s, params string [] args)
-       {
-               return 2;
-       }
-}
-
-
-class B
-{
-       public static void Main ()
-       {
-               var a = new A ();
-               a.GetValues (null);
-       }
-}
\ No newline at end of file
diff --git a/mcs/errors/cs0121-28.cs b/mcs/errors/cs0121-28.cs
new file mode 100644 (file)
index 0000000..e722e1c
--- /dev/null
@@ -0,0 +1,29 @@
+// CS0121: The call is ambiguous between the following methods or properties: `Program.Foo(System.Func<string,dynamic>)' and `Program.Foo(System.Func<object>)'
+// Line: 10
+
+using System;
+
+public static class Program
+{
+       public static void Main ()
+       {
+               Foo (Bar);
+       }
+
+       public static dynamic Bar (string s1)
+       {
+               return 1;
+       }
+       
+       public static object Bar () {
+               return  2;
+       }
+
+       public static void Foo (Func<string, dynamic> input)
+       {
+       }
+
+       public static void Foo (Func<object> input)
+       {
+       }
+}
\ No newline at end of file
diff --git a/mcs/ilasm/ilasm-net_4_x.csproj b/mcs/ilasm/ilasm-net_4_x.csproj
new file mode 100644 (file)
index 0000000..cf8834c
--- /dev/null
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>ilasm</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\build\common\Consts.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="codegen\Assembly.cs" />\r
+    <Compile Include="codegen\BaseClassRef.cs" />\r
+    <Compile Include="codegen\BaseGenericTypeRef.cs" />\r
+    <Compile Include="codegen\BaseMethodRef.cs" />\r
+    <Compile Include="codegen\BaseTypeRef.cs" />\r
+    <Compile Include="codegen\BranchInstr.cs" />\r
+    <Compile Include="codegen\CalliInstr.cs" />\r
+    <Compile Include="codegen\CatchBlock.cs" />\r
+    <Compile Include="codegen\CodeGen.cs" />\r
+    <Compile Include="codegen\CustomAttr.cs" />\r
+    <Compile Include="codegen\DataDef.cs" />\r
+    <Compile Include="codegen\DebuggingInfo.cs" />\r
+    <Compile Include="codegen\DeclSecurity.cs" />\r
+    <Compile Include="codegen\EmitByteInstr.cs" />\r
+    <Compile Include="codegen\EventDef.cs" />\r
+    <Compile Include="codegen\ExternFieldRef.cs" />\r
+    <Compile Include="codegen\ExternMethodRef.cs" />\r
+    <Compile Include="codegen\ExternTable.cs" />\r
+    <Compile Include="codegen\ExternTypeRef.cs" />\r
+    <Compile Include="codegen\FaultBlock.cs" />\r
+    <Compile Include="codegen\FeatureAttr.cs" />\r
+    <Compile Include="codegen\FieldDef.cs" />\r
+    <Compile Include="codegen\FieldInstr.cs" />\r
+    <Compile Include="codegen\FieldRef.cs" />\r
+    <Compile Include="codegen\FileRef.cs" />\r
+    <Compile Include="codegen\FilterBlock.cs" />\r
+    <Compile Include="codegen\FinallyBlock.cs" />\r
+    <Compile Include="codegen\GenericArguments.cs" />\r
+    <Compile Include="codegen\GenericMethodRef.cs" />\r
+    <Compile Include="codegen\GenericMethodSig.cs" />\r
+    <Compile Include="codegen\GenericParameters.cs" />\r
+    <Compile Include="codegen\GenericParamRef.cs" />\r
+    <Compile Include="codegen\GenericTypeInst.cs" />\r
+    <Compile Include="codegen\GlobalFieldRef.cs" />\r
+    <Compile Include="codegen\GlobalMethodRef.cs" />\r
+    <Compile Include="codegen\HandlerBlock.cs" />\r
+    <Compile Include="codegen\IFieldRef.cs" />\r
+    <Compile Include="codegen\IInstr.cs" />\r
+    <Compile Include="codegen\InstrTable.cs" />\r
+    <Compile Include="codegen\IntInstr.cs" />\r
+    <Compile Include="codegen\ISehClause.cs" />\r
+    <Compile Include="codegen\LabelInfo.cs" />\r
+    <Compile Include="codegen\LdcInstr.cs" />\r
+    <Compile Include="codegen\LdstrInstr.cs" />\r
+    <Compile Include="codegen\LdtokenInstr.cs" />\r
+    <Compile Include="codegen\Local.cs" />\r
+    <Compile Include="codegen\MethodDef.cs" />\r
+    <Compile Include="codegen\MethodInstr.cs" />\r
+    <Compile Include="codegen\MethodPointerTypeRef.cs" />\r
+    <Compile Include="codegen\MethodRef.cs" />\r
+    <Compile Include="codegen\MiscInstr.cs" />\r
+    <Compile Include="codegen\ModifiableType.cs" />\r
+    <Compile Include="codegen\Module.cs" />\r
+    <Compile Include="codegen\ParamDef.cs" />\r
+    <Compile Include="codegen\PeapiTypeRef.cs" />\r
+    <Compile Include="codegen\Permission.cs" />\r
+    <Compile Include="codegen\PermissionMember.cs" />\r
+    <Compile Include="codegen\PermissionSet.cs" />\r
+    <Compile Include="codegen\PrimitiveTypeRef.cs" />\r
+    <Compile Include="codegen\PropertyDef.cs" />\r
+    <Compile Include="codegen\Sentinel.cs" />\r
+    <Compile Include="codegen\SimpInstr.cs" />\r
+    <Compile Include="codegen\SwitchInstr.cs" />\r
+    <Compile Include="codegen\TryBlock.cs" />\r
+    <Compile Include="codegen\TypeDef.cs" />\r
+    <Compile Include="codegen\TypeInstr.cs" />\r
+    <Compile Include="codegen\TypeManager.cs" />\r
+    <Compile Include="codegen\TypeRef.cs" />\r
+    <Compile Include="codegen\TypeSpecFieldRef.cs" />\r
+    <Compile Include="codegen\TypeSpecMethodRef.cs" />\r
+    <Compile Include="Driver.cs" />\r
+    <Compile Include="parser\ScannerAdapter.cs" />\r
+    <Compile Include="Report.cs" />\r
+    <Compile Include="scanner\ILReader.cs" />\r
+    <Compile Include="scanner\ILTables.cs" />\r
+    <Compile Include="scanner\ILToken.cs" />\r
+    <Compile Include="scanner\ILTokenizer.cs" />\r
+    <Compile Include="scanner\ILTokenizingException.cs" />\r
+    <Compile Include="scanner\InstrToken.cs" />\r
+    <Compile Include="scanner\ITokenStream.cs" />\r
+    <Compile Include="scanner\Location.cs" />\r
+    <Compile Include="scanner\NumberHelper.cs" />\r
+    <Compile Include="scanner\StringHelper.cs" />\r
+    <Compile Include="scanner\StringHelperBase.cs" />\r
+    <Compile Include="ILParser.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\parser\ILParser.jay > $(ProjectDir)\ILParser.cs
+
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\parser\ILParser.jay > $(ProjectDir)\ILParser.cs
+
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../class/PEAPI/PEAPI-net_4_x.csproj">\r
+      <Project>{34443C71-09F1-4F21-ABB4-82822376F74F}</Project>\r
+      <Name>PEAPI-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj">\r
+      <Project>{88177C4B-894F-485D-B95A-44199C06BE9F}</Project>\r
+      <Name>Mono.CompilerServices.SymbolWriter-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../class/Mono.Security/Mono.Security-net_4_x.csproj">\r
+      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
+      <Name>Mono.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 7e97652e028ef36699422e3275556faae09eae73..3d6f8c0d4f0591f8baf6c06661ef245cd63f40e2 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{5D485D32-3B9F-4287-AB24-C8DA5B89F537}</ProjectGuid>\r
     <RootNamespace>jay</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>MultiByte</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>MultiByte</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\r
   <PropertyGroup Label="UserMacros" />\r
   <PropertyGroup>\r
     <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Debug\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Release\</IntDir>\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
       <PreprocessorDefinitions>SKEL_DIRECTORY=".";%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
@@ -69,7 +69,6 @@
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <PreprocessorDefinitions>SKEL_DIRECTORY=".";%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
index d69feb3de5b15bd0bd0c08a986db9865c0098104..d1eb34c0f726f10b076c472c03b518128e99aa76 100644 (file)
@@ -1196,7 +1196,7 @@ namespace Mono.CSharp
                        paths.AddRange (compiler.Settings.ReferencesLookupPaths);
                }
 
-               public abstract bool HasObjectType (T assembly);
+               public abstract T HasObjectType (T assembly);
                protected abstract string[] GetDefaultReferences ();
                public abstract T LoadAssemblyFile (string fileName, bool isImplicitReference);
                public abstract void LoadReferences (ModuleContainer module);
@@ -1263,8 +1263,13 @@ namespace Mono.CSharp
                                        //
                                        // corlib assembly is the first referenced assembly which contains System.Object
                                        //
-                                       if (HasObjectType (assembly.Item2)) {
-                                               corlib_assembly = assembly.Item2;
+                                       corlib_assembly = HasObjectType (assembly.Item2);
+                                       if (corlib_assembly != null) {
+                                               if (corlib_assembly != assembly.Item2) {
+                                                       var ca = corlib_assembly;
+                                                       i = loaded.FindIndex (l => l.Item2 == ca);
+                                               }
+
                                                loaded.RemoveAt (i);
                                                break;
                                        }
index bcf7ddffa21cd928e8b8a6cbfb811c2735940f7f..ceeff52fcfe7475c13f120cce8e6ec060224912c 100644 (file)
@@ -2383,7 +2383,7 @@ namespace Mono.CSharp
                        var ifaces = PartialContainer.Interfaces;
                        if (ifaces != null) {
                                foreach (TypeSpec t in ifaces){
-                                       if (t == mb.InterfaceType)
+                                       if (t == mb.InterfaceType || t == null)
                                                return true;
 
                                        var expanded_base = t.Interfaces;
index 95f9897c081a7dfbe9bde7d9faef9a60baae01dd..36c5626bcc32dd190a10ff102953fb65f56ea8e3 100644 (file)
@@ -715,6 +715,12 @@ namespace Mono.CSharp {
                                return false;
                        }
 
+                       var interpolated_string = expr as InterpolatedString;
+                       if (interpolated_string != null) {
+                               if (target_type == rc.Module.PredefinedTypes.IFormattable.TypeSpec || target_type == rc.Module.PredefinedTypes.FormattableString.TypeSpec)
+                                       return true;
+                       }
+
                        return ImplicitStandardConversionExists (expr, target_type);
                }
 
index 99759aac984fc441816824303b28c8c9a0879d25..cd7ce1ac68fe34b998cd241d6f2d6783873866ea 100644 (file)
@@ -2523,7 +2523,6 @@ namespace Mono.CSharp
 
                int TokenizePragmaWarningIdentifier (ref int c, ref bool identifier)
                {
-
                        if ((c >= '0' && c <= '9') || is_identifier_start_character (c)) {
                                int number;
 
@@ -2588,6 +2587,9 @@ namespace Mono.CSharp
                                while (c == ' ' || c == '\t')
                                        c = get_char ();
 
+                               if (c == '\n' || c == UnicodeLS || c == UnicodePS)
+                                       advance_line ();
+
                                return number;
                        }
 
index fc99defc44e19359646b879d59bb7feb63bba902..efc5927303ac94674dbba013c3f969c5ef8653d5 100644 (file)
@@ -4482,8 +4482,8 @@ namespace Mono.CSharp {
                                        //
                                        // Uwrap delegate from Expression<T>
                                        //
-                                       q = TypeManager.GetTypeArguments (q)[0];
-                                       p = TypeManager.GetTypeArguments (p)[0];
+                                       q = TypeManager.GetTypeArguments (q) [0];
+                                       p = TypeManager.GetTypeArguments (p) [0];
                                }
 
                                var p_m = Delegate.GetInvokeMethod (p);
@@ -4510,10 +4510,10 @@ namespace Mono.CSharp {
                                // if p has a return type Y, and q is void returning, then C1 is the better conversion.
                                //
                                if (q.Kind == MemberKind.Void) {
-                                       return p.Kind != MemberKind.Void ? 1: 0;
+                                       return p.Kind != MemberKind.Void ? 1 : 0;
                                }
 
-                               var am = (AnonymousMethodExpression) a.Expr;
+                               var am = (AnonymousMethodExpression)a.Expr;
 
                                //
                                // When anonymous method is an asynchronous, and P has a return type Task<Y1>, and Q has a return type Task<Y2>
@@ -4521,8 +4521,8 @@ namespace Mono.CSharp {
                                //
                                if (p.IsGenericTask || q.IsGenericTask) {
                                        if (am.Block.IsAsync && p.IsGenericTask && q.IsGenericTask) {
-                                               q = q.TypeArguments[0];
-                                               p = p.TypeArguments[0];
+                                               q = q.TypeArguments [0];
+                                               p = p.TypeArguments [0];
                                        }
                                }
 
@@ -4548,11 +4548,75 @@ namespace Mono.CSharp {
                        if (argument_type == q)
                                return 2;
 
-                       //
-                       // The parameters are identicial and return type is not void, use better type conversion
-                       // on return type to determine better one
-                       //
-                       return BetterTypeConversion (ec, p, q);
+                       return IsBetterConversionTarget (ec, p, q);
+               }
+
+               static int IsBetterConversionTarget (ResolveContext rc, TypeSpec p, TypeSpec q)
+               {
+                       if ((p.Kind == MemberKind.Delegate || p.IsExpressionTreeType) && (q.Kind == MemberKind.Delegate || q.IsExpressionTreeType)) {
+
+                               if (p.Kind != MemberKind.Delegate) {
+                                       p = TypeManager.GetTypeArguments (p) [0];
+                               }
+
+                               if (q.Kind != MemberKind.Delegate) {
+                                       q = TypeManager.GetTypeArguments (q) [0];
+                               }
+
+                               var p_m = Delegate.GetInvokeMethod (p);
+                               var q_m = Delegate.GetInvokeMethod (q);
+
+                               p = p_m.ReturnType;
+                               q = q_m.ReturnType;
+
+                               //
+                               // if p is void returning, and q has a return type Y, then C2 is the better conversion.
+                               //
+                               if (p.Kind == MemberKind.Void) {
+                                       return q.Kind != MemberKind.Void ? 2 : 0;
+                               }
+
+                               //
+                               // if p has a return type Y, and q is void returning, then C1 is the better conversion.
+                               //
+                               if (q.Kind == MemberKind.Void) {
+                                       return p.Kind != MemberKind.Void ? 1 : 0;
+                               }
+
+                               return IsBetterConversionTarget (rc, p, q);
+                       }
+
+                       if (p.IsGenericTask && q.IsGenericTask) {
+                               q = q.TypeArguments [0];
+                               p = p.TypeArguments [0];
+                               return IsBetterConversionTarget (rc, p, q);
+                       }
+
+                       if (p.IsNullableType) {
+                               p = Nullable.NullableInfo.GetUnderlyingType (p);
+                               if (!BuiltinTypeSpec.IsPrimitiveType (p))
+                                       return 0;
+
+                               //
+                               // Spec expects implicit conversion check between p and q, q and p
+                               // to be done before nullable unwrapping but that's expensive operation
+                               // Hence manual tweak is needed because BetterTypeConversion works on
+                               // unwrapped types
+                               //
+                               if (p == q)
+                                       return 2;
+                       }
+
+                       if (q.IsNullableType) {
+                               q = Nullable.NullableInfo.GetUnderlyingType (q);
+                               if (!BuiltinTypeSpec.IsPrimitiveType (q))
+                                       return 0;
+
+                               if (q == p)
+                                       return 1;
+                       }
+
+                       return BetterTypeConversion (rc, p, q);
                }
 
                //
@@ -4590,8 +4654,9 @@ namespace Mono.CSharp {
                                }
                                break;
                        case BuiltinTypeSpec.Type.Dynamic:
-                               // Dynamic is never better
-                               return 2;
+                               // LAMESPEC: Dynamic conversions is not considered
+                               p = ec.Module.Compiler.BuiltinTypes.Object;
+                               break;
                        }
 
                        switch (q.BuiltinType) {
@@ -4621,12 +4686,11 @@ namespace Mono.CSharp {
                                }
                                break;
                        case BuiltinTypeSpec.Type.Dynamic:
-                               // Dynamic is never better
-                               return 1;
+                               // LAMESPEC: Dynamic conversions is not considered
+                               q = ec.Module.Compiler.BuiltinTypes.Object;
+                               break;
                        }
 
-                       // FIXME: handle lifted operators
-
                        // TODO: this is expensive
                        Expression p_tmp = new EmptyExpression (p);
                        Expression q_tmp = new EmptyExpression (q);
@@ -4658,7 +4722,9 @@ namespace Mono.CSharp {
                        AParametersCollection candidate_pd = ((IParametersMember) candidate).Parameters;
                        AParametersCollection best_pd = ((IParametersMember) best).Parameters;
 
-                       bool better_at_least_one = false;
+                       int candidate_better_count = 0;
+                       int best_better_count = 0;
+
                        bool are_equivalent = true;
                        int args_count = args == null ? 0 : args.Count;
                        int j = 0;
@@ -4713,30 +4779,31 @@ namespace Mono.CSharp {
                                        //
                                        // No optional parameters tie breaking rules for delegates overload resolution
                                        //
-                                       if ((this.restrictions & Restrictions.CovariantDelegate) != 0)
+                                       if ((restrictions & Restrictions.CovariantDelegate) != 0)
                                                return false;
 
-                                       better_at_least_one = false;
-
-                                       ++j;
-                                       while (j < args_count && !args [j++].IsDefaultArgument) ;
-
-                                       break;
+                                       ++best_better_count;
+                                       continue;
                                }
 
                                // for at least one argument, the conversion to 'ct' should be better than 
                                // the conversion to 'bt'.
                                if (result != 0)
-                                       better_at_least_one = true;
+                                       ++candidate_better_count;
                        }
 
-                       if (better_at_least_one)
+                       if (candidate_better_count != 0 && best_better_count == 0)
                                return true;
 
+                       if (best_better_count > 0 && candidate_better_count == 0)
+                               return false;
+
                        //
                        // LAMESPEC: Tie-breaking rules for not equivalent parameter types
                        //
                        if (!are_equivalent) {
+                               while (j < args_count && !args [j++].IsDefaultArgument) ;
+
                                //
                                // A candidate with no default parameters is still better when there
                                // is no better expression conversion
index 1d781cde60f12caa2af4b5f9a35b1496bde53ea1..75a02034f9cf9cda8bef266f139325a055c15546 100644 (file)
@@ -239,6 +239,7 @@ namespace Mono.CSharp
                readonly List<Tuple<AssemblyName, string, Assembly>> loaded_names;
                static readonly Dictionary<string, string[]> sdk_directory;
                Dictionary<AssemblyName, List<string[]>> resolved_version_mismatches;
+               static readonly TypeName objectTypeName = new TypeName ("System", "Object");
 
                static StaticLoader ()
                {
@@ -257,7 +258,7 @@ namespace Mono.CSharp
                        this.importer = importer;
                        domain = new Universe (UniverseOptions.MetadataOnly | UniverseOptions.ResolveMissingMembers | 
                                UniverseOptions.DisableFusion | UniverseOptions.DecodeVersionInfoAttributeBlobs |
-                               UniverseOptions.DeterministicOutput);
+                               UniverseOptions.DeterministicOutput | UniverseOptions.DisableDefaultAssembliesLookup);
                        
                        domain.AssemblyResolve += AssemblyReferenceResolver;
                        loaded_names = new List<Tuple<AssemblyName, string, Assembly>> ();
@@ -442,10 +443,15 @@ namespace Mono.CSharp
                        return list;
                }
 
-               public override bool HasObjectType (Assembly assembly)
+               public override Assembly HasObjectType (Assembly assembly)
                {
                        try {
-                               return assembly.GetType (compiler.BuiltinTypes.Object.FullName) != null;
+                               // System.Object can be forwarded and ikvm
+                               // transparently finds it in target assembly therefore
+                               // need to return actual obj assembly becauase in such
+                               // case it's different to assembly parameter
+                               var obj = assembly.FindType (objectTypeName);
+                               return obj == null ? null : obj.Assembly;
                        } catch (Exception e) {
                                throw new InternalErrorException (e, "Failed to load assembly `{0}'", assembly.FullName);
                        }
index 78bd541791319165ebb9c0b9279148874a74bdcd..d302724c386d84cf5998ceaec7fd542b43e47b2e 100644 (file)
@@ -676,20 +676,16 @@ namespace Mono.CSharp
                        if (!param.IsEmpty) {
                                if (is_valid_property) {
                                        var index_name = declaringType.MemberDefinition.GetAttributeDefaultMember ();
-                                       if (index_name == null) {
+                                       if (index_name == null || index_name != pi.Name) {
                                                is_valid_property = false;
                                        } else {
                                                if (get != null) {
                                                        if (get.IsStatic)
                                                                is_valid_property = false;
-                                                       if (get.Name.IndexOf (index_name, StringComparison.Ordinal) != 4)
-                                                               is_valid_property = false;
                                                }
                                                if (set != null) {
                                                        if (set.IsStatic)
                                                                is_valid_property = false;
-                                                       if (set.Name.IndexOf (index_name, StringComparison.Ordinal) != 4)
-                                                               is_valid_property = false;
                                                }
                                        }
 
diff --git a/mcs/mcs/mcs-net_4_5.csproj b/mcs/mcs/mcs-net_4_5.csproj
deleted file mode 100644 (file)
index 8f2825a..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>\r
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
-  <PropertyGroup>\r
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
-    <ProductVersion>9.0.30729</ProductVersion>\r
-    <SchemaVersion>2.0</SchemaVersion>\r
-    <ProjectGuid>{96874A7F-2F4E-4900-B812-1A61610DECE3}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
-    <NoWarn>1699</NoWarn>\r
-    <OutputPath>bin\Debug\mcs-net_4_5</OutputPath>\r
-    <NoStdLib>True</NoStdLib>\r
-    <NoConfig>True</NoConfig>\r
-    \r
-    <AppDesignerFolder>Properties</AppDesignerFolder>\r
-    <RootNamespace>\r
-    </RootNamespace>\r
-    <AssemblyName>mcs</AssemblyName>\r
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
-    <FileAlignment>512</FileAlignment>\r
-  </PropertyGroup>\r
-  \r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
-    <DebugSymbols>true</DebugSymbols>\r
-    <DebugType>full</DebugType>\r
-    <NoWarn>1699</NoWarn>\r
-    <Optimize>false</Optimize>\r
-    <DefineConstants>DEBUG;TRACE;STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;MONO;DISABLE_CAS_USE</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
-    <DebugType>pdbonly</DebugType>\r
-    <NoWarn>1699</NoWarn>\r
-    <Optimize>true</Optimize>\r
-    <DefineConstants>STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;MONO;DISABLE_CAS_USE</DefineConstants>\r
-    <ErrorReport>prompt</ErrorReport>\r
-    <WarningLevel>4</WarningLevel>\r
-  </PropertyGroup>\r
-  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
-  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
-  is a problem to compile the Mono mscorlib.dll -->\r
-  <PropertyGroup>\r
-    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
-  </PropertyGroup>\r
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
-  <ItemGroup>\r
-    <Compile Include="..\..\external\ikvm\reflect\*.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Emit\*.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Impl\ITypeOwner.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Impl\SymbolSupport.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Metadata\*.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Reader\*.cs" />\r
-    <Compile Include="..\..\external\ikvm\reflect\Writer\*.cs" />\r
-    <Compile Include="..\build\common\Consts.cs" />\r
-    <Compile Include="..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolFile.cs" />\r
-    <Compile Include="..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolTable.cs" />\r
-    <Compile Include="..\class\Mono.CompilerServices.SymbolWriter\SourceMethodBuilder.cs" />\r
-    <Compile Include="..\class\Mono.Security\Mono.Security.Cryptography\CryptoConvert.cs" />\r
-    <Compile Include="..\tools\monop\outline.cs" />\r
-    <Compile Include="anonymous.cs" />\r
-    <Compile Include="argument.cs" />\r
-    <Compile Include="assembly.cs" />\r
-    <Compile Include="AssemblyInfo.cs" />\r
-    <Compile Include="assign.cs" />\r
-    <Compile Include="async.cs" />\r
-    <Compile Include="attribute.cs" />\r
-    <Compile Include="cfold.cs" />\r
-    <Compile Include="class.cs" />\r
-    <Compile Include="codegen.cs" />\r
-    <Compile Include="complete.cs" />\r
-    <Compile Include="const.cs" />\r
-    <Compile Include="constant.cs" />\r
-    <Compile Include="context.cs" />\r
-    <Compile Include="convert.cs" />\r
-    <Compile Include="cs-tokenizer.cs" />\r
-    <Compile Include="decl.cs" />\r
-    <Compile Include="delegate.cs" />\r
-    <Compile Include="doc.cs" />\r
-    <Compile Include="driver.cs" />\r
-    <Compile Include="dynamic.cs" />\r
-    <Compile Include="ecore.cs" />\r
-    <Compile Include="enum.cs" />\r
-    <Compile Include="eval.cs" />\r
-    <Compile Include="expression.cs" />\r
-    <Compile Include="field.cs" />\r
-    <Compile Include="flowanalysis.cs" />\r
-    <Compile Include="generic.cs" />\r
-    <Compile Include="ikvm.cs" />\r
-    <Compile Include="import.cs" />\r
-    <Compile Include="iterators.cs" />\r
-    <Compile Include="lambda.cs" />\r
-    <Compile Include="linq.cs" />\r
-    <Compile Include="literal.cs" />\r
-    <Compile Include="location.cs" />\r
-    <Compile Include="membercache.cs" />\r
-    <Compile Include="method.cs" />\r
-    <Compile Include="modifiers.cs" />\r
-    <Compile Include="module.cs" />\r
-    <Compile Include="namespace.cs" />\r
-    <Compile Include="nullable.cs" />\r
-    <Compile Include="parameter.cs" />\r
-    <Compile Include="pending.cs" />\r
-    <Compile Include="property.cs" />\r
-    <Compile Include="reflection.cs" />\r
-    <Compile Include="report.cs" />\r
-    <Compile Include="settings.cs" />\r
-    <Compile Include="statement.cs" />\r
-    <Compile Include="support.cs" />\r
-    <Compile Include="typemanager.cs" />\r
-    <Compile Include="typespec.cs" />\r
-    <Compile Include="visit.cs" />\r  </ItemGroup>\r
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
-       Other similar extension points exist, see Microsoft.Common.targets.\r
-  <Target Name="BeforeBuild">\r
-  </Target>\r
-  <Target Name="AfterBuild">\r
-  </Target>\r
-  -->\r
-  <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
-\r
-    </PreBuildEvent>\r
-    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
-$(ProjectDir)\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
-\r
-    </PreBuildEvent>\r
-\r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-\r
-    </PostBuildEvent>\r
-    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
-\r
-    </PostBuildEvent>\r
-  </PropertyGroup>\r
-  <ItemGroup>\r
-    <ProjectReference Include="../class/corlib/corlib-net_4_5.csproj">\r
-      <Project>{33BF0182-AC5C-464C-995B-C9CFE74E1A95}</Project>\r
-      <Name>corlib-net_4_5</Name>\r
-    </ProjectReference>\r
-  </ItemGroup>\r
-  <ItemGroup>\r
-    <Folder Include="Properties\" />\r
-  </ItemGroup>\r
-</Project>\r
-
index 46e528f636c756f62f43912e53f2fa2832408a30..46bedb4861240da0ed221219b55b8388781c1602 100644 (file)
@@ -6,10 +6,13 @@
     <ProductVersion>9.0.30729</ProductVersion>\r
     <SchemaVersion>2.0</SchemaVersion>\r
     <ProjectGuid>{322A755A-ED38-4295-979D-E49EBAFA2852}</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
+    <OutputType>Exe</OutputType>\r
     <NoWarn>1699</NoWarn>\r
     <OutputPath>bin\Debug\mcs-net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-bin\Debug\mcs-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     <NoStdLib>True</NoStdLib>\r
+    \r
     <NoConfig>True</NoConfig>\r
     \r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
@@ -25,7 +28,7 @@
     <DebugType>full</DebugType>\r
     <NoWarn>1699</NoWarn>\r
     <Optimize>false</Optimize>\r
-    <DefineConstants>TRACE;STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>TRACE;STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_PROCESS_START;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
@@ -33,7 +36,7 @@
     <DebugType>pdbonly</DebugType>\r
     <NoWarn>1699</NoWarn>\r
     <Optimize>true</Optimize>\r
-    <DefineConstants>STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <DefineConstants>STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;MONO_FEATURE_THREAD_ABORT;MONO_FEATURE_PROCESS_START;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
   </PropertyGroup>\r
     <Compile Include="support.cs" />\r
     <Compile Include="typemanager.cs" />\r
     <Compile Include="typespec.cs" />\r
-    <Compile Include="visit.cs" />\r  </ItemGroup>\r
+    <Compile Include="visit.cs" />\r
+    <Compile Include="cs-parser.cs" />\r  </ItemGroup>\r
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
        Other similar extension points exist, see Microsoft.Common.targets.\r
   <Target Name="BeforeBuild">\r
   </Target>\r
   -->\r
   <PropertyGroup>\r
-    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
-$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
-\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs
+
+
     </PreBuildEvent>\r
     <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
-$(ProjectDir)\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
-\r
-    </PreBuildEvent>\r
+$(ProjectDir)\..\jay\jay -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
 \r
-    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">\r
 \r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
     </PostBuildEvent>\r
     <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
 \r
index dc5f24016eb3b865b3bf120ba2a9c491661469c8..74a217c4eb22d0c0491626502091d0b053a243f5 100644 (file)
@@ -22,6 +22,7 @@
     <ErrorReport>prompt</ErrorReport>\r
     <WarningLevel>4</WarningLevel>\r
     <UseVSHostingProcess>false</UseVSHostingProcess>\r
+    <Commandlineparameters></Commandlineparameters>\r
   </PropertyGroup>\r
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
     <DebugType>pdbonly</DebugType>\r
index b233b9439cbfd397d52a28c70953d10d3ab8564e..1210ae4221a40a47fb53c67390239a86931dc280 100644 (file)
@@ -440,9 +440,9 @@ namespace Mono.CSharp
                        return Path.GetDirectoryName (typeof (object).Assembly.Location);
                }
 
-               public override bool HasObjectType (Assembly assembly)
+               public override Assembly HasObjectType (Assembly assembly)
                {
-                       return assembly.GetType (compiler.BuiltinTypes.Object.FullName) != null;
+                       return assembly.GetType (compiler.BuiltinTypes.Object.FullName) == null ? null : assembly;
                }
 
                public override Assembly LoadAssemblyFile (string assembly, bool isImplicitReference)
diff --git a/mcs/nunit24/ClientUtilities/util/nunit.util-net_4_x.csproj b/mcs/nunit24/ClientUtilities/util/nunit.util-net_4_x.csproj
new file mode 100644 (file)
index 0000000..23eed1d
--- /dev/null
@@ -0,0 +1,166 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{52B1E1ED-1F77-4AEC-9CB2-141B8795949F}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.util</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;MONO;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>MONO;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AggregatingTestRunner.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="AssemblyItem.cs" />\r
+    <Compile Include="AssemblyList.cs" />\r
+    <Compile Include="AssemblyWatcher.cs" />\r
+    <Compile Include="CategoryExpression.cs" />\r
+    <Compile Include="CategoryManager.cs" />\r
+    <Compile Include="CommandLineOptions.cs" />\r
+    <Compile Include="ConsoleWriter.cs" />\r
+    <Compile Include="ISettings.cs" />\r
+    <Compile Include="ITestEvents.cs" />\r
+    <Compile Include="ITestLoader.cs" />\r
+    <Compile Include="MemorySettingsStorage.cs" />\r
+    <Compile Include="MultipleTestDomainRunner.cs" />\r
+    <Compile Include="NUnitProject.cs" />\r
+    <Compile Include="NUnitRegistry.cs" />\r
+    <Compile Include="PathUtils.cs" />\r
+    <Compile Include="ProcessRunner.cs" />\r
+    <Compile Include="ProjectConfig.cs" />\r
+    <Compile Include="ProjectConfigCollection.cs" />\r
+    <Compile Include="ProjectFormatException.cs" />\r
+    <Compile Include="ProxyTestRunner.cs" />\r
+    <Compile Include="RecentFileEntry.cs" />\r
+    <Compile Include="RecentFiles.cs" />\r
+    <Compile Include="RecentFilesCollection.cs" />\r
+    <Compile Include="RegistrySettingsStorage.cs" />\r
+    <Compile Include="RemoteTestAgent.cs" />\r
+    <Compile Include="ResultSummarizer.cs" />\r
+    <Compile Include="ServerBase.cs" />\r
+    <Compile Include="ServerUtilities.cs" />\r
+    <Compile Include="Services.cs" />\r
+    <Compile Include="Services\AddinManager.cs" />\r
+    <Compile Include="Services\AddinRegistry.cs" />\r
+    <Compile Include="Services\DomainManager.cs" />\r
+    <Compile Include="Services\RecentFilesService.cs" />\r
+    <Compile Include="Services\ServiceManager.cs" />\r
+    <Compile Include="Services\SettingsService.cs" />\r
+    <Compile Include="Services\TestAgency.cs" />\r
+    <Compile Include="Services\TestAgentManager.cs" />\r
+    <Compile Include="SettingsGroup.cs" />\r
+    <Compile Include="SettingsStorage.cs" />\r
+    <Compile Include="StackTraceFilter.cs" />\r
+    <Compile Include="SummaryVisitor.cs" />\r
+    <Compile Include="TestAgent.cs" />\r
+    <Compile Include="TestDomain.cs" />\r
+    <Compile Include="TestEventArgs.cs" />\r
+    <Compile Include="TestEventDispatcher.cs" />\r
+    <Compile Include="TestExceptionHandler.cs" />\r
+    <Compile Include="TestLoader.cs" />\r
+    <Compile Include="TestObserver.cs" />\r
+    <Compile Include="TestResultItem.cs" />\r
+    <Compile Include="TestServer.cs" />\r
+    <Compile Include="VSProject.cs" />\r
+    <Compile Include="VSProjectConfig.cs" />\r
+    <Compile Include="VSProjectConfigCollection.cs" />\r
+    <Compile Include="XmlResultTransform.cs" />\r
+    <Compile Include="XmlResultVisitor.cs" />\r
+    <Compile Include="XmlSettingsStorage.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/core/nunit.core-net_4_x.csproj">\r
+      <Project>{257D35DE-7F06-42BA-B82E-734991FFE949}</Project>\r
+      <Name>nunit.core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj">\r
+      <Project>{A950C3AB-D62D-4B20-BFB8-5671DE20E535}</Project>\r
+      <Name>nunit.core.interfaces-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.Runtime.Remoting/System.Runtime.Remoting-net_4_x.csproj">\r
+      <Project>{F19F77AE-1A81-4676-BAB8-6C1DA243A961}</Project>\r
+      <Name>System.Runtime.Remoting-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="Transform.resx">\r
+      <LogicalName>NUnit.Util.Transform.resources</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/ConsoleRunner/nunit-console-exe/nunit-console-net_4_x.csproj b/mcs/nunit24/ConsoleRunner/nunit-console-exe/nunit-console-net_4_x.csproj
new file mode 100644 (file)
index 0000000..83cb560
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4FB9199D-D57E-4007-AA72-0200296AE55F}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit-console</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="assemblyinfo.cs" />\r
+    <Compile Include="Class1.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitFramework/framework/NUnit.Framework-net_4_x.csproj">\r
+      <Project>{B2272696-96AA-4638-B17C-60A4BA37CA0E}</Project>\r
+      <Name>NUnit.Framework-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../ClientUtilities/util/nunit.util-net_4_x.csproj">\r
+      <Project>{52B1E1ED-1F77-4AEC-9CB2-141B8795949F}</Project>\r
+      <Name>nunit.util-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/core/nunit.core-net_4_x.csproj">\r
+      <Project>{257D35DE-7F06-42BA-B82E-734991FFE949}</Project>\r
+      <Name>nunit.core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../nunit-console/nunit-console-runner-net_4_x.csproj">\r
+      <Project>{B0078000-EF01-4AA3-B5DD-47145B4527EE}</Project>\r
+      <Name>nunit-console-runner-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/ConsoleRunner/nunit-console/nunit-console-runner-net_4_x.csproj b/mcs/nunit24/ConsoleRunner/nunit-console/nunit-console-runner-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ed6ee53
--- /dev/null
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B0078000-EF01-4AA3-B5DD-47145B4527EE}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit-console-runner</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;MONO;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>MONO;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="ConsoleOptions.cs" />\r
+    <Compile Include="ConsoleUi.cs" />\r
+    <Compile Include="EventCollector.cs" />\r
+    <Compile Include="Runner.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/core/nunit.core-net_4_x.csproj">\r
+      <Project>{257D35DE-7F06-42BA-B82E-734991FFE949}</Project>\r
+      <Name>nunit.core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj">\r
+      <Project>{A950C3AB-D62D-4B20-BFB8-5671DE20E535}</Project>\r
+      <Name>nunit.core.interfaces-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../ClientUtilities/util/nunit.util-net_4_x.csproj">\r
+      <Project>{52B1E1ED-1F77-4AEC-9CB2-141B8795949F}</Project>\r
+      <Name>nunit.util-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 83a2e01bd0e038c550791c58e54b57bdbe203305..9c7c76c56f3d8034c14226181419c4e983f03a74 100644 (file)
@@ -1,4 +1,4 @@
-thisdir = nunit20/NUnitCore/core
+thisdir = nunit24/NUnitCore/core
 SUBDIRS = 
 include ../../../build/rules.make
 
diff --git a/mcs/nunit24/NUnitCore/core/nunit.core-net_4_x.csproj b/mcs/nunit24/NUnitCore/core/nunit.core-net_4_x.csproj
new file mode 100644 (file)
index 0000000..e6b70af
--- /dev/null
@@ -0,0 +1,160 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{257D35DE-7F06-42BA-B82E-734991FFE949}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.core</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AbstractTestCaseDecoration.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="AssemblyReader.cs" />\r
+    <Compile Include="AssemblyResolver.cs" />\r
+    <Compile Include="BabysitterSupport.cs" />\r
+    <Compile Include="Builders\AbstractFixtureBuilder.cs" />\r
+    <Compile Include="Builders\AbstractTestCaseBuilder.cs" />\r
+    <Compile Include="Builders\LegacySuiteBuilder.cs" />\r
+    <Compile Include="Builders\NUnitTestCaseBuilder.cs" />\r
+    <Compile Include="Builders\NUnitTestFixtureBuilder.cs" />\r
+    <Compile Include="Builders\SetUpFixtureBuilder.cs" />\r
+    <Compile Include="Builders\TestAssemblyBuilder.cs" />\r
+    <Compile Include="CoreExtensions.cs" />\r
+    <Compile Include="CultureDetector.cs" />\r
+    <Compile Include="DelegatingTestRunner.cs" />\r
+    <Compile Include="DirectorySwapper.cs" />\r
+    <Compile Include="EventListenerTextWriter.cs" />\r
+    <Compile Include="EventPump.cs" />\r
+    <Compile Include="EventQueue.cs" />\r
+    <Compile Include="Extensibility\EventListenerCollection.cs" />\r
+    <Compile Include="Extensibility\FrameworkRegistry.cs" />\r
+    <Compile Include="Extensibility\SuiteBuilderCollection.cs" />\r
+    <Compile Include="Extensibility\TestCaseBuilderCollection.cs" />\r
+    <Compile Include="Extensibility\TestDecoratorCollection.cs" />\r
+    <Compile Include="ExtensionHost.cs" />\r
+    <Compile Include="ExtensionPoint.cs" />\r
+    <Compile Include="IgnoreDecorator.cs" />\r
+    <Compile Include="InvalidSuiteException.cs" />\r
+    <Compile Include="InvalidTestFixtureException.cs" />\r
+    <Compile Include="LegacySuite.cs" />\r
+    <Compile Include="Log4NetCapture.cs" />\r
+    <Compile Include="LogCapture.cs" />\r
+    <Compile Include="NamespaceTreeBuilder.cs" />\r
+    <Compile Include="NoTestFixturesException.cs" />\r
+    <Compile Include="NotRunnableTestCase.cs" />\r
+    <Compile Include="NTrace.cs" />\r
+    <Compile Include="NullListener.cs" />\r
+    <Compile Include="NUnitException.cs" />\r
+    <Compile Include="NUnitFramework.cs" />\r
+    <Compile Include="NUnitTestFixture.cs" />\r
+    <Compile Include="NUnitTestMethod.cs" />\r
+    <Compile Include="PlatformHelper.cs" />\r
+    <Compile Include="ProxyTestRunner.cs" />\r
+    <Compile Include="QueuingEventListener.cs" />\r
+    <Compile Include="Reflect.cs" />\r
+    <Compile Include="RemoteTestRunner.cs" />\r
+    <Compile Include="SetUpFixture.cs" />\r
+    <Compile Include="SimpleTestRunner.cs" />\r
+    <Compile Include="StringTextWriter.cs" />\r
+    <Compile Include="SuiteBuilderAttribute.cs" />\r
+    <Compile Include="TestBuilderAttribute.cs" />\r
+    <Compile Include="TestCase.cs" />\r
+    <Compile Include="TestCaseBuilder.cs" />\r
+    <Compile Include="TestCaseBuilderAttribute.cs" />\r
+    <Compile Include="TestContext.cs" />\r
+    <Compile Include="TestDecoratorAttribute.cs" />\r
+    <Compile Include="TestFixture.cs" />\r
+    <Compile Include="TestFixtureBuilder.cs" />\r
+    <Compile Include="TestMethod.cs" />\r
+    <Compile Include="TestRunnerThread.cs" />\r
+    <Compile Include="TestSuite.cs" />\r
+    <Compile Include="TestSuiteBuilder.cs" />\r
+    <Compile Include="TextCapture.cs" />\r
+    <Compile Include="ThreadedTestRunner.cs" />\r
+    <Compile Include="ThreadUtility.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitFramework/framework/NUnit.Framework-net_4_x.csproj">\r
+      <Project>{B2272696-96AA-4638-B17C-60A4BA37CA0E}</Project>\r
+      <Name>NUnit.Framework-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../interfaces/nunit.core.interfaces-net_4_x.csproj">\r
+      <Project>{A950C3AB-D62D-4B20-BFB8-5671DE20E535}</Project>\r
+      <Name>nunit.core.interfaces-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj b/mcs/nunit24/NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj
new file mode 100644 (file)
index 0000000..93d549d
--- /dev/null
@@ -0,0 +1,133 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{A950C3AB-D62D-4B20-BFB8-5671DE20E535}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.core.interfaces</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="EventListener.cs" />\r
+    <Compile Include="Extensibility\Addin.cs" />\r
+    <Compile Include="Extensibility\AddinStatus.cs" />\r
+    <Compile Include="Extensibility\ExtensionType.cs" />\r
+    <Compile Include="Extensibility\IAddin.cs" />\r
+    <Compile Include="Extensibility\IAddinManager.cs" />\r
+    <Compile Include="Extensibility\IAddinRegistry.cs" />\r
+    <Compile Include="Extensibility\IExtensionHost.cs" />\r
+    <Compile Include="Extensibility\IExtensionPoint.cs" />\r
+    <Compile Include="Extensibility\IFrameworkRegistry.cs" />\r
+    <Compile Include="Extensibility\ISuiteBuilder.cs" />\r
+    <Compile Include="Extensibility\ITestCaseBuilder.cs" />\r
+    <Compile Include="Extensibility\ITestDecorator.cs" />\r
+    <Compile Include="Extensibility\NUnitAddinAttribute.cs" />\r
+    <Compile Include="Extensibility\TestFramework.cs" />\r
+    <Compile Include="Filters\AndFilter.cs" />\r
+    <Compile Include="Filters\CategoryFilter.cs" />\r
+    <Compile Include="Filters\NameFilter.cs" />\r
+    <Compile Include="Filters\NotFilter.cs" />\r
+    <Compile Include="Filters\OrFilter.cs" />\r
+    <Compile Include="Filters\SimpleNameFilter.cs" />\r
+    <Compile Include="IService.cs" />\r
+    <Compile Include="ITest.cs" />\r
+    <Compile Include="ITestFilter.cs" />\r
+    <Compile Include="ResultState.cs" />\r
+    <Compile Include="ResultVisitor.cs" />\r
+    <Compile Include="RunState.cs" />\r
+    <Compile Include="RuntimeFramework.cs" />\r
+    <Compile Include="Test.cs" />\r
+    <Compile Include="TestAssemblyInfo.cs" />\r
+    <Compile Include="TestCaseResult.cs" />\r
+    <Compile Include="TestFilter.cs" />\r
+    <Compile Include="TestID.cs" />\r
+    <Compile Include="TestInfo.cs" />\r
+    <Compile Include="TestName.cs" />\r
+    <Compile Include="TestNode.cs" />\r
+    <Compile Include="TestOutput.cs" />\r
+    <Compile Include="TestPackage.cs" />\r
+    <Compile Include="TestResult.cs" />\r
+    <Compile Include="TestRunner.cs" />\r
+    <Compile Include="TestSuiteResult.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitFramework/framework/NUnit.Framework-net_4_x.csproj">\r
+      <Project>{B2272696-96AA-4638-B17C-60A4BA37CA0E}</Project>\r
+      <Name>NUnit.Framework-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/NUnitExtensions/core/nunit.core.extensions-net_4_x.csproj b/mcs/nunit24/NUnitExtensions/core/nunit.core.extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c735210
--- /dev/null
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{7DEADBAC-1F4D-4799-8174-01E175C869FC}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.core.extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="RepeatedTestCase.cs" />\r
+    <Compile Include="RepeatedTestDecorator.cs" />\r
+    <Compile Include="RowTest\RowTestAddIn.cs" />\r
+    <Compile Include="RowTest\RowTestCase.cs" />\r
+    <Compile Include="RowTest\RowTestFactory.cs" />\r
+    <Compile Include="RowTest\RowTestFramework.cs" />\r
+    <Compile Include="RowTest\RowTestNameBuilder.cs" />\r
+    <Compile Include="RowTest\RowTestSuite.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/core/nunit.core-net_4_x.csproj">\r
+      <Project>{257D35DE-7F06-42BA-B82E-734991FFE949}</Project>\r
+      <Name>nunit.core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj">\r
+      <Project>{A950C3AB-D62D-4B20-BFB8-5671DE20E535}</Project>\r
+      <Name>nunit.core.interfaces-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/NUnitExtensions/framework/nunit.framework.extensions-net_4_x.csproj b/mcs/nunit24/NUnitExtensions/framework/nunit.framework.extensions-net_4_x.csproj
new file mode 100644 (file)
index 0000000..dc02b28
--- /dev/null
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{59253F15-7E2A-483D-8214-58F03681A3B6}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.framework.extensions</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="RepeatAttribute.cs" />\r
+    <Compile Include="RowAttribute.cs" />\r
+    <Compile Include="RowTest\RowAttribute.cs" />\r
+    <Compile Include="RowTest\RowTestAttribute.cs" />\r
+    <Compile Include="RowTest\SpecialValue.cs" />\r
+    <Compile Include="RowTestAttribute.cs" />\r
+    <Compile Include="SpecialValue.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 43076d8c8553ae0954ad041a6b77b9286e9ae6b1..a8c8440f46581782164f887171fa3958dae94df5 100644 (file)
@@ -1,4 +1,4 @@
-thisdir = nunit24/NUnit.Framework/framework
+thisdir = nunit24/NUnitFramework/framework
 SUBDIRS = 
 include ../../../build/rules.make
 
diff --git a/mcs/nunit24/NUnitFramework/framework/NUnit.Framework-net_4_x.csproj b/mcs/nunit24/NUnitFramework/framework/NUnit.Framework-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fae60ac
--- /dev/null
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{B2272696-96AA-4638-B17C-60A4BA37CA0E}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.framework</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;StronglyNamedAssembly</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AbstractAsserter.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="Assert.cs" />\r
+    <Compile Include="Assertion.cs" />\r
+    <Compile Include="AssertionException.cs" />\r
+    <Compile Include="AssertionFailureMessage.cs" />\r
+    <Compile Include="AssertionHelper.cs" />\r
+    <Compile Include="CategoryAttribute.cs" />\r
+    <Compile Include="CollectionAssert.cs" />\r
+    <Compile Include="Constraints\BinaryOperations.cs" />\r
+    <Compile Include="Constraints\CollectionConstraints.cs" />\r
+    <Compile Include="Constraints\ComparisonConstraints.cs" />\r
+    <Compile Include="Constraints\Constraint.cs" />\r
+    <Compile Include="Constraints\ConstraintBuilder.cs" />\r
+    <Compile Include="Constraints\ContainsConstraint.cs" />\r
+    <Compile Include="Constraints\EmptyConstraint.cs" />\r
+    <Compile Include="Constraints\EqualConstraint.cs" />\r
+    <Compile Include="Constraints\Numerics.cs" />\r
+    <Compile Include="Constraints\PrefixConstraints.cs" />\r
+    <Compile Include="Constraints\PropertyConstraint.cs" />\r
+    <Compile Include="Constraints\SameAsConstraint.cs" />\r
+    <Compile Include="Constraints\StringConstraints.cs" />\r
+    <Compile Include="Constraints\TypeConstraints.cs" />\r
+    <Compile Include="DescriptionAttribute.cs" />\r
+    <Compile Include="ExpectedExceptionAttribute.cs" />\r
+    <Compile Include="ExplicitAttribute.cs" />\r
+    <Compile Include="FileAssert.cs" />\r
+    <Compile Include="GlobalSettings.cs" />\r
+    <Compile Include="IAsserter.cs" />\r
+    <Compile Include="IExpectException.cs" />\r
+    <Compile Include="IgnoreAttribute.cs" />\r
+    <Compile Include="IgnoreException.cs" />\r
+    <Compile Include="IncludeExcludeAttributes.cs" />\r
+    <Compile Include="MessageWriter.cs" />\r
+    <Compile Include="MsgUtils.cs" />\r
+    <Compile Include="OldTestCase.cs" />\r
+    <Compile Include="PropertyAttribute.cs" />\r
+    <Compile Include="SetCultureAttribute.cs" />\r
+    <Compile Include="SetUpAttribute.cs" />\r
+    <Compile Include="SetUpFixtureAttribute.cs" />\r
+    <Compile Include="StringAssert.cs" />\r
+    <Compile Include="SuiteAttribute.cs" />\r
+    <Compile Include="SyntaxHelpers\Has.cs" />\r
+    <Compile Include="SyntaxHelpers\Is.cs" />\r
+    <Compile Include="SyntaxHelpers\List.cs" />\r
+    <Compile Include="SyntaxHelpers\ListMapper.cs" />\r
+    <Compile Include="SyntaxHelpers\Text.cs" />\r
+    <Compile Include="TearDownAttribute.cs" />\r
+    <Compile Include="TestAttribute.cs" />\r
+    <Compile Include="TestFixtureAttribute.cs" />\r
+    <Compile Include="TestFixtureSetUpAttribute.cs" />\r
+    <Compile Include="TestFixtureTearDownAttribute.cs" />\r
+    <Compile Include="TextMessageWriter.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/nunit24/NUnitMocks/mocks/nunit.mocks-net_4_x.csproj b/mcs/nunit24/NUnitMocks/mocks/nunit.mocks-net_4_x.csproj
new file mode 100644 (file)
index 0000000..a032cb9
--- /dev/null
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{E072B33B-F3C5-4B2F-ABAA-1339CF716143}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunit.mocks</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>StronglyNamedAssembly;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\CommonAssemblyInfo.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="DynamicMock.cs" />\r
+    <Compile Include="ICall.cs" />\r
+    <Compile Include="ICallHandler.cs" />\r
+    <Compile Include="IMethod.cs" />\r
+    <Compile Include="IMock.cs" />\r
+    <Compile Include="IVerify.cs" />\r
+    <Compile Include="MethodSignature.cs" />\r
+    <Compile Include="Mock.cs" />\r
+    <Compile Include="MockCall.cs" />\r
+    <Compile Include="MockInterfaceHandler.cs" />\r
+    <Compile Include="MockMethod.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../NUnitFramework/framework/NUnit.Framework-net_4_x.csproj">\r
+      <Project>{B2272696-96AA-4638-B17C-60A4BA37CA0E}</Project>\r
+      <Name>NUnit.Framework-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tests/gtest-optional-38.cs b/mcs/tests/gtest-optional-38.cs
new file mode 100644 (file)
index 0000000..1f44b03
--- /dev/null
@@ -0,0 +1,36 @@
+class C
+{
+}
+
+class Foo 
+{
+               public int SetValue (string name, string value, string defaultValue = null, bool preserveExistingCase = false)
+               {
+                       return 1;
+               }
+
+               public int SetValue (string name, C value, C defaultValue = default(C), bool relativeToProject = true, C relativeToPath = default(C), bool mergeToMainGroup = false, string condition = null)
+               {
+                       return 2;
+               }
+
+               public int SetValue (string name, object value, C defaultValue = null)
+               {
+                       return 3;
+               }
+}
+
+class Test 
+{
+       static int Main() 
+       {
+               var f = new Foo ();
+               C b = null;
+               C c = null;
+
+               if (f.SetValue ("a", b, c) != 2)
+                       return 1;
+
+               return 0;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/gtest-optional-39.cs b/mcs/tests/gtest-optional-39.cs
new file mode 100644 (file)
index 0000000..26aee13
--- /dev/null
@@ -0,0 +1,25 @@
+class A
+{
+       public int GetValues (string[] s, string value = null)
+       {
+               return 1;
+       }
+
+       public int GetValues (string s, params string [] args)
+       {
+               return 2;
+       }
+}
+
+
+class B
+{
+       public static int Main ()
+       {
+               var a = new A ();
+               if (a.GetValues (null) != 1)
+                       return 1;
+
+               return 0;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-935.cs b/mcs/tests/test-935.cs
new file mode 100644 (file)
index 0000000..405b722
--- /dev/null
@@ -0,0 +1,85 @@
+using System;
+using System.Threading.Tasks;
+using System.Linq.Expressions;
+
+public static class Program
+{
+       public delegate void DelegateVoid (int arg);
+       public delegate int DelegateInt (string arg);
+
+       public static int Main () 
+       { 
+               Foo (Bar);
+
+               TT (null);
+               NN (0);
+               NN2 (1);
+               Complex (null);
+               MM (1);
+               MM ((byte) 1);
+               return 0;
+       }
+
+       static void TT (Task<string> a)
+       {
+       }
+
+       static void TT (Task<object> b)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+
+       static void NN (sbyte a)
+       {
+       }
+
+       static void NN (uint? b)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+
+       static void NN2 (sbyte? a)
+       {
+       }
+
+       static void NN2 (uint? b)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+
+       public static void Bar (int arg) 
+       {
+       }
+
+       public static int Bar (string arg)
+       { 
+               return  2;
+       }
+
+       public static void Foo (DelegateVoid input)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+
+       public static void Foo (DelegateInt input)
+       {
+       }
+
+       static void Complex (Expression<Func<Task<short>>> arg)
+       {
+       }
+
+       static void Complex (Expression<Func<Task<ulong>>> arg)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+
+       static void MM (double f)
+       {
+       }
+
+       static void MM (double? f)
+       {
+               throw new ApplicationException ("wrong overload");
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-936-lib.il b/mcs/tests/test-936-lib.il
new file mode 100644 (file)
index 0000000..3f84f10
--- /dev/null
@@ -0,0 +1,45 @@
+.assembly extern mscorlib
+{
+}
+
+.assembly 'test-936-lib'
+{
+}
+
+.class public auto ansi sealed beforefieldinit TypeWithIndexer
+       extends [mscorlib]System.Object
+{
+  .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 )                      // ...Item..
+
+  .method public hidebysig specialname rtspecialname
+          instance void  .ctor() cil managed
+  {
+    IL_0000:  ldarg.0
+    IL_0001:  call       instance void [mscorlib]System.Object::.ctor()
+    IL_0006:  ret
+  }
+
+  .field private uint8[] a
+  .field private int32 b
+  .method public hidebysig specialname instance uint8 
+          get_B(int32 index) cil managed
+  {
+    IL_0000:  ldc.i4.0
+    IL_0001:  conv.u1
+    IL_0002:  ret
+  }
+
+  .method public hidebysig specialname 
+          instance void  set_O(int32 index,
+                           uint8 A_1) cil managed
+  {
+    IL_0000:  ret
+  }
+
+  .property instance uint8 Item(int32)
+  {
+    .get instance uint8 TypeWithIndexer::get_B(int32)
+    .set instance void TypeWithIndexer::set_O(int32,
+                                          uint8)
+  }
+}
diff --git a/mcs/tests/test-936.cs b/mcs/tests/test-936.cs
new file mode 100644 (file)
index 0000000..ae5af06
--- /dev/null
@@ -0,0 +1,11 @@
+// Compiler options: -r:test-936-lib.dll
+
+class X
+{
+       public static void Main ()
+       {
+               TypeWithIndexer a = new TypeWithIndexer ();
+               var x = a[0];
+               a[0] = x;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-937.cs b/mcs/tests/test-937.cs
new file mode 100644 (file)
index 0000000..b577d34
--- /dev/null
@@ -0,0 +1,15 @@
+// Compiler options: /noconfig /nostdlib -r:../class/lib/net_4_x/Facades/System.Runtime.dll -r:../class/lib/net_4_x/mscorlib.dll
+
+using System;
+
+class TypeForwarderOfSystemObject
+{
+       void TestAttributeReadDoesNotCrash ()
+       {
+               System.Runtime.InteropServices.Marshal.ReadByte (IntPtr.Zero, 0);               
+       }
+
+       static void Main ()
+       {
+       }
+}
diff --git a/mcs/tests/test-debug-30-ref.xml b/mcs/tests/test-debug-30-ref.xml
new file mode 100644 (file)
index 0000000..461f657
--- /dev/null
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<symbols>
+  <files>
+    <file id="1" name="test-debug-30.cs" checksum="d3addfa69f16faf00991ef839451a975" />
+  </files>
+  <methods>
+    <method token="0x6000001">
+      <sequencepoints />
+      <locals />
+      <scopes />
+    </method>
+    <method token="0x6000002">
+      <sequencepoints>
+        <entry il="0x0" row="7" col="2" file_ref="1" hidden="false" />
+        <entry il="0x1" row="8" col="3" file_ref="1" hidden="false" />
+        <entry il="0x6" row="9" col="2" file_ref="1" hidden="false" />
+      </sequencepoints>
+      <locals />
+      <scopes />
+    </method>
+    <method token="0x6000003">
+      <sequencepoints>
+        <entry il="0x0" row="15" col="2" file_ref="1" hidden="false" />
+        <entry il="0x1" row="16" col="3" file_ref="1" hidden="false" />
+        <entry il="0x6" row="17" col="2" file_ref="1" hidden="false" />
+      </sequencepoints>
+      <locals />
+      <scopes />
+    </method>
+  </methods>
+</symbols>
\ No newline at end of file
diff --git a/mcs/tests/test-debug-30.cs b/mcs/tests/test-debug-30.cs
new file mode 100644 (file)
index 0000000..78f0cdf
--- /dev/null
@@ -0,0 +1,18 @@
+class PragmaNewLinesParsing
+{
+#pragma warning disable RECS0029
+#pragma warning restore RECS0029
+
+       void Foo ()
+       {
+               return;
+       }
+
+#pragma warning disable RECS0029 // here
+#pragma warning restore RECS0029 /* end */
+
+       public static void Main ()
+       {
+               return;
+       }
+}
\ No newline at end of file
diff --git a/mcs/tests/test-interpolation-10.cs b/mcs/tests/test-interpolation-10.cs
new file mode 100644 (file)
index 0000000..15f5e21
--- /dev/null
@@ -0,0 +1,25 @@
+using System;
+
+class Program
+{
+       static int counter;
+
+       static int Main ()
+       {
+               FormatPrint ($"Case {1}");
+               if (counter != 1)
+                       return 1;
+
+               FormatPrint ($"Case {3}");
+               if (counter != 2)
+                       return 2;
+
+               return 0;
+       }
+
+       static void FormatPrint (FormattableString message)
+       {
+               Console.WriteLine(message);
+               ++counter;
+       }
+}
index 027fd9871ef422bf008dc6f7e66ff4196ed13027..55f9c7b2fa6fc0ebce88f03463ee0c9390fa82ae 100644 (file)
       </method>
     </type>
   </test>
+  <test name="gtest-optional-38.cs">
+    <type name="C">
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Foo">
+      <method name="Int32 SetValue(System.String, System.String, System.String, Boolean)" attrs="134">
+        <size>10</size>
+      </method>
+      <method name="Int32 SetValue(System.String, C, C, Boolean, C, Boolean, System.String)" attrs="134">
+        <size>10</size>
+      </method>
+      <method name="Int32 SetValue(System.String, System.Object, C)" attrs="134">
+        <size>10</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="Test">
+      <method name="Int32 Main()" attrs="145">
+        <size>50</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="gtest-optional-39.cs">
+    <type name="A">
+      <method name="Int32 GetValues(System.String[], System.String)" attrs="134">
+        <size>10</size>
+      </method>
+      <method name="Int32 GetValues(System.String, System.String[])" attrs="134">
+        <size>10</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+    <type name="B">
+      <method name="Int32 Main()" attrs="150">
+        <size>37</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="gtest-partial-01.cs">
     <type name="B`1[U]">
       <method name="Void .ctor()" attrs="6278">
       </method>
     </type>
   </test>
+  <test name="test-935.cs">
+    <type name="Program">
+      <method name="Int32 Main()" attrs="150">
+        <size>101</size>
+      </method>
+      <method name="Void TT(System.Threading.Tasks.Task`1[System.String])" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void TT(System.Threading.Tasks.Task`1[System.Object])" attrs="145">
+        <size>12</size>
+      </method>
+      <method name="Void NN(SByte)" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void NN(System.Nullable`1[System.UInt32])" attrs="145">
+        <size>12</size>
+      </method>
+      <method name="Void NN2(System.Nullable`1[System.SByte])" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void NN2(System.Nullable`1[System.UInt32])" attrs="145">
+        <size>12</size>
+      </method>
+      <method name="Void Bar(Int32)" attrs="150">
+        <size>2</size>
+      </method>
+      <method name="Int32 Bar(System.String)" attrs="150">
+        <size>10</size>
+      </method>
+      <method name="Void Foo(DelegateVoid)" attrs="150">
+        <size>12</size>
+      </method>
+      <method name="Void Foo(DelegateInt)" attrs="150">
+        <size>2</size>
+      </method>
+      <method name="Void Complex(System.Linq.Expressions.Expression`1[System.Func`1[System.Threading.Tasks.Task`1[System.Int16]]])" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void Complex(System.Linq.Expressions.Expression`1[System.Func`1[System.Threading.Tasks.Task`1[System.UInt64]]])" attrs="145">
+        <size>12</size>
+      </method>
+    </type>
+    <type name="Program+DelegateVoid">
+      <method name="Void Invoke(Int32)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="System.IAsyncResult BeginInvoke(Int32, System.AsyncCallback, System.Object)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="Void EndInvoke(System.IAsyncResult)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Program+DelegateInt">
+      <method name="Int32 Invoke(System.String)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="System.IAsyncResult BeginInvoke(System.String, System.AsyncCallback, System.Object)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="Int32 EndInvoke(System.IAsyncResult)" attrs="454">
+        <size>0</size>
+      </method>
+      <method name="Void .ctor(Object, IntPtr)" attrs="6278">
+        <size>0</size>
+      </method>
+    </type>
+    <type name="Program">
+      <method name="Void MM(Double)" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void MM(System.Nullable`1[System.Double])" attrs="145">
+        <size>12</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-936.cs">
+    <type name="X">
+      <method name="Void Main()" attrs="150">
+        <size>24</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
+  <test name="test-937.cs">
+    <type name="TypeForwarderOfSystemObject">
+      <method name="Void TestAttributeReadDoesNotCrash()" attrs="129">
+        <size>14</size>
+      </method>
+      <method name="Void Main()" attrs="145">
+        <size>2</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-94.cs">
     <type name="Base">
       <method name="Int32 IVehicle.Start()" attrs="481">
       </method>
     </type>
   </test>
+  <test name="test-debug-30.cs">
+    <type name="PragmaNewLinesParsing">
+      <method name="Void Foo()" attrs="129">
+        <size>7</size>
+      </method>
+      <method name="Void Main()" attrs="150">
+        <size>7</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-decl-expr-01.cs">
     <type name="DeclarationExpression">
       <method name="Int32 Main()" attrs="150">
       </method>
     </type>
   </test>
+  <test name="test-interpolation-10.cs">
+    <type name="Program">
+      <method name="Int32 Main()" attrs="145">
+        <size>106</size>
+      </method>
+      <method name="Void FormatPrint(System.FormattableString)" attrs="145">
+        <size>20</size>
+      </method>
+      <method name="Void .ctor()" attrs="6278">
+        <size>7</size>
+      </method>
+    </type>
+  </test>
   <test name="test-iter-01.cs">
     <type name="X">
       <method name="Int32 Main()" attrs="150">
diff --git a/mcs/tools/al/al-net_4_x.csproj b/mcs/tools/al/al-net_4_x.csproj
new file mode 100644 (file)
index 0000000..2657ba3
--- /dev/null
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D237CE6E-EA8F-4E8E-8413-295B27714AC6}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>al</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\external\ikvm\reflect\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Emit\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Metadata\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Properties\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Reader\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Writer\*.cs" />\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="Al.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Security/Mono.Security-net_4_x.csproj">\r
+      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
+      <Name>Mono.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Security/System.Security-net_4_x.csproj">\r
+      <Project>{3ED36717-A9D1-4289-8949-9B7F39766DEB}</Project>\r
+      <Name>System.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj">\r
+      <Project>{88177C4B-894F-485D-B95A-44199C06BE9F}</Project>\r
+      <Name>Mono.CompilerServices.SymbolWriter-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/browsercaps-updater/browsercaps-updater-net_4_x.csproj b/mcs/tools/browsercaps-updater/browsercaps-updater-net_4_x.csproj
new file mode 100644 (file)
index 0000000..40cc077
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>browsercaps-updater</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="BrowserCapsUpdater.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/cccheck/cccheck-net_4_x.csproj b/mcs/tools/cccheck/cccheck-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ef7c94e
--- /dev/null
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{BA3136DD-E843-4F57-8FBB-1782D3D08BC8}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>cccheck</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="Program.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CodeContracts/Mono.CodeContracts-net_4_x.csproj">\r
+      <Project>{9BE8D62B-471D-4538-8287-691B4ECE3209}</Project>\r
+      <Name>Mono.CodeContracts-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/ccrewrite/ccrewrite-net_4_x.csproj b/mcs/tools/ccrewrite/ccrewrite-net_4_x.csproj
new file mode 100644 (file)
index 0000000..69b39b8
--- /dev/null
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3A2CEA44-B631-40CB-B1B5-001AEC0C825E}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>ccrewrite</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="Program.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CodeContracts/Mono.CodeContracts-net_4_x.csproj">\r
+      <Project>{9BE8D62B-471D-4538-8287-691B4ECE3209}</Project>\r
+      <Name>Mono.CodeContracts-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/cil-stringreplacer/cil-stringreplacer-net_4_x.csproj b/mcs/tools/cil-stringreplacer/cil-stringreplacer-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fcac823
--- /dev/null
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{FD725431-CB26-466D-BD55-C739485A50C9}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>cil-stringreplacer</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="cil-stringreplacer.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/cil-strip/mono-cil-strip-net_4_x.csproj b/mcs/tools/cil-strip/mono-cil-strip-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7a24a4c
--- /dev/null
@@ -0,0 +1,400 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-cil-strip</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include=".\AssemblyStripper.cs" />\r
+    <Compile Include=".\cilstrip.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\BaseImageVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\CLIHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\CopyImageVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\DataDirectory.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\DebugHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\DebugStoreType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\DOSHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ExportTable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\IBinaryVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\IBinaryVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\IHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\Image.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ImageCharacteristics.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ImageFormatException.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ImageInitializer.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ImageReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ImageWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\Imports.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\MemoryBinaryWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\PEFileHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\PEOptionalHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceDataEntry.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceDirectoryEntry.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceDirectoryString.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceDirectoryTable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceNode.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\ResourceWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\RuntimeImage.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\RVA.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\Section.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\SectionCharacteristics.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\SectionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Binary\SubSystem.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\BaseCodeVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\CilWorker.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\Code.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\CodeReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\CodeWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\Document.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\DocumentHashAlgorithm.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\DocumentLanguage.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\DocumentLanguageVendor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\DocumentType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ExceptionHandler.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ExceptionHandlerCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ExceptionHandlerType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\FlowControl.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\GuidAttribute.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ICodeVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ICodeVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\Instruction.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\InstructionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\IScopeProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ISymbolReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ISymbolStoreFactory.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ISymbolWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\IVariableDefinitionProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\MethodBody.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\MethodDataSection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\MethodHeader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\OpCode.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\OpCodeNames.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\OpCodes.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\OpCodeType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\OperandType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\Scope.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\ScopeCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\SequencePoint.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\StackBehaviour.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\SymbolStoreHelper.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\VariableDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\VariableDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Cil\VariableReference.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Assembly.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\AssemblyOS.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\AssemblyProcessor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\AssemblyRef.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\AssemblyRefOS.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\AssemblyRefProcessor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\BaseMetadataVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\BlobHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ClassLayout.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\CodedIndex.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Constant.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\CultureUtils.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\CustomAttribute.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\DeclSecurity.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ElementType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Event.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\EventMap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\EventPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ExportedType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Field.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\FieldLayout.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\FieldMarshal.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\FieldPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\FieldRVA.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\File.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\GenericParam.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\GenericParamConstraint.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\GuidHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\IMetadataRow.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\IMetadataTable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\IMetadataVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\IMetadataVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ImplMap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\InterfaceImpl.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ManifestResource.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MemberRef.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataFormatException.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataInitializer.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataRoot.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataRowReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataRowWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataStream.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataStreamCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataTableReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataTableWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataToken.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MetadataWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Method.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MethodImpl.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MethodPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MethodSemantics.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\MethodSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Module.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ModuleRef.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\NestedClass.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Param.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\ParamPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Property.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\PropertyMap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\PropertyPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\RowCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\StandAloneSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\StringsHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TableCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TablesHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TokenType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TypeDef.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TypeRef.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\TypeSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\UserStringsHeap.cs" />\r
+    <Compile Include=".\Mono.Cecil.Metadata\Utilities.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Array.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\ArrayShape.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\BaseSignatureVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Class.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Constraint.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\CustomAttrib.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\CustomMod.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\FieldSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\FnPtr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\GenericArg.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\GenericInst.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\GenericInstSignature.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\InputOutputItem.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\ISignatureVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\ISignatureVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\LocalVarSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MarshalSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MethodDefSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MethodRefSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MethodSig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MethodSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\MVar.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Param.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\PropertySig.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Ptr.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\RetType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Signature.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\SignatureReader.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\SignatureWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\SigType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\SzArray.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\TypeSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\ValueType.cs" />\r
+    <Compile Include=".\Mono.Cecil.Signatures\Var.cs" />\r
+    <Compile Include=".\Mono.Cecil\AggressiveReflectionReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\ArrayDimension.cs" />\r
+    <Compile Include=".\Mono.Cecil\ArrayDimensionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\ArrayType.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyFactory.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyFlags.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyHashAlgorithm.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyInfo.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyKind.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyLinkedResource.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyNameDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyNameReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\AssemblyNameReferenceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\BaseAssemblyResolver.cs" />\r
+    <Compile Include=".\Mono.Cecil\BaseReflectionReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\BaseReflectionVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil\BaseStructureVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil\CallSite.cs" />\r
+    <Compile Include=".\Mono.Cecil\CompactFrameworkCompatibility.cs" />\r
+    <Compile Include=".\Mono.Cecil\Constants.cs" />\r
+    <Compile Include=".\Mono.Cecil\ConstraintCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\ConstructorCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\CustomAttribute.cs" />\r
+    <Compile Include=".\Mono.Cecil\CustomAttributeCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\DefaultAssemblyResolver.cs" />\r
+    <Compile Include=".\Mono.Cecil\DefaultImporter.cs" />\r
+    <Compile Include=".\Mono.Cecil\EmbeddedResource.cs" />\r
+    <Compile Include=".\Mono.Cecil\EventAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\EventDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\EventDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\EventReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\ExternTypeCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\FieldAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\FieldDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\FieldDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\FieldReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\FileAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\FunctionPointerType.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericArgumentCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericContext.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericInstanceMethod.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericInstanceType.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericParameter.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericParameterAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\GenericParameterCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\HashCodeProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil\IAnnotationProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil\IAssemblyResolver.cs" />\r
+    <Compile Include=".\Mono.Cecil\ICustomAttributeProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil\IDetailReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\IGenericInstance.cs" />\r
+    <Compile Include=".\Mono.Cecil\IGenericParameterProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil\IHasConstant.cs" />\r
+    <Compile Include=".\Mono.Cecil\IHasMarshalSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil\IHasSecurity.cs" />\r
+    <Compile Include=".\Mono.Cecil\IImporter.cs" />\r
+    <Compile Include=".\Mono.Cecil\IMemberDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\IMemberReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\IMetadataScope.cs" />\r
+    <Compile Include=".\Mono.Cecil\IMetadataTokenProvider.cs" />\r
+    <Compile Include=".\Mono.Cecil\IMethodSignature.cs" />\r
+    <Compile Include=".\Mono.Cecil\ImportContext.cs" />\r
+    <Compile Include=".\Mono.Cecil\InterfaceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\IReflectionStructureVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil\IReflectionStructureVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil\IReflectionVisitable.cs" />\r
+    <Compile Include=".\Mono.Cecil\IReflectionVisitor.cs" />\r
+    <Compile Include=".\Mono.Cecil\IRequireResolving.cs" />\r
+    <Compile Include=".\Mono.Cecil\LinkedResource.cs" />\r
+    <Compile Include=".\Mono.Cecil\ManifestResourceAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\MarshalSpec.cs" />\r
+    <Compile Include=".\Mono.Cecil\MemberReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\MemberReferenceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\MetadataResolver.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodCallingConvention.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodImplAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodReturnType.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodSemanticsAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\MethodSpecification.cs" />\r
+    <Compile Include=".\Mono.Cecil\Modifiers.cs" />\r
+    <Compile Include=".\Mono.Cecil\ModuleDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\ModuleDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\ModuleReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\ModuleReferenceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\NativeType.cs" />\r
+    <Compile Include=".\Mono.Cecil\NestedTypeCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\NullReferenceImporter.cs" />\r
+    <Compile Include=".\Mono.Cecil\OverrideCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\ParameterAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\ParameterDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\ParameterDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\ParameterReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\PinnedType.cs" />\r
+    <Compile Include=".\Mono.Cecil\PInvokeAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\PInvokeInfo.cs" />\r
+    <Compile Include=".\Mono.Cecil\PointerType.cs" />\r
+    <Compile Include=".\Mono.Cecil\PropertyAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\PropertyDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\PropertyDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\PropertyReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReferenceType.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReflectionController.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReflectionException.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReflectionHelper.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReflectionReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\ReflectionWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil\Resource.cs" />\r
+    <Compile Include=".\Mono.Cecil\ResourceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\SecurityAction.cs" />\r
+    <Compile Include=".\Mono.Cecil\SecurityDeclaration.cs" />\r
+    <Compile Include=".\Mono.Cecil\SecurityDeclarationCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\SecurityDeclarationReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\SentinelType.cs" />\r
+    <Compile Include=".\Mono.Cecil\StructureReader.cs" />\r
+    <Compile Include=".\Mono.Cecil\StructureWriter.cs" />\r
+    <Compile Include=".\Mono.Cecil\TableComparers.cs" />\r
+    <Compile Include=".\Mono.Cecil\TargetRuntime.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeAttributes.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeDefinition.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeDefinitionCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeReference.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeReferenceCollection.cs" />\r
+    <Compile Include=".\Mono.Cecil\TypeSpecification.cs" />\r
+    <Compile Include=".\Mono.Cecil\VariantType.cs" />\r
+    <Compile Include=".\Mono.Xml\SecurityParser.cs" />\r
+    <Compile Include=".\Mono.Xml\SmallXmlParser.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/commoncryptogenerator/commoncryptogenerator-net_4_x.csproj b/mcs/tools/commoncryptogenerator/commoncryptogenerator-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f33343c
--- /dev/null
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{12527E95-60D3-4A66-91C6-7F8031519299}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>commoncryptogenerator</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="CommonCryptorGenerator.cs" />\r
+    <Compile Include="CommonDigestGenerator.cs" />\r
+    <Compile Include="generator.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/compiler-tester/compiler-tester-net_4_x.csproj b/mcs/tools/compiler-tester/compiler-tester-net_4_x.csproj
new file mode 100644 (file)
index 0000000..22ebee6
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{93602011-38AA-46AC-8203-571D620A228C}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>compiler-tester</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolFile.cs" />\r
+    <Compile Include="..\..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolTable.cs" />\r
+    <Compile Include="compiler-tester.cs" />\r
+    <Compile Include="xmldocdiff.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/corcompare/mono-api-info-net_4_x.csproj b/mcs/tools/corcompare/mono-api-info-net_4_x.csproj
new file mode 100644 (file)
index 0000000..5fcf051
--- /dev/null
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{4391CB6E-F09B-4D13-BA34-547E15FA7847}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-api-info</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="AssemblyResolver.cs" />\r
+    <Compile Include="mono-api-info.cs" />\r
+    <Compile Include="Util.cs" />\r
+    <Compile Include="WellFormedXmlWriter.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 8b1ad945095c64d208ea0ce2d8626209b6c68709..55c2aeb4283b7e621624cbb808044cac3accf1ab 100644 (file)
@@ -1571,6 +1571,15 @@ namespace CorCompare
                        if (res != 0)
                                return res;
 
+                       if (ma.HasGenericParameters != mb.HasGenericParameters)
+                               return ma.HasGenericParameters ? -1 : 1;
+
+                       if (ma.HasGenericParameters && mb.HasGenericParameters) {
+                               res = ma.GenericParameters.Count - mb.GenericParameters.Count;
+                               if (res != 0)
+                                       return res;
+                       }
+
                        // operators can differ by only return type
                        return string.CompareOrdinal (ma.ReturnType.FullName, mb.ReturnType.FullName);
                }
diff --git a/mcs/tools/csharp/csharp-net_4_x.csproj b/mcs/tools/csharp/csharp-net_4_x.csproj
new file mode 100644 (file)
index 0000000..1da92c6
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>3021,1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>csharp</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>3021,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>3021,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\corlib\Mono\DataConverter.cs" />\r
+    <Compile Include="getline.cs" />\r
+    <Compile Include="repl.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CSharp/Mono.CSharp-net_4_x.csproj">\r
+      <Project>{BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}</Project>\r
+      <Name>Mono.CSharp-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Posix/Mono.Posix-net_4_x.csproj">\r
+      <Project>{66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}</Project>\r
+      <Name>Mono.Posix-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Management/Mono.Management-net_4_x.csproj">\r
+      <Project>{1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}</Project>\r
+      <Name>Mono.Management-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/culevel/culevel-net_4_x.csproj b/mcs/tools/culevel/culevel-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c28f239
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{ED867AC1-079C-4B5E-ADF9-E7722053B360}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>culevel</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="CompileUplevel.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/disco/disco-net_4_x.csproj b/mcs/tools/disco/disco-net_4_x.csproj
new file mode 100644 (file)
index 0000000..28c7350
--- /dev/null
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{49D19955-330A-4FF2-BE94-4AEAE6745EBE}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>disco</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="disco.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Web.Services/System.Web.Services-net_4_x.csproj">\r
+      <Project>{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}</Project>\r
+      <Name>System.Web.Services-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/dtd2rng/dtd2rng-net_4_x.csproj b/mcs/tools/dtd2rng/dtd2rng-net_4_x.csproj
new file mode 100644 (file)
index 0000000..4d15a18
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{60674A50-F2E0-4BC7-A917-8976821888ED}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>dtd2rng</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="dtd2rng.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj">\r
+      <Project>{FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}</Project>\r
+      <Name>Commons.Xml.Relaxng-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/dtd2xsd/dtd2xsd-net_4_x.csproj b/mcs/tools/dtd2xsd/dtd2xsd-net_4_x.csproj
new file mode 100644 (file)
index 0000000..01da80a
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D22ABC86-1275-431C-911C-D14EE2A20FD7}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>dtd2xsd</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="dtd2xsd.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/gacutil/gacutil-net_4_x.csproj b/mcs/tools/gacutil/gacutil-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fb1472e
--- /dev/null
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>gacutil</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\security\StrongNameManager.cs" />\r
+    <Compile Include="driver.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Security/Mono.Security-net_4_x.csproj">\r
+      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
+      <Name>Mono.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/genxs/genxs-net_4_x.csproj b/mcs/tools/genxs/genxs-net_4_x.csproj
new file mode 100644 (file)
index 0000000..508aee2
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>genxs</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="genxs.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/ictool/ictool-net_4_x.csproj b/mcs/tools/ictool/ictool-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7c3ce2b
--- /dev/null
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{92EBF79E-AB94-4543-B130-6FEE6D0B3526}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>ictool</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="depgraph.cs" />\r
+    <Compile Include="ictool.cs" />\r
+    <Compile Include="peer.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/ikdasm/ikdasm-net_4_x.csproj b/mcs/tools/ikdasm/ikdasm-net_4_x.csproj
new file mode 100644 (file)
index 0000000..f8aa6be
--- /dev/null
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{921F19B8-7276-446C-B096-A29AAAB83E12}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>ikdasm</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NO_SYMBOL_WRITER;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NO_SYMBOL_WRITER;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\external\ikdasm\CABlob.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\Disassembler.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\ExportedMethods.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\IL.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\Keywords.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\LineWriter.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\Program.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\TableDumper.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\Util.cs" />\r
+    <Compile Include="..\..\..\external\ikdasm\VTableFixups.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Emit\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\ITypeOwner.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\SymbolSupport.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Metadata\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Reader\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Writer\*.cs" />\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Security/System.Security-net_4_x.csproj">\r
+      <Project>{3ED36717-A9D1-4289-8949-9B7F39766DEB}</Project>\r
+      <Name>System.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/installutil/installutil-net_4_x.csproj b/mcs/tools/installutil/installutil-net_4_x.csproj
new file mode 100644 (file)
index 0000000..2dfe29a
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{503D43D5-65AF-401A-9D50-53B514724152}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>installutil</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="installutil.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Configuration.Install/System.Configuration.Install-net_4_x.csproj">\r
+      <Project>{B144ACD4-089D-4769-8605-583FBEDB5B7C}</Project>\r
+      <Name>System.Configuration.Install-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/installvst/installvst-net_4_x.csproj b/mcs/tools/installvst/installvst-net_4_x.csproj
new file mode 100644 (file)
index 0000000..01cd3e3
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DC8E3822-546F-4D5F-BEAF-61C9855FF50B}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>installvst</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="installvst.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/lc/lc-net_4_x.csproj b/mcs/tools/lc/lc-net_4_x.csproj
new file mode 100644 (file)
index 0000000..2c8b983
--- /dev/null
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{427F59C0-5770-4C73-83B0-F445303C26CB}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>lc</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="lc.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/linker-analyzer/linkeranalyzer-net_4_x.csproj b/mcs/tools/linker-analyzer/linkeranalyzer-net_4_x.csproj
new file mode 100644 (file)
index 0000000..c417ab0
--- /dev/null
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{D7789C48-C33A-4FE5-BD42-4DBAB2850796}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>linkeranalyzer</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="ConsoleDependencyGraph.cs" />\r
+    <Compile Include="LinkerAnalyzerCore\DependencyGraph.cs" />\r
+    <Compile Include="Main.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 6e07617be3ed6e8fcc86a9bfb68cb99571db7292..bc8fddc327d675bd2ce58402e644d0ee8cbde774 100644 (file)
                <type fullname="System.Runtime.Remoting.Messaging.CallContext">
                        <method name="SetCurrentCallContext" />
                </type>
-               <type fullname="System.Runtime.Remoting.Messaging.MonoMethodMessage" preserve="fields" />
+               <type fullname="System.Runtime.Remoting.Messaging.MonoMethodMessage" preserve="fields">
+                       <method name="InitMessage" />
+               </type>
                <type fullname="System.Runtime.Remoting.Proxies.RealProxy" preserve="fields">
                        <method name="PrivateInvoke" />
                        <method name="GetAppDomainTarget" />
                </type>
-               <type fullname="System.Runtime.Remoting.Proxies.TransparentProxy" preserve="fields" />
+               <type fullname="System.Runtime.Remoting.Proxies.TransparentProxy" preserve="fields">
+                       <method name="LoadRemoteFieldNew" />
+               </type>
                <type fullname="System.Runtime.Remoting.RemotingServices">
                        <method name="SerializeCallData" />
                        <method name="DeserializeCallData" />
diff --git a/mcs/tools/linker/monolinker-net_4_x.csproj b/mcs/tools/linker/monolinker-net_4_x.csproj
new file mode 100644 (file)
index 0000000..cfff038
--- /dev/null
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{FA920637-C202-4E75-AC0F-1A8DBD631DF1}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>monolinker</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include=".\Mono.Linker.Steps\BaseStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\BlacklistStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\CleanStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\IStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\LoadI18nAssemblies.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\LoadReferencesStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\MarkStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\OutputStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\RegenerateGuidStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\ResolveFromAssemblyStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\ResolveFromXApiStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\ResolveFromXmlStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\ResolveStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\SweepStep.cs" />\r
+    <Compile Include=".\Mono.Linker.Steps\TypeMapStep.cs" />\r
+    <Compile Include=".\Mono.Linker\Annotations.cs" />\r
+    <Compile Include=".\Mono.Linker\AssemblyAction.cs" />\r
+    <Compile Include=".\Mono.Linker\AssemblyInfo.cs" />\r
+    <Compile Include=".\Mono.Linker\AssemblyResolver.cs" />\r
+    <Compile Include=".\Mono.Linker\Driver.cs" />\r
+    <Compile Include=".\Mono.Linker\I18nAssemblies.cs" />\r
+    <Compile Include=".\Mono.Linker\IXApiVisitor.cs" />\r
+    <Compile Include=".\Mono.Linker\LinkContext.cs" />\r
+    <Compile Include=".\Mono.Linker\MethodAction.cs" />\r
+    <Compile Include=".\Mono.Linker\Pipeline.cs" />\r
+    <Compile Include=".\Mono.Linker\TypePreserve.cs" />\r
+    <Compile Include=".\Mono.Linker\XApiReader.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="Descriptors/mscorlib.xml">\r
+      <LogicalName>mscorlib.xml</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Descriptors/System.xml">\r
+      <LogicalName>System.xml</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Descriptors/System.Core.xml">\r
+      <LogicalName>System.Core.xml</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Descriptors/System.Drawing.xml">\r
+      <LogicalName>System.Drawing.xml</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Descriptors/System.Web.xml">\r
+      <LogicalName>System.Web.xml</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Descriptors/Mono.Posix.xml">\r
+      <LogicalName>Mono.Posix.xml</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/macpack/macpack-net_4_x.csproj b/mcs/tools/macpack/macpack-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7d18975
--- /dev/null
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>macpack</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="MacPack.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="LOADER">\r
+      <LogicalName>LOADER</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="PLIST">\r
+      <LogicalName>PLIST</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
index 92fc95c91f12e5a9cb6264dbda65c233aba2ab30..48b315986db977ce8296989159c35500806bc031 100644 (file)
@@ -6,17 +6,12 @@ LOCAL_MCS_FLAGS =
 LIB_REFS = System.Xml System
 PROGRAM = mconfig.exe
 
-BUILT_SOURCES=Mono.MonoConfig/consts.cs
-
-Mono.MonoConfig/consts.cs: Mono.MonoConfig/consts.cs.in
-       sed -e "s;@MONO_SYSCONFDIR@;$(sysconfdir);g" < $< > $@
-
 install-local: install-local-data
 
 install-local-data:
        $(MKINSTALLDIRS) $(DESTDIR)$(sysconfdir)/mono/mconfig/
        $(INSTALL_DATA) data/config.xml $(DESTDIR)$(sysconfdir)/mono/mconfig
 
-EXTRA_DISTFILES = TODO data/config.xml Mono.MonoConfig/consts.cs.in
+EXTRA_DISTFILES = TODO data/config.xml 
 
 include ../../build/executable.make
diff --git a/mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in b/mcs/tools/mconfig/Mono.MonoConfig/consts.cs.in
deleted file mode 100644 (file)
index 8b7cbbe..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-//
-// Authors:
-//   Marek Habersack (mhabersack@novell.com)
-//
-// (C) 2007 Novell, Inc
-//
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-using System;
-using System.IO;
-
-namespace Mono.MonoConfig
-{
-       public class Constants
-       {
-               public static readonly string GlobalConfigPath;
-
-               static Constants ()
-               {
-                       GlobalConfigPath = String.Format ("@MONO_SYSCONFDIR@{0}mono{0}mconfig{0}config.xml",
-                                                         Path.DirectorySeparatorChar);
-               }
-       }
-}
diff --git a/mcs/tools/mconfig/mconfig-net_4_x.csproj b/mcs/tools/mconfig/mconfig-net_4_x.csproj
new file mode 100644 (file)
index 0000000..b7d6094
--- /dev/null
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mconfig</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="mconfig.cs" />\r
+    <Compile Include="Mono.MonoConfig\Assembly\AssemblyInfo.cs" />\r
+    <Compile Include="Mono.MonoConfig\ConfigBlockBlock.cs" />\r
+    <Compile Include="Mono.MonoConfig\ConfigBlockNodeHandler.cs" />\r
+    <Compile Include="Mono.MonoConfig\Configuration.cs" />\r
+    <Compile Include="Mono.MonoConfig\DefaultConfigFileNodeHandler.cs" />\r
+    <Compile Include="Mono.MonoConfig\DefaultNodeHandler.cs" />\r
+    <Compile Include="Mono.MonoConfig\FeatureAction.cs" />\r
+    <Compile Include="Mono.MonoConfig\FeatureBlock.cs" />\r
+    <Compile Include="Mono.MonoConfig\FeatureNode.cs" />\r
+    <Compile Include="Mono.MonoConfig\FeatureNodeHandler.cs" />\r
+    <Compile Include="Mono.MonoConfig\FeatureTarget.cs" />\r
+    <Compile Include="Mono.MonoConfig\Helpers.cs" />\r
+    <Compile Include="Mono.MonoConfig\IConfigBlockContainer.cs" />\r
+    <Compile Include="Mono.MonoConfig\IDefaultConfigFileContainer.cs" />\r
+    <Compile Include="Mono.MonoConfig\IDefaultContainer.cs" />\r
+    <Compile Include="Mono.MonoConfig\IDocumentNodeHandler.cs" />\r
+    <Compile Include="Mono.MonoConfig\IFeatureGenerator.cs" />\r
+    <Compile Include="Mono.MonoConfig\IStorageConsumer.cs" />\r
+    <Compile Include="Mono.MonoConfig\Section.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 5887f739dbbfb43b1102445f635a313867e17be3..7fc9f0bc97b62be945c9724e047fbd6a871b3248 100644 (file)
@@ -270,7 +270,7 @@ namespace Mono.MonoConfig
        class MConfig
        {
                static string[] configPaths = {
-                       Constants.GlobalConfigPath,
+                       Path.GetFullPath (Path.Combine (Environment.CommandLine, "..", "..", "..","..", "etc", "mono", "mconfig", "config.xml")),
                        Path.Combine (ConfigPath, "config.xml"),
                        Path.Combine (".", "mconfig.xml"),
                        null
index e0f6fe81956c8d31dcc2fda6fd1dabbec4db5658..cbe723d27175429e8d405da624e479f10cbb65d4 100644 (file)
@@ -1,4 +1,4 @@
-thisdir = tools/mdb-rebase
+thisdir = tools/mdbrebase
 SUBDIRS =
 include ../../build/rules.make
 
diff --git a/mcs/tools/mdbrebase/mdbrebase-net_4_x.csproj b/mcs/tools/mdbrebase/mdbrebase-net_4_x.csproj
new file mode 100644 (file)
index 0000000..31f5f47
--- /dev/null
@@ -0,0 +1,92 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{01B02BFF-0DC3-4265-BFAA-EDE405950796}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mdbrebase</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include=".\mdbrebase.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj">\r
+      <Project>{88177C4B-894F-485D-B95A-44199C06BE9F}</Project>\r
+      <Name>Mono.CompilerServices.SymbolWriter-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index efb76cbf9e0dea90c21deeae424c932d5d57c504..c319f54ecfcd67efb50bdd224b2bcdbfbb9df41c 100644 (file)
@@ -183,12 +183,12 @@ check-monodocer-dropns-multi: $(PROGRAM)
        $(MAKE) Test/DocTest-DropNS-unified-multitest.dll
 
        # mdoc update for both classic and unified
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic -multiassembly
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework -multiassembly
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic 
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework 
        
        # now run it again to verify idempotency
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic -multiassembly
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework -multiassembly
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic 
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework 
        
        diff --exclude=.svn -rup Test/en.expected-dropns-multi Test/en.actual
 
@@ -205,8 +205,8 @@ check-monodocer-dropns-multi-withexisting: $(PROGRAM)
        $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual Test/DocTest-DropNS-unified.dll --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework 
        
        # mdoc update for both classic and unified
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic -multiassembly
-       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework -multiassembly
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-CLASSIC) --api-style=classic 
+       $(MONO) $(PROGRAM) update --exceptions=all -o Test/en.actual $(MULTI-UNIFIED) --api-style=unified --dropns Test/DocTest-DropNS-unified.dll=MyFramework --dropns Test/DocTest-DropNS-unified-multitest.dll=MyFramework 
        
        diff --exclude=.svn -rup Test/en.expected-dropns-multi-withexisting Test/en.actual
 
index a8f1ccc50290aeeeb70422e0aec4a93274f6528b..dc94c3a50b827a931eeae57f6e891f0428fef047 100644 (file)
@@ -135,7 +135,7 @@ class MDocUpdater : MDocCommand
        
        string apistyle = string.Empty;
        bool isClassicRun;
-       bool multiassembly;
+       
        bool delete;
        bool show_exceptions;
        bool no_assembly_versions, ignore_missing_types;
@@ -194,7 +194,14 @@ class MDocUpdater : MDocCommand
        {
                return !string.IsNullOrWhiteSpace (droppedNamespace);
        }
-
+       
+       /// <summary>Logic flag to signify that we should list assemblies at the method level, since there are multiple
+       /// assemblies for a given type/method.</summary>
+       public bool IsMultiAssembly {
+               get { 
+                       return apistyle == "classic" || apistyle == "unified";
+               }
+       }
        
        static List<string> droppedAssemblies = new List<string>();
 
@@ -281,12 +288,9 @@ class MDocUpdater : MDocCommand
                        { "preserve",
                                "Do not delete members that don't exist in the assembly, but rather mark them as preserved.",
                                v => PreserveTag = "true" },
-                       { "multiassembly",
-                               "Allow types to be in multiple assemblies.",
-                               v => multiassembly = true },
                        { "api-style=",
                                "Denotes the apistyle. Currently, only `classic` and `unified` are supported. `classic` set of assemblies should be run first, immediately followed by 'unified' assemblies with the `dropns` parameter.",
-                               v => apistyle = v.ToLowerInvariant ()},
+                               v => { apistyle = v.ToLowerInvariant (); }},
                };
                var assemblies = Parse (p, args, "update", 
                                "[OPTIONS]+ ASSEMBLIES",
@@ -787,7 +791,7 @@ class MDocUpdater : MDocCommand
        private void AddIndexAssembly (AssemblyDefinition assembly, XmlElement parent)
        {
                XmlElement index_assembly = null;
-               if (multiassembly) 
+               if (IsMultiAssembly) 
                        index_assembly = (XmlElement)parent.SelectSingleNode ("Assembly[@Name='"+ assembly.Name.Name +"']");
                
                if (index_assembly == null) 
@@ -867,7 +871,7 @@ class MDocUpdater : MDocCommand
                
                XmlElement index_types = WriteElement(index.DocumentElement, "Types");
                XmlElement index_assemblies = WriteElement(index.DocumentElement, "Assemblies");
-               if (!multiassembly) 
+               if (!IsMultiAssembly) 
                        index_assemblies.RemoveAll ();
 
 
@@ -1765,7 +1769,7 @@ class MDocUpdater : MDocCommand
                WriteElementText(me, "MemberType", GetMemberType(mi));
 
                if (!no_assembly_versions) {
-                       if (!multiassembly)
+                       if (!IsMultiAssembly)
                                UpdateAssemblyVersions (me, mi, true);
                        else {
                                var node = AddAssemblyNameToNode (me, mi.Module);
@@ -2013,7 +2017,10 @@ class MDocUpdater : MDocCommand
                member.AppendChild (link);
                AddTargets (em, info);
 
-               extensionMethods.Add (em);
+               var sig = em.SelectSingleNode ("Member/MemberSignature[@Language='C#']/@Value");
+               if (!IsMultiAssembly || (IsMultiAssembly && sig != null && !extensionMethods.Any (ex => ex.SelectSingleNode ("Member/MemberSignature[@Language='C#']/@Value").Value == sig.Value))) {
+                       extensionMethods.Add (em);
+               }
        }
 
        private static void RemoveExcept (XmlNode node, string[] except)
@@ -2404,7 +2411,7 @@ class MDocUpdater : MDocCommand
        
        private bool UpdateAssemblyVersions(XmlElement root, AssemblyDefinition assembly, string[] assemblyVersions, bool add)
        {
-               if (multiassembly)
+               if (IsMultiAssembly)
                        return false;
                        
                XmlElement av = (XmlElement) root.SelectSingleNode ("AssemblyVersions");
index 303c58e8882b0a65ea59086460b6763f8e6ede12..b9cbce549bf5c6f2c2d614cea5c67465bbba1022 100644 (file)
@@ -21,6 +21,9 @@ namespace MyFramework.MyNamespace {
                public string WillDeleteInV2Classic {get;set;}
                #endif
        }
+       public static class MyClassExtensions {
+               public static bool AnExtension (this MyClass value) { return false; }
+       }
 
        #if DELETETEST 
        public class TypeOnlyInClassic {}
index b4fcc9ea01b867f443912233f6fffcf06d8e53b1..a11dcb9c2c870c8b3c73c2bf2e195a6065100b37 100644 (file)
@@ -22,6 +22,9 @@ namespace MyNamespace {
                #endif
        }
 
+       public static class MyClassExtensions {
+               public static bool AnExtension (this MyClass value) { return false; }
+       }
        #if DELETETEST
        public struct nint {
 
index 77388be8815e6d2dd07ddcf53b72fdc006852272..317b6a61848439d00608f98cb1a02be2166c40c7 100644 (file)
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance float32 Hello(int32 value) cil managed" />
       <MemberType>Method</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string MyProperty" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
@@ -81,6 +87,7 @@
       <MemberSignature Language="ILAsm" Value=".property instance float64 OnlyInClassic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance char OnlyInUnified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/MyFramework.MyNamespace/MyClassExtensions.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/MyFramework.MyNamespace/MyClassExtensions.xml
new file mode 100644 (file)
index 0000000..a11fafe
--- /dev/null
@@ -0,0 +1,47 @@
+<Type Name="MyClassExtensions" FullName="MyFramework.MyNamespace.MyClassExtensions">
+  <TypeSignature Language="C#" Value="public static class MyClassExtensions" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit MyClassExtensions extends System.Object" />
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.Object</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>To be added.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="AnExtension">
+      <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+      </Parameters>
+      <Docs>
+        <param name="value">To be added.</param>
+        <summary>To be added.</summary>
+        <returns>To be added.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index edacc723f54ac08993c55589023916a935d329c6..330a3895e2d6f820093a061b0a24f8bf32323fb5 100644 (file)
@@ -1,5 +1,15 @@
 <Overview>
   <Assemblies>
+    <Assembly Name="DocTest-DropNS-classic" Version="0.0.0.0">
+      <Attributes>
+        <Attribute>
+          <AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
+        </Attribute>
+        <Attribute>
+          <AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
+        </Attribute>
+      </Attributes>
+    </Assembly>
     <Assembly Name="DocTest-DropNS-unified" Version="0.0.0.0">
       <Attributes>
         <Attribute>
   <Types>
     <Namespace Name="MyFramework.MyNamespace">
       <Type Name="MyClass" Kind="Class" />
+      <Type Name="MyClassExtensions" Kind="Class" />
     </Namespace>
   </Types>
   <Title>DocTest-DropNS-classic</Title>
+  <ExtensionMethods>
+    <ExtensionMethod>
+      <Targets>
+        <Target Type="T:MyFramework.MyNamespace.MyClass" />
+      </Targets>
+      <Member MemberName="AnExtension">
+        <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+        <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+        <MemberType>ExtensionMethod</MemberType>
+        <ReturnValue>
+          <ReturnType>System.Boolean</ReturnType>
+        </ReturnValue>
+        <Parameters>
+          <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+        </Parameters>
+        <Docs>
+          <param name="value">To be added.</param>
+          <summary>To be added.</summary>
+        </Docs>
+        <Link Type="MyFramework.MyNamespace.MyClassExtensions" Member="M:MyFramework.MyNamespace.MyClassExtensions.AnExtension(MyFramework.MyNamespace.MyClass)" />
+      </Member>
+    </ExtensionMethod>
+  </ExtensionMethods>
 </Overview>
index 77388be8815e6d2dd07ddcf53b72fdc006852272..317b6a61848439d00608f98cb1a02be2166c40c7 100644 (file)
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance float32 Hello(int32 value) cil managed" />
       <MemberType>Method</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string MyProperty" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
@@ -81,6 +87,7 @@
       <MemberSignature Language="ILAsm" Value=".property instance float64 OnlyInClassic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance char OnlyInUnified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/MyFramework.MyNamespace/MyClassExtensions.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/MyFramework.MyNamespace/MyClassExtensions.xml
new file mode 100644 (file)
index 0000000..a11fafe
--- /dev/null
@@ -0,0 +1,47 @@
+<Type Name="MyClassExtensions" FullName="MyFramework.MyNamespace.MyClassExtensions">
+  <TypeSignature Language="C#" Value="public static class MyClassExtensions" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit MyClassExtensions extends System.Object" />
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.Object</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>To be added.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="AnExtension">
+      <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+      </Parameters>
+      <Docs>
+        <param name="value">To be added.</param>
+        <summary>To be added.</summary>
+        <returns>To be added.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index a920ce2f499be95356c1c871a34f1ad37f34f4ce..0e02038a020f0effe409983a68c7745ef17c4236 100644 (file)
     <remarks>To be added.</remarks>
   </Docs>
   <Members>
-    <Member MemberName=".ctor">
+    <Member MemberName=".ctor" apistyle="classic">
       <MemberSignature Language="C#" Value="public MyOtherClass ();" />
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
-      <AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-secondary</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
         <remarks>To be added.</remarks>
       </Docs>
     </Member>
-    <Member MemberName="Hello">
+    <Member MemberName="Hello" apistyle="classic">
       <MemberSignature Language="C#" Value="public float Hello (int value);" />
       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance float32 Hello(int32 value) cil managed" />
       <MemberType>Method</MemberType>
-      <AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-secondary</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
         <remarks>To be added.</remarks>
       </Docs>
     </Member>
-    <Member MemberName="MyProperty">
+    <Member MemberName="MyProperty" apistyle="classic">
       <MemberSignature Language="C#" Value="public string MyProperty { get; set; }" />
       <MemberSignature Language="ILAsm" Value=".property instance string MyProperty" />
       <MemberType>Property</MemberType>
-      <AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-secondary</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
index d0fb593627f3766e62c6fd348e6b96841a4b892d..3620aa8d0aa62ee29fff4c171fa457b5bdd67289 100644 (file)
@@ -1,5 +1,15 @@
 <Overview>
   <Assemblies>
+    <Assembly Name="DocTest-DropNS-classic" Version="0.0.0.0">
+      <Attributes>
+        <Attribute>
+          <AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
+        </Attribute>
+        <Attribute>
+          <AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
+        </Attribute>
+      </Attributes>
+    </Assembly>
     <Assembly Name="DocTest-DropNS-unified" Version="0.0.0.0">
       <Attributes>
         <Attribute>
   <Types>
     <Namespace Name="MyFramework.MyNamespace">
       <Type Name="MyClass" Kind="Class" />
+      <Type Name="MyClassExtensions" Kind="Class" />
     </Namespace>
     <Namespace Name="MyFramework.MyOtherNamespace">
       <Type Name="MyOtherClass" Kind="Class" />
     </Namespace>
   </Types>
   <Title>Untitled</Title>
+  <ExtensionMethods>
+    <ExtensionMethod>
+      <Targets>
+        <Target Type="T:MyFramework.MyNamespace.MyClass" />
+      </Targets>
+      <Member MemberName="AnExtension">
+        <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+        <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+        <MemberType>ExtensionMethod</MemberType>
+        <ReturnValue>
+          <ReturnType>System.Boolean</ReturnType>
+        </ReturnValue>
+        <Parameters>
+          <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+        </Parameters>
+        <Docs>
+          <param name="value">To be added.</param>
+          <summary>To be added.</summary>
+        </Docs>
+        <Link Type="MyFramework.MyNamespace.MyClassExtensions" Member="M:MyFramework.MyNamespace.MyClassExtensions.AnExtension(MyFramework.MyNamespace.MyClass)" />
+      </Member>
+    </ExtensionMethod>
+  </ExtensionMethods>
 </Overview>
index 1ff3447bab2cbf2ea7bed3a8c06f5337bffa4352..13e6364a07b37b639c9c073dd7eac088da3594c4 100644 (file)
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
       <MemberSignature Language="ILAsm" Value=".property instance string AddedInV2" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
@@ -58,6 +62,7 @@
       <MemberSignature Language="ILAsm" Value=".property instance string AddedInV2Classic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
@@ -74,6 +79,7 @@
       <MemberSignature Language="ILAsm" Value=".property instance string AddedInV2Unified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance float32 Hello(int32 value) cil managed" />
       <MemberType>Method</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string InBoth" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string InBothClassic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance valuetype MyFramework.MyNamespace.nint InBothMagicType" apistyle="unified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string InBothUnified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance string MyProperty" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance float64 OnlyInClassic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
       <MemberSignature Language="ILAsm" Value=".property instance char OnlyInUnified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/MyClassExtensions.xml b/mcs/tools/mdoc/Test/en.expected-dropns-delete/MyFramework.MyNamespace/MyClassExtensions.xml
new file mode 100644 (file)
index 0000000..3edb15b
--- /dev/null
@@ -0,0 +1,47 @@
+<Type Name="MyClassExtensions" FullName="MyFramework.MyNamespace.MyClassExtensions">
+  <TypeSignature Language="C#" Value="public static class MyClassExtensions" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit MyClassExtensions extends System.Object" />
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.Object</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>To be added.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="AnExtension">
+      <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+      </Parameters>
+      <Docs>
+        <param name="value">To be added.</param>
+        <summary>To be added.</summary>
+        <returns>To be added.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index 7e6adf24eb3cabbef8a1b7267c9d36e811c6147e..442a2d7c543c3c068fbf6ee29852c6975e0c668e 100644 (file)
     <remarks>To be added.</remarks>
   </Docs>
   <Members>
-    <Member MemberName=".ctor">
+    <Member MemberName=".ctor" apistyle="classic">
       <MemberSignature Language="C#" Value="public TypeOnlyInClassic ();" />
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
-      <AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
index ac5394fb6d1a2335bb5aba753001a5ba8b08c94a..07c03dcff7698b5fa71ecbf634f2603e513aacc4 100644 (file)
@@ -1,6 +1,10 @@
 <Type Name="WillDelete" FullName="MyFramework.MyNamespace.WillDelete">
   <TypeSignature Language="C#" Value="public class WillDelete" />
   <TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit WillDelete extends System.Object" />
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
   <Base>
     <BaseTypeName>System.Object</BaseTypeName>
   </Base>
@@ -15,6 +19,7 @@
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <Parameters />
@@ -28,6 +33,7 @@
       <MemberSignature Language="ILAsm" Value=".property instance string Name" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-deletetest</AssemblyName>
         <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <ReturnValue>
index 0988450d779f6a8d4525b843aa6582e611a9c05a..02836fe971389cfac70a04298c3a339d704f6d1b 100644 (file)
@@ -1,5 +1,15 @@
 <Overview>
   <Assemblies>
+    <Assembly Name="DocTest-DropNS-classic-deletetest" Version="0.0.0.0">
+      <Attributes>
+        <Attribute>
+          <AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
+        </Attribute>
+        <Attribute>
+          <AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
+        </Attribute>
+      </Attributes>
+    </Assembly>
     <Assembly Name="DocTest-DropNS-unified-deletetest" Version="0.0.0.0">
       <Attributes>
         <Attribute>
   <Types>
     <Namespace Name="MyFramework.MyNamespace">
       <Type Name="MyClass" Kind="Class" />
+      <Type Name="MyClassExtensions" Kind="Class" />
       <Type Name="nint" Kind="Structure" />
     </Namespace>
   </Types>
   <Title>DocTest-DropNS-classic-deletetest</Title>
+  <ExtensionMethods>
+    <ExtensionMethod>
+      <Targets>
+        <Target Type="T:MyFramework.MyNamespace.MyClass" />
+      </Targets>
+      <Member MemberName="AnExtension">
+        <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+        <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+        <MemberType>ExtensionMethod</MemberType>
+        <ReturnValue>
+          <ReturnType>System.Boolean</ReturnType>
+        </ReturnValue>
+        <Parameters>
+          <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+        </Parameters>
+        <Docs>
+          <param name="value">To be added.</param>
+          <summary>To be added.</summary>
+        </Docs>
+        <Link Type="MyFramework.MyNamespace.MyClassExtensions" Member="M:MyFramework.MyNamespace.MyClassExtensions.AnExtension(MyFramework.MyNamespace.MyClass)" />
+      </Member>
+    </ExtensionMethod>
+  </ExtensionMethods>
 </Overview>
index e73f7d55ff31f2a434f8c8296f6ae479c3237a7e..a88b428a94eb9e51ac7924e677e6caa81369ea9c 100644 (file)
       <MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
       <MemberType>Constructor</MemberType>
       <AssemblyInfo apistyle="classic">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="classic">
         <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
       <MemberSignature Language="ILAsm" Value=".method public hidebysig instance float32 Hello(int32 value) cil managed" />
       <MemberType>Method</MemberType>
       <AssemblyInfo apistyle="classic">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="classic">
         <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
       <MemberSignature Language="ILAsm" Value=".property instance string MyProperty" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="classic">
         <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
       <MemberSignature Language="ILAsm" Value=".property instance float64 OnlyInClassic" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="classic">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="classic">
         <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
       <MemberSignature Language="ILAsm" Value=".property instance char OnlyInUnified" />
       <MemberType>Property</MemberType>
       <AssemblyInfo apistyle="unified">
-        <AssemblyVersion>0.0.0.0</AssemblyVersion>
         <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
       </AssemblyInfo>
       <AssemblyInfo apistyle="unified">
         <AssemblyName>DocTest-DropNS-unified-multitest</AssemblyName>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/MyFramework.MyNamespace/MyClassExtensions.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/MyFramework.MyNamespace/MyClassExtensions.xml
new file mode 100644 (file)
index 0000000..7a504e2
--- /dev/null
@@ -0,0 +1,63 @@
+<Type Name="MyClassExtensions" FullName="MyFramework.MyNamespace.MyClassExtensions">
+  <TypeSignature Language="C#" Value="public static class MyClassExtensions" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit MyClassExtensions extends System.Object" />
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified-multitest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.Object</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>To be added.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="AnExtension">
+      <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-multitest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+      </Parameters>
+      <Docs>
+        <param name="value">To be added.</param>
+        <summary>To be added.</summary>
+        <returns>To be added.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index 6b5124ac28c21ac75ee214219b4f4c569e84a21b..734bd3da1a49741887d2e6155e3fe8926033e35b 100644 (file)
   <Types>
     <Namespace Name="MyFramework.MyNamespace">
       <Type Name="MyClass" Kind="Class" />
+      <Type Name="MyClassExtensions" Kind="Class" />
       <Type Name="OnlyInMulti" Kind="Class" />
     </Namespace>
   </Types>
   <Title>DocTest-DropNS-classic</Title>
+  <ExtensionMethods>
+    <ExtensionMethod>
+      <Targets>
+        <Target Type="T:MyFramework.MyNamespace.MyClass" />
+      </Targets>
+      <Member MemberName="AnExtension">
+        <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+        <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+        <MemberType>ExtensionMethod</MemberType>
+        <ReturnValue>
+          <ReturnType>System.Boolean</ReturnType>
+        </ReturnValue>
+        <Parameters>
+          <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+        </Parameters>
+        <Docs>
+          <param name="value">To be added.</param>
+          <summary>To be added.</summary>
+        </Docs>
+        <Link Type="MyFramework.MyNamespace.MyClassExtensions" Member="M:MyFramework.MyNamespace.MyClassExtensions.AnExtension(MyFramework.MyNamespace.MyClass)" />
+      </Member>
+    </ExtensionMethod>
+  </ExtensionMethods>
 </Overview>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi/MyFramework.MyNamespace/MyClassExtensions.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi/MyFramework.MyNamespace/MyClassExtensions.xml
new file mode 100644 (file)
index 0000000..c3e0ca7
--- /dev/null
@@ -0,0 +1,63 @@
+<Type Name="MyClassExtensions" FullName="MyFramework.MyNamespace.MyClassExtensions">
+  <TypeSignature Language="C#" Value="public static class MyClassExtensions" />
+  <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit MyClassExtensions extends System.Object" />
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="classic">
+    <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <AssemblyInfo apistyle="unified">
+    <AssemblyName>DocTest-DropNS-unified-multitest</AssemblyName>
+    <AssemblyVersion>0.0.0.0</AssemblyVersion>
+  </AssemblyInfo>
+  <Base>
+    <BaseTypeName>System.Object</BaseTypeName>
+  </Base>
+  <Interfaces />
+  <Docs>
+    <summary>To be added.</summary>
+    <remarks>To be added.</remarks>
+  </Docs>
+  <Members>
+    <Member MemberName="AnExtension">
+      <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+      <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+      <MemberType>Method</MemberType>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="classic">
+        <AssemblyName>DocTest-DropNS-classic-multitest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <AssemblyInfo apistyle="unified">
+        <AssemblyName>DocTest-DropNS-unified-multitest</AssemblyName>
+        <AssemblyVersion>0.0.0.0</AssemblyVersion>
+      </AssemblyInfo>
+      <ReturnValue>
+        <ReturnType>System.Boolean</ReturnType>
+      </ReturnValue>
+      <Parameters>
+        <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+      </Parameters>
+      <Docs>
+        <param name="value">To be added.</param>
+        <summary>To be added.</summary>
+        <returns>To be added.</returns>
+        <remarks>To be added.</remarks>
+      </Docs>
+    </Member>
+  </Members>
+</Type>
index 3baf401ce5b0908025e2a0ba9a5f654267f5100f..b8345d02166fae8199680b18a2cd85dcf9b4f4c4 100644 (file)
   <Types>
     <Namespace Name="MyFramework.MyNamespace">
       <Type Name="MyClass" Kind="Class" />
+      <Type Name="MyClassExtensions" Kind="Class" />
       <Type Name="OnlyInMulti" Kind="Class" />
     </Namespace>
   </Types>
   <Title>Untitled</Title>
+  <ExtensionMethods>
+    <ExtensionMethod>
+      <Targets>
+        <Target Type="T:MyFramework.MyNamespace.MyClass" />
+      </Targets>
+      <Member MemberName="AnExtension">
+        <MemberSignature Language="C#" Value="public static bool AnExtension (this MyFramework.MyNamespace.MyClass value);" />
+        <MemberSignature Language="ILAsm" Value=".method public static hidebysig bool AnExtension(class MyFramework.MyNamespace.MyClass value) cil managed" />
+        <MemberType>ExtensionMethod</MemberType>
+        <ReturnValue>
+          <ReturnType>System.Boolean</ReturnType>
+        </ReturnValue>
+        <Parameters>
+          <Parameter Name="value" Type="MyFramework.MyNamespace.MyClass" RefType="this" />
+        </Parameters>
+        <Docs>
+          <param name="value">To be added.</param>
+          <summary>To be added.</summary>
+        </Docs>
+        <Link Type="MyFramework.MyNamespace.MyClassExtensions" Member="M:MyFramework.MyNamespace.MyClassExtensions.AnExtension(MyFramework.MyNamespace.MyClass)" />
+      </Member>
+    </ExtensionMethod>
+  </ExtensionMethods>
 </Overview>
diff --git a/mcs/tools/mdoc/mdoc-net_4_x.csproj b/mcs/tools/mdoc/mdoc-net_4_x.csproj
new file mode 100644 (file)
index 0000000..17a06f0
--- /dev/null
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{15871CCA-A500-4AE3-89D7-1F3429614403}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mdoc</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="Mono.Documentation\assembler.cs" />\r
+    <Compile Include="Mono.Documentation\dump.cs" />\r
+    <Compile Include="Mono.Documentation\ecmadoc.cs" />\r
+    <Compile Include="Mono.Documentation\exceptions.cs" />\r
+    <Compile Include="Mono.Documentation\index.cs" />\r
+    <Compile Include="Mono.Documentation\mdoc.cs" />\r
+    <Compile Include="Mono.Documentation\MdocFile.cs" />\r
+    <Compile Include="Mono.Documentation\monodocer.cs" />\r
+    <Compile Include="Mono.Documentation\monodocs2html.cs" />\r
+    <Compile Include="Mono.Documentation\monodocs2slashdoc.cs" />\r
+    <Compile Include="Mono.Documentation\msitomsx.cs" />\r
+    <Compile Include="Mono.Documentation\normalize.cs" />\r
+    <Compile Include="Mono.Documentation\preserver.cs" />\r
+    <Compile Include="Mono.Documentation\validate.cs" />\r
+    <Compile Include="Mono.Documentation\webdoc.cs" />\r
+    <Compile Include="Mono.Documentation\XhtmlWriter.cs" />\r
+    <Compile Include="Mono.Rocks\ObjectRocks.cs" />\r
+    <Compile Include="Mono.Rocks\StreamRocks.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/monodoc/monodoc-net_4_x.csproj">\r
+      <Project>{0248869F-8D3B-4AB2-B976-B2A9AF1319A9}</Project>\r
+      <Name>monodoc-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/ICSharpCode.SharpZipLib/ICSharpCode.SharpZipLib-net_4_x.csproj">\r
+      <Project>{4903F98F-B4C9-467A-8FBA-39E7F91D9327}</Project>\r
+      <Name>ICSharpCode.SharpZipLib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Xml.Linq/System.Xml.Linq-net_4_x.csproj">\r
+      <Project>{526286D5-38D9-4579-B001-471440D57752}</Project>\r
+      <Name>System.Xml.Linq-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Web/System.Web-net_4_x.csproj">\r
+      <Project>{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}</Project>\r
+      <Name>System.Web-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="../../class/monodoc/Resources/mdoc-html-format.xsl">\r
+      <LogicalName>mdoc-html-format.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../class/monodoc/Resources/mdoc-html-utils.xsl">\r
+      <LogicalName>mdoc-html-utils.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../class/monodoc/Resources/mdoc-sections-css.xsl">\r
+      <LogicalName>mdoc-sections-css.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../class/monodoc/Resources/mono-ecma-css.xsl">\r
+      <LogicalName>mono-ecma-css.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Resources/defaulttemplate.xsl">\r
+      <LogicalName>defaulttemplate.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Resources/monodoc-ecma.xsd">\r
+      <LogicalName>monodoc-ecma.xsd</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Resources/msitomsx.xsl">\r
+      <LogicalName>msitomsx.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Resources/overview.xsl">\r
+      <LogicalName>overview.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="Resources/stylesheet.xsl">\r
+      <LogicalName>stylesheet.xsl</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mkbundle/mkbundle-net_4_x.csproj b/mcs/tools/mkbundle/mkbundle-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d8ea386
--- /dev/null
@@ -0,0 +1,113 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mkbundle</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>STATIC;NO_SYMBOL_WRITER;NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\external\ikvm\reflect\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Emit\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\ITypeOwner.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\SymbolSupport.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Metadata\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Reader\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Writer\*.cs" />\r
+    <Compile Include="mkbundle.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="template.c">\r
+      <LogicalName>template.c</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="template_z.c">\r
+      <LogicalName>template_z.c</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="template_main.c">\r
+      <LogicalName>template_main.c</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
index 6395e90ff41b3499337d075e126a72376dd6f35e..2382d37d43d3d04657bb2bcc31759a12bbca39c4 100755 (executable)
@@ -10,8 +10,8 @@
 // (C) 2016 Xamarin Inc
 //
 // Missing features:
-// * Implement --cross, --local-targets, --list-targets, --no-auto-fetch
-// * concatenate target with package to form native binary
+// * Add support for packaging native libraries, extracting at runtime and setting the library path.
+// * Implement --list-targets lists all the available remote targets
 //
 using System;
 using System.Diagnostics;
@@ -24,6 +24,7 @@ using System.Text;
 using IKVM.Reflection;
 using System.Linq;
 using System.Diagnostics;
+using System.Net;
 using System.Threading.Tasks;
 
 class MakeBundle {
@@ -46,9 +47,12 @@ class MakeBundle {
        static bool skip_scan;
        static string ctor_func;
        static bool quiet;
+       static string cross_target = null;
+       static string fetch_target = null;
        static bool custom_mode = true;
        static string embedded_options = null;
        static string runtime = null;
+       static string target_server = "https://download.mono-project.com/runtimes/raw/";
        
        static int Main (string [] args)
        {
@@ -76,7 +80,44 @@ class MakeBundle {
                        case "-c":
                                compile_only = true;
                                break;
+
+                       case "--local-targets":
+                               CommandLocalTargets ();
+                               return 0;
+
+                       case "--cross":
+                               if (i+1 == top){
+                                       Help (); 
+                                       return 1;
+                               }
+                               custom_mode = false;
+                               autodeps = true;
+                               cross_target = args [++i];
+                               break;
+
+                       case "--fetch-target":
+                               if (i+1 == top){
+                                       Help (); 
+                                       return 1;
+                               }
+                               fetch_target = args [++i];
+                               break;
+
+                       case "--list-targets":
+                               var wc = new WebClient ();
+                               var s = wc.DownloadString (new Uri (target_server + "target-list.txt"));
+                               Console.WriteLine ("Cross-compilation targets available:\n" + s);
+                               
+                               return 0;
                                
+                       case "--target-server":
+                               if (i+1 == top){
+                                       Help (); 
+                                       return 1;
+                               }
+                               target_server = args [++i];
+                               break;
+
                        case "-o": 
                                if (i+1 == top){
                                        Help (); 
@@ -230,14 +271,68 @@ class MakeBundle {
                        if (!QueueAssembly (files, file))
                                return 1;
 
+               if (fetch_target != null){
+                       var truntime = Path.Combine (targets_dir, fetch_target, "mono");
+                       Directory.CreateDirectory (Path.GetDirectoryName (truntime));
+                       var wc = new WebClient ();
+                       var uri = new Uri ($"{target_server}{fetch_target}");
+                       try {
+                               wc.DownloadFile (uri, truntime);
+                       } catch {
+                               Console.Error.WriteLine ($"Failure to download the specified runtime from {uri}");
+                               File.Delete (truntime);
+                               return 1;
+                       }
+                       return 0;
+               }
+               
                if (custom_mode)
                        GenerateBundles (files);
-               else
+               else {
+                       if (cross_target == "default")
+                               runtime = null;
+                       else {
+                               string truntime;
+                               if (runtime != null)
+                                       truntime = runtime;
+                               else {
+                                       if (cross_target == null){
+                                               Console.Error.WriteLine ("you should specify either a --runtime or a --cross compilation target");
+                                               Environment.Exit (1);
+                                       }
+                                       truntime = Path.Combine (targets_dir, cross_target, "mono");
+                               }
+                               if (!File.Exists (truntime)){
+                                       Console.Error.WriteLine ($"The runtime for the {cross_target} does not exist, use --fetch-target {cross_target} to download first");
+                                       return 1;
+                               }
+                       }                               
                        GeneratePackage (files);
+               }
                
                return 0;
        }
 
+       static string targets_dir = Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.Personal), ".mono", "targets");
+       
+       static void CommandLocalTargets ()
+       {
+               string [] targets;
+
+               Console.WriteLine ("Available targets:");
+               Console.WriteLine ("\tdefault\t- Current System Mono");
+               try {
+                       targets = Directory.GetDirectories (targets_dir);
+               } catch {
+                       return;
+               }
+               foreach (var target in targets){
+                       var p = Path.Combine (target, "mono");
+                       if (File.Exists (p))
+                               Console.WriteLine ("\t{0}", Path.GetFileName (target));
+               }
+       }
+
        static void WriteSymbol (StreamWriter sw, string name, long size)
        {
                switch (style){
@@ -934,10 +1029,10 @@ void          mono_register_config_for_assembly (const char* assembly_name, cons
                                   "--simple   Simple mode does not require a C toolchain and can cross compile\n" + 
                                   "    --cross TARGET      Generates a binary for the given TARGET\n"+
                                   "    --local-targets     Lists locally available targets\n" +
-                                  "    --list-targets [SERVER] Lists available targets on the remote server\n" +
-                                  "    --no-auto-fetch     Prevents the tool from auto-fetching a TARGET\n" +
+                                  "    --list-targets      Lists available targets on the remote server\n" +
                                   "    --options OPTIONS   Embed the specified Mono command line options on target\n" +
-                                  "    --runtime RUNTIME   Manually specifies the Mono runtime to use\n" + 
+                                  "    --runtime RUNTIME   Manually specifies the Mono runtime to use\n" +
+                                  "    --target-server URL Specified a server to download targets from, default is " + target_server + "\n" +
                                   "\n" +
                                   "--custom   Builds a custom launcher, options for --custom\n" +
                                   "    -c                  Produce stub only, do not compile\n" +
diff --git a/mcs/tools/mod/mod-net_4_x.csproj b/mcs/tools/mod/mod-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ad6b3cd
--- /dev/null
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{135520B4-D83D-4726-B043-3B4FBF306F94}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mod</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="mod.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/monodoc/monodoc-net_4_x.csproj">\r
+      <Project>{0248869F-8D3B-4AB2-B976-B2A9AF1319A9}</Project>\r
+      <Name>monodoc-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-api-html/mono-api-html-net_4_x.csproj b/mcs/tools/mono-api-html/mono-api-html-net_4_x.csproj
new file mode 100644 (file)
index 0000000..904e60c
--- /dev/null
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{76A06DA3-F3B5-498C-9D75-72F325BB6656}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-api-html</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="ApiChange.cs" />\r
+    <Compile Include="ApiDiff.cs" />\r
+    <Compile Include="AssemblyComparer.cs" />\r
+    <Compile Include="ClassComparer.cs" />\r
+    <Compile Include="Comparer.cs" />\r
+    <Compile Include="ConstructorComparer.cs" />\r
+    <Compile Include="EventComparer.cs" />\r
+    <Compile Include="FieldComparer.cs" />\r
+    <Compile Include="Helpers.cs" />\r
+    <Compile Include="InterfaceComparer.cs" />\r
+    <Compile Include="MemberComparer.cs" />\r
+    <Compile Include="MethodComparer.cs" />\r
+    <Compile Include="NamespaceComparer.cs" />\r
+    <Compile Include="PropertyComparer.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Xml.Linq/System.Xml.Linq-net_4_x.csproj">\r
+      <Project>{526286D5-38D9-4579-B001-471440D57752}</Project>\r
+      <Name>System.Xml.Linq-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-configuration-crypto/cli/mono-configuration-crypto-net_4_x.csproj b/mcs/tools/mono-configuration-crypto/cli/mono-configuration-crypto-net_4_x.csproj
new file mode 100644 (file)
index 0000000..30aa8d2
--- /dev/null
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{462A56EE-6371-46F8-9B83-18AFDEEF4BAD}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-configuration-crypto</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="config.cs" />\r
+    <Compile Include="main.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/Mono.Security/Mono.Security-net_4_x.csproj">\r
+      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
+      <Name>Mono.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.Security/System.Security-net_4_x.csproj">\r
+      <Project>{3ED36717-A9D1-4289-8949-9B7F39766DEB}</Project>\r
+      <Name>System.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../lib/Mono.Configuration.Crypto-net_4_x.csproj">\r
+      <Project>{19AC03F2-0198-4512-BCFD-7CBB3129F9D2}</Project>\r
+      <Name>Mono.Configuration.Crypto-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 6b4fbb5ee4a7f194a21c80d58fba73795c76553d..10eedb27c2f8396acf2da1fda687510bc6671847 100644 (file)
@@ -51,7 +51,6 @@ using System.Runtime.InteropServices;
 
 [assembly: NeutralResourcesLanguage ("en-US")]
 [assembly: AssemblyDelaySign (true)]
-[assembly: AssemblyKeyFile ("../../mono.pub")]
 
 [assembly: AllowPartiallyTrustedCallers]
 [assembly: DefaultDependency (LoadHint.Always)]
index d06b52ae235c72d16a707948b4af176374ccfb57..e67462548cc43cf7ce22d251cf2f179fa3199be1 100644 (file)
@@ -6,5 +6,5 @@ LOCAL_MCS_FLAGS =
 LIB_REFS = System Mono.Security System.Security System.Configuration System.Xml
 LIBRARY = Mono.Configuration.Crypto.dll
 LIBRARY_INSTALL_DIR = $(mono_libdir)/mono/mono-configuration-crypto/$(FRAMEWORK_VERSION)
-
+NO_SIGN_ASSEMBLY = yes
 include ../../../build/library.make
diff --git a/mcs/tools/mono-configuration-crypto/lib/Mono.Configuration.Crypto-net_4_x.csproj b/mcs/tools/mono-configuration-crypto/lib/Mono.Configuration.Crypto-net_4_x.csproj
new file mode 100644 (file)
index 0000000..53a205e
--- /dev/null
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{19AC03F2-0198-4512-BCFD-7CBB3129F9D2}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Mono.Configuration.Crypto</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\build\common\Consts.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r
+    <Compile Include="Mono.Configuration.Crypto\ConfigSection.cs" />\r
+    <Compile Include="Mono.Configuration.Crypto\Key.cs" />\r
+    <Compile Include="Mono.Configuration.Crypto\KeyContainer.cs" />\r
+    <Compile Include="Mono.Configuration.Crypto\KeyContainerCollection.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/Mono.Security/Mono.Security-net_4_x.csproj">\r
+      <Project>{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}</Project>\r
+      <Name>Mono.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.Security/System.Security-net_4_x.csproj">\r
+      <Project>{3ED36717-A9D1-4289-8949-9B7F39766DEB}</Project>\r
+      <Name>System.Security-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-service/mono-service-net_4_x.csproj b/mcs/tools/mono-service/mono-service-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0969190
--- /dev/null
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{612FEFDB-12FA-4441-9094-236B05D645A4}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>\r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-service</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="mono-service.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.ServiceProcess/System.ServiceProcess-net_4_x.csproj">\r
+      <Project>{CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}</Project>\r
+      <Name>System.ServiceProcess-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Posix/Mono.Posix-net_4_x.csproj">\r
+      <Project>{66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}</Project>\r
+      <Name>Mono.Posix-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-shlib-cop/mono-shlib-cop-net_4_x.csproj b/mcs/tools/mono-shlib-cop/mono-shlib-cop-net_4_x.csproj
new file mode 100644 (file)
index 0000000..7c9c214
--- /dev/null
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{7E28A830-EB3C-48E3-B0FB-6DDAAF698115}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-shlib-cop</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="mono-shlib-cop.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Posix/Mono.Posix-net_4_x.csproj">\r
+      <Project>{66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}</Project>\r
+      <Name>Mono.Posix-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-symbolicate/mono-symbolicate-net_4_x.csproj b/mcs/tools/mono-symbolicate/mono-symbolicate-net_4_x.csproj
new file mode 100644 (file)
index 0000000..b147f48
--- /dev/null
@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-symbolicate</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NO_AUTHENTICODE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="LocationProvider.cs" />\r
+    <Compile Include="SeqPointInfo.cs" />\r
+    <Compile Include="symbolicate.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil.Mdb/Mono.Cecil.Mdb-net_4_x.csproj">\r
+      <Project>{CF14D34A-F69B-47FB-A99C-D25C77198F30}</Project>\r
+      <Name>Mono.Cecil.Mdb-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-xmltool/mono-xmltool-net_4_x.csproj b/mcs/tools/mono-xmltool/mono-xmltool-net_4_x.csproj
new file mode 100644 (file)
index 0000000..6aa1cc3
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{25CAFA51-9FE0-43AD-A642-B3D59BE2B377}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>mono-xmltool</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="xmltool.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj">\r
+      <Project>{FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}</Project>\r
+      <Name>Commons.Xml.Relaxng-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/mono-xsd/xsd-net_4_x.csproj b/mcs/tools/mono-xsd/xsd-net_4_x.csproj
new file mode 100644 (file)
index 0000000..d5f5836
--- /dev/null
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>xsd</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="NewMonoXSD.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/monop/monop-net_4_x.csproj b/mcs/tools/monop/monop-net_4_x.csproj
new file mode 100644 (file)
index 0000000..35ca4e7
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{78B1A752-432B-4764-9E63-E95CCB23554F}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>monop</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NO_AUTHENTICODE;STATIC;NO_SYMBOL_WRITER;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NO_AUTHENTICODE;STATIC;NO_SYMBOL_WRITER;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\..\external\ikvm\reflect\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Emit\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\ITypeOwner.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Impl\SymbolSupport.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Metadata\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Reader\*.cs" />\r
+    <Compile Include="..\..\..\external\ikvm\reflect\Writer\*.cs" />\r
+    <Compile Include="..\..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolFile.cs" />\r
+    <Compile Include="..\..\class\Mono.CompilerServices.SymbolWriter\MonoSymbolTable.cs" />\r
+    <Compile Include="..\..\class\Mono.CompilerServices.SymbolWriter\SourceMethodBuilder.cs" />\r
+    <Compile Include="..\..\class\Mono.Security\Mono.Security.Cryptography\CryptoConvert.cs" />\r
+    <Compile Include="monop.cs" />\r
+    <Compile Include="options.cs" />\r
+    <Compile Include="outline.cs" />\r
+    <Compile Include="TypeSorter.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/nunitreport/nunitreport-net_4_x.csproj b/mcs/tools/nunitreport/nunitreport-net_4_x.csproj
new file mode 100644 (file)
index 0000000..4228feb
--- /dev/null
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DAE62F67-EE88-4192-8CB8-314E9E955BE9}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>nunitreport</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="FailedTest.cs" />\r
+    <Compile Include="NUnitReport.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/pdb2mdb/pdb2mdb-net_4_x.csproj b/mcs/tools/pdb2mdb/pdb2mdb-net_4_x.csproj
new file mode 100644 (file)
index 0000000..94a03d6
--- /dev/null
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>pdb2mdb</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="BitAccess.cs" />\r
+    <Compile Include="BitSet.cs" />\r
+    <Compile Include="CvInfo.cs" />\r
+    <Compile Include="DataStream.cs" />\r
+    <Compile Include="DbiDbgHdr.cs" />\r
+    <Compile Include="DbiHeader.cs" />\r
+    <Compile Include="DbiModuleInfo.cs" />\r
+    <Compile Include="DbiSecCon.cs" />\r
+    <Compile Include="Driver.cs" />\r
+    <Compile Include="Interfaces.cs" />\r
+    <Compile Include="IntHashTable.cs" />\r
+    <Compile Include="MsfDirectory.cs" />\r
+    <Compile Include="PdbConstant.cs" />\r
+    <Compile Include="PdbDebugException.cs" />\r
+    <Compile Include="PdbException.cs" />\r
+    <Compile Include="PdbFile.cs" />\r
+    <Compile Include="PdbFileHeader.cs" />\r
+    <Compile Include="PdbFunction.cs" />\r
+    <Compile Include="PdbLine.cs" />\r
+    <Compile Include="PdbLines.cs" />\r
+    <Compile Include="PdbReader.cs" />\r
+    <Compile Include="PdbScope.cs" />\r
+    <Compile Include="PdbSlot.cs" />\r
+    <Compile Include="PdbSource.cs" />\r
+    <Compile Include="PdbWriter.cs" />\r
+    <Compile Include="SourceLocationProvider.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj">\r
+      <Project>{88177C4B-894F-485D-B95A-44199C06BE9F}</Project>\r
+      <Name>Mono.CompilerServices.SymbolWriter-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/resgen/resgen-net_4_x.csproj b/mcs/tools/resgen/resgen-net_4_x.csproj
new file mode 100644 (file)
index 0000000..fef287a
--- /dev/null
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>resgen</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699,1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\build\common\Consts.cs" />\r
+    <Compile Include="..\..\build\common\Locale.cs" />\r
+    <Compile Include="Assembly\AssemblyInfo.cs" />\r
+    <Compile Include="monoresgen.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index 442ee9e0f530ba877d96e514c0e9ca0a6a6faee9..3e87dc84baba4750065db35eed9199ebb6f40c94 100644 (file)
@@ -44,7 +44,8 @@ namespace Mono.Tools {
 
        class MozRoots {
 
-               private const string defaultUrl = "http://mxr.mozilla.org/seamonkey/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1";
+               // this URL is recommended by https://bugzilla.mozilla.org/show_bug.cgi?id=1279952#c8 and is also used as basis for curl's https://curl.haxx.se/ca/cacert.pem bundle
+               private const string defaultUrl = "https://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt";
 
                static string url;
                static string inputFile;
@@ -125,6 +126,14 @@ namespace Mono.Tools {
 
                static int Process ()
                {
+                       ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => {
+                               if (sslPolicyErrors != System.Net.Security.SslPolicyErrors.None)
+                                       Console.WriteLine ("WARNING: Downloading the trusted certificate list couldn't be done securely (error: {0}), continuing anyway. If you're using mozroots to bootstrap Mono's trust store on a clean system this might be OK, otherwise it could indicate a network intrusion. Please ensure you're using a trusted network or move to cert-sync.", sslPolicyErrors);
+
+                               // this is very bad, but on a clean system without an existing trust store we don't really have a better option
+                               return true;
+                       };
+
                        X509CertificateCollection roots = DecodeCollection ();
                        if (roots == null) {
                                return 1;
@@ -280,6 +289,8 @@ namespace Mono.Tools {
                static void Header ()
                {
                        Console.WriteLine (new AssemblyInfo ().ToString ());
+                       Console.WriteLine ("WARNING: mozroots is deprecated, please move to cert-sync instead.");
+                       Console.WriteLine ();
                }
 
                static void Help ()
diff --git a/mcs/tools/sgen/sgen-net_4_x.csproj b/mcs/tools/sgen/sgen-net_4_x.csproj
new file mode 100644 (file)
index 0000000..90679a7
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8A516908-7CA0-40A7-86DD-0BEE1F4496C6}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>sgen</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="sgen.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/soapsuds/soapsuds-net_4_x.csproj b/mcs/tools/soapsuds/soapsuds-net_4_x.csproj
new file mode 100644 (file)
index 0000000..117a928
--- /dev/null
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{84ABC688-04BE-4F0B-9FD0-0332437C435F}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>soapsuds</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="soapsuds.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Runtime.Remoting/System.Runtime.Remoting-net_4_x.csproj">\r
+      <Project>{F19F77AE-1A81-4676-BAB8-6C1DA243A961}</Project>\r
+      <Name>System.Runtime.Remoting-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/sqlmetal/sqlmetal-net_4_x.csproj b/mcs/tools/sqlmetal/sqlmetal-net_4_x.csproj
new file mode 100644 (file)
index 0000000..048153e
--- /dev/null
@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{71A04260-D8F6-4E97-898D-5F3D5A2F3D94}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>sqlmetal</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+    <PropertyGroup>\r
+    <SignAssembly>true</SignAssembly>\r
+  </PropertyGroup>\r
+  <PropertyGroup>\r
+    <AssemblyOriginatorKeyFile>../../class/System.Data.Linq/src/DbMetal/../DbLinq.snk</AssemblyOriginatorKeyFile>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;MONO_STRICT;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>MONO_STRICT;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbLinq.ProductInfo.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\AbstractParameters.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Configuration\ProvidersSection.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\AttributeDefinition.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\CodeDomGenerator.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\CodeWriter.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\EntityInterface\IImplementation.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\EntityInterface\Implementation\IModifiedImplementation.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\EntityInterface\Implementation\INotifyPropertyChangedImplementation.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\EntityInterface\Implementation\INotifyPropertyChangingImplementation.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\EntityInterface\Implementation\InterfaceImplementation.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\GenerationContext.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\ICodeGenerator.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CodeGenerator.Class.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CodeGenerator.Context.Ctor.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CodeGenerator.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CodeGenerator.Procedure.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CSCodeGenerator.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\CodeTextGenerator\CSCodeWriter.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\Processor.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\Implementation\SchemaLoaderFactory.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\IProcessor.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\ISchemaLoaderFactory.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\ParameterDefinition.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Generator\SpecificationDefinition.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Language\EnglishWords.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Language\FrenchWords.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Language\GermanWords.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Mono\Options.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Parameters.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Program.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Properties\Settings.Designer.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Reference.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Schema\DbmlRename.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Schema\DbmlRenameLoader.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Schema\NameAliasesLoader.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Schema\TableAlias.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Utility\EnvironmentExtension.cs" />\r
+    <Compile Include="..\..\class\System.Data.Linq\src\DbMetal\Utility\VariablesExtension.cs" />\r
+    <Compile Include="AssemblyInfo.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Data.Linq/System.Data.Linq-net_4_x.csproj">\r
+      <Project>{E6EE9E9A-42BA-4202-8813-FCF40E9061BF}</Project>\r
+      <Name>System.Data.Linq-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <EmbeddedResource Include="../../class/System.Data.Linq/src/DbMetal/Language/EnglishWords.txt">\r
+      <LogicalName>DbMetal.Language.EnglishWords.txt</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../class/System.Data.Linq/src/DbMetal/Language/FrenchWords.txt">\r
+      <LogicalName>DbMetal.Language.FrenchWords.txt</LogicalName>\r
+    </EmbeddedResource>\r
+    <EmbeddedResource Include="../../class/System.Data.Linq/src/DbMetal/Language/GermanWords.txt">\r
+      <LogicalName>DbMetal.Language.GermanWords.txt</LogicalName>\r
+    </EmbeddedResource>\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/sqlsharp/sqlsharp-net_4_x.csproj b/mcs/tools/sqlsharp/sqlsharp-net_4_x.csproj
new file mode 100644 (file)
index 0000000..81e6823
--- /dev/null
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{DCCC3618-803B-4492-A968-010E2C0851E8}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>sqlsharp</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="SqlSharpCli.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Data/System.Data-net_4_x.csproj">\r
+      <Project>{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}</Project>\r
+      <Name>System.Data-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/svcutil/svcutil-net_4_x.csproj b/mcs/tools/svcutil/svcutil-net_4_x.csproj
new file mode 100644 (file)
index 0000000..ad7320b
--- /dev/null
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>svcutil</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="..\..\class\Mono.Options\Mono.Options\Options.cs" />\r
+    <Compile Include="CommandLineOptions.cs" />\r
+    <Compile Include="Driver.cs" />\r
+    <Compile Include="MoonlightChannelBaseExtension.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj">\r
+      <Project>{D845AD9D-3CCB-49CB-9543-028678E94938}</Project>\r
+      <Name>System.Runtime.Serialization-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.ServiceModel/System.ServiceModel-net_4_x.csproj">\r
+      <Project>{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}</Project>\r
+      <Name>System.ServiceModel-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Web.Services/System.Web.Services-net_4_x.csproj">\r
+      <Project>{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}</Project>\r
+      <Name>System.Web.Services-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Configuration/System.Configuration-net_4_x.csproj">\r
+      <Project>{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}</Project>\r
+      <Name>System.Configuration-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/tuner/Mono.Tuner-net_4_x.csproj b/mcs/tools/tuner/Mono.Tuner-net_4_x.csproj
new file mode 100644 (file)
index 0000000..0afcefa
--- /dev/null
@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{8CCE7044-3466-4599-B09E-9F8E0C2F4614}</ProjectGuid>\r
+    <OutputType>Library</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>Mono.Tuner</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="Mono.Tuner\AdjustVisibility.cs" />\r
+    <Compile Include="Mono.Tuner\CheckVisibility.cs" />\r
+    <Compile Include="Mono.Tuner\FilterAttributes.cs" />\r
+    <Compile Include="Mono.Tuner\InjectSecurityAttributes.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightA11yApiMarker.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightA11yAssemblyStep.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightA11yDescriptorGenerator.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightA11yProcessor.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightA11yUsageInspectionStep.cs" />\r
+    <Compile Include="Mono.Tuner\MoonlightAssemblyStep.cs" />\r
+    <Compile Include="Mono.Tuner\PrintStatus.cs" />\r
+    <Compile Include="Mono.Tuner\RemoveSerialization.cs" />\r
+    <Compile Include="Mono.Tuner\TunerAnnotations.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../linker/monolinker-net_4_x.csproj">\r
+      <Project>{FA920637-C202-4E75-AC0F-1A8DBD631DF1}</Project>\r
+      <Name>monolinker-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Core/System.Core-net_4_x.csproj">\r
+      <Project>{359142A1-D80F-401E-AA64-7167C9317649}</Project>\r
+      <Name>System.Core-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/Mono.Cecil/Mono.Cecil-net_4_x.csproj">\r
+      <Project>{2C0D558F-0B38-4691-967E-A910A1B995C1}</Project>\r
+      <Name>Mono.Cecil-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
diff --git a/mcs/tools/wsdl/wsdl-net_4_x.csproj b/mcs/tools/wsdl/wsdl-net_4_x.csproj
new file mode 100644 (file)
index 0000000..72659db
--- /dev/null
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <ProductVersion>9.0.30729</ProductVersion>\r
+    <SchemaVersion>2.0</SchemaVersion>\r
+    <ProjectGuid>{69D00FEC-59AA-43A0-90AD-87F400B8613C}</ProjectGuid>\r
+    <OutputType>Exe</OutputType>\r
+    <NoWarn>1699</NoWarn>\r
+    <OutputPath>./../../class/lib/net_4_x</OutputPath>\r
+    <IntermediateOutputPath>obj-net_4_x</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
+    <NoStdLib>True</NoStdLib>\r
+    \r
+    <NoConfig>True</NoConfig>\r
+    \r
+    <AppDesignerFolder>Properties</AppDesignerFolder>\r
+    <RootNamespace>\r
+    </RootNamespace>\r
+    <AssemblyName>wsdl</AssemblyName>\r
+    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>\r
+    <FileAlignment>512</FileAlignment>\r
+  </PropertyGroup>\r
+  \r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>full</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>false</Optimize>\r
+    <DefineConstants>TRACE;NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">\r
+    <DebugType>pdbonly</DebugType>\r
+    <NoWarn>1699</NoWarn>\r
+    <Optimize>true</Optimize>\r
+    <DefineConstants>NET_4_0;NET_4_5;NET_4_6;MONO;DISABLE_CAS_USE</DefineConstants>\r
+    <ErrorReport>prompt</ErrorReport>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <!-- Set AddAdditionalExplicitAssemblyReferences to false, otherwise if targetting .NET4.0, \r
+  Microsoft.NETFramework.props will force a dependency on the assembly System.Core. This\r
+  is a problem to compile the Mono mscorlib.dll -->\r
+  <PropertyGroup>\r
+    <AddAdditionalExplicitAssemblyReferences>false</AddAdditionalExplicitAssemblyReferences>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />\r
+  <ItemGroup>\r
+    <Compile Include="MonoWSDL2.cs" />\r
+    <Compile Include="SampleGenerator.cs" />\r  </ItemGroup>\r
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. \r
+       Other similar extension points exist, see Microsoft.Common.targets.\r
+  <Target Name="BeforeBuild">\r
+  </Target>\r
+  <Target Name="AfterBuild">\r
+  </Target>\r
+  -->\r
+  <PropertyGroup>\r
+    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PreBuildEvent>\r
+    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PreBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
+
+    </PostBuildEvent>\r
+    <PostBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">\r
+\r
+    </PostBuildEvent>\r
+  </PropertyGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="../../class/corlib/corlib-net_4_x.csproj">\r
+      <Project>{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}</Project>\r
+      <Name>corlib-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.XML/System.Xml-net_4_x.csproj">\r
+      <Project>{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}</Project>\r
+      <Name>System.Xml-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System.Web.Services/System.Web.Services-net_4_x.csproj">\r
+      <Project>{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}</Project>\r
+      <Name>System.Web.Services-net_4_x</Name>\r
+    </ProjectReference>\r
+    <ProjectReference Include="../../class/System/System-net_4_x.csproj">\r
+      <Project>{2762E921-91A8-4C87-91E9-BA628013F753}</Project>\r
+      <Name>System-net_4_x</Name>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="Properties\" />\r
+  </ItemGroup>\r
+</Project>\r
+
index f9d5ca86615b98d6dadce36fe88ce46dbd7f43cd..bea93366ec988a3bffd8a9cc9d7ed18049147b22 100644 (file)
                        Text="OutDir property must end with a slash."/>
        </Target>
 
-       <Target Name="PrepareForBuild">
+       <PropertyGroup>
+               <PrepareForBuildDependsOn>AssignLinkMetadata</PrepareForBuildDependsOn>
+       </PropertyGroup>
+       <Target Name="PrepareForBuild" DependsOnTargets="$(PrepareForBuildDependsOn)">
                <Message Importance="High" Text="Configuration: $(Configuration) Platform: $(Platform)"/>
 
                <!-- Look for app.config, if $(AppConfig) is specified, then use that. Else look in
                />
        </Target>
 
+       <Target Name="AssignLinkMetadata">
+           <AssignLinkMetadata Items="@(EmbeddedResource)" Condition="'@(EmbeddedResource)' != '' and '%(EmbeddedResource.DefiningProjectFullPath)' != '$(MSBuildProjectFullPath)'">
+             <Output TaskParameter="OutputItems" ItemName="_EmbeddedResourceWithLinkAssigned" />
+           </AssignLinkMetadata>
+
+           <ItemGroup>
+               <EmbeddedResource Remove="@(_EmbeddedResourceWithLinkAssigned)" />
+               <EmbeddedResource Include="@(_EmbeddedResourceWithLinkAssigned)" />
+               <_EmbeddedResourceWithLinkAssigned Remove="@(_EmbeddedResourceWithLinkAssigned)" />
+           </ItemGroup>
+       </Target>
+
        <PropertyGroup>
                <GetFrameworkPathsDependsOn />
        </PropertyGroup>
index 192b8dabad308835480287a1f379517897fac766..54d9caab7776019ecd1d560fa414a52bb97c7f2f 100644 (file)
@@ -1,6 +1,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
        <UsingTask TaskName="Microsoft.Build.Tasks.AL"                  AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        <UsingTask TaskName="Microsoft.Build.Tasks.AssignTargetPath"    AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+       <UsingTask TaskName="Microsoft.Build.Tasks.AssignLinkMetadata"  AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        <UsingTask TaskName="Microsoft.Build.Tasks.AssignCulture"       AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        <UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration"  AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
        <UsingTask TaskName="Microsoft.Build.Tasks.CallTarget"          AssemblyName="Microsoft.Build.Tasks.Core, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
index 26d73ce31c49214d27052cc77e2f929f8b436829..78c84a153f403a1e7c532304e0e663b664568c65 100644 (file)
@@ -83,32 +83,9 @@ typedef enum
   AMD64_REX_W = 8  /* Opeartion is 64-bits instead of 32 (default) or 16 (with 0x66 prefix) */
 } AMD64_REX_Bits;
 
-#if defined(__default_codegen__)
-
 #define amd64_codegen_pre(inst)
 #define amd64_codegen_post(inst)
 
-#elif defined(__native_client_codegen__)
-
-#define amd64_codegen_pre(inst) guint8* _codegen_start = (inst); amd64_nacl_instruction_pre();
-#define amd64_codegen_post(inst) (amd64_nacl_instruction_post(&_codegen_start, &(inst)), _codegen_start);
-
-/* Because of rex prefixes, etc, call sequences are not constant size.  */
-/* These pre- and post-sequence hooks remedy this by aligning the call  */
-/* sequence after we emit it, since we will know the exact size then.   */
-#define amd64_call_sequence_pre(inst) guint8* _code_start = (inst);
-#define amd64_call_sequence_post(inst) \
-  (mono_nacl_align_call(&_code_start, &(inst)), _code_start);
-
-/* Native client can load/store using one of the following registers     */
-/* as a base: rip, r15, rbp, rsp.  Any other base register needs to have */
-/* its upper 32 bits cleared and reference memory using r15 as the base. */
-#define amd64_is_valid_nacl_base(reg) \
-  ((reg) == AMD64_RIP || (reg) == AMD64_R15 || \
-   (reg) == AMD64_RBP || (reg) == AMD64_RSP)
-
-#endif /*__native_client_codegen__*/
-
 #ifdef TARGET_WIN32
 #define AMD64_ARG_REG1 AMD64_RCX
 #define AMD64_ARG_REG2 AMD64_RDX
@@ -130,16 +107,6 @@ typedef enum
 
 #define AMD64_CALLEE_SAVED_REGS ((1<<AMD64_RDI) | (1<<AMD64_RSI) | (1<<AMD64_RBX) | (1<<AMD64_R12) | (1<<AMD64_R13) | (1<<AMD64_R14) | (1<<AMD64_R15) | (1<<AMD64_RBP))
 #define AMD64_IS_CALLEE_SAVED_REG(reg) (AMD64_CALLEE_SAVED_REGS & (1 << (reg)))
-#elif defined(__native_client_codegen__)
-/* AMD64 Native Client code may not write R15 */
-#define AMD64_CALLEE_REGS ((1<<AMD64_RAX) | (1<<AMD64_RCX) | (1<<AMD64_RDX) | (1<<AMD64_RSI) | (1<<AMD64_RDI) | (1<<AMD64_R8) | (1<<AMD64_R9) | (1<<AMD64_R10))
-#define AMD64_IS_CALLEE_REG(reg)  (AMD64_CALLEE_REGS & (1 << (reg)))
-
-#define AMD64_ARGUMENT_REGS ((1<<AMD64_RDI) | (1<<AMD64_RSI) | (1<<AMD64_RDX) | (1<<AMD64_RCX) | (1<<AMD64_R8) | (1<<AMD64_R9))
-#define AMD64_IS_ARGUMENT_REG(reg) (AMD64_ARGUMENT_REGS & (1 << (reg)))
-
-#define AMD64_CALLEE_SAVED_REGS ((1<<AMD64_RBX) | (1<<AMD64_R12) | (1<<AMD64_R13) | (1<<AMD64_R14) | (1<<AMD64_RBP))
-#define AMD64_IS_CALLEE_SAVED_REG(reg) (AMD64_CALLEE_SAVED_REGS & (1 << (reg)))
 #else
 #define AMD64_CALLEE_REGS ((1<<AMD64_RAX) | (1<<AMD64_RCX) | (1<<AMD64_RDX) | (1<<AMD64_RSI) | (1<<AMD64_RDI) | (1<<AMD64_R8) | (1<<AMD64_R9) | (1<<AMD64_R10))
 #define AMD64_IS_CALLEE_REG(reg)  (AMD64_CALLEE_REGS & (1 << (reg)))
@@ -152,17 +119,6 @@ typedef enum
 #endif
 
 #define AMD64_REX(bits) ((unsigned char)(0x40 | (bits)))
-#if defined(__default_codegen__)
-#define amd64_emit_rex(inst, width, reg_modrm, reg_index, reg_rm_base_opcode) do \
-       { \
-               unsigned char _amd64_rex_bits = \
-                       (((width) > 4) ? AMD64_REX_W : 0) | \
-                       (((reg_modrm) > 7) ? AMD64_REX_R : 0) | \
-                       (((reg_index) > 7) ? AMD64_REX_X : 0) | \
-                       (((reg_rm_base_opcode) > 7) ? AMD64_REX_B : 0); \
-               if ((_amd64_rex_bits != 0) || (((width) == 1))) *(inst)++ = AMD64_REX(_amd64_rex_bits); \
-       } while (0)
-#elif defined(__native_client_codegen__)
 #define amd64_emit_rex(inst, width, reg_modrm, reg_index, reg_rm_base_opcode) do \
        { \
                unsigned char _amd64_rex_bits = \
@@ -170,10 +126,8 @@ typedef enum
                        (((reg_modrm) > 7) ? AMD64_REX_R : 0) | \
                        (((reg_index) > 7) ? AMD64_REX_X : 0) | \
                        (((reg_rm_base_opcode) > 7) ? AMD64_REX_B : 0); \
-               amd64_nacl_tag_rex((inst)); \
                if ((_amd64_rex_bits != 0) || (((width) == 1))) *(inst)++ = AMD64_REX(_amd64_rex_bits); \
        } while (0)
-#endif
 
 typedef union {
        guint64 val;
@@ -264,8 +218,6 @@ typedef union {
                amd64_codegen_post(inst); \
        } while (0)
 
-#if defined(__default_codegen__)
-
 #define amd64_alu_reg_imm_size(inst,opc,reg,imm,size) \
        amd64_alu_reg_imm_size_body((inst), (opc), (reg), (imm), (size))
 
@@ -275,43 +227,6 @@ typedef union {
 #define amd64_test_reg_imm_size(inst, reg, imm, size) \
                amd64_test_reg_imm_size_body(inst, reg, imm, size)
 
-#elif defined(__native_client_codegen__)
-/* NaCl modules may not directly update RSP or RBP other than direct copies */
-/* between them. Instead the lower 4 bytes are updated and then added to R15 */
-#define amd64_is_nacl_stack_reg(reg) (((reg) == AMD64_RSP) || ((reg) == AMD64_RBP))
-
-#define amd64_alu_reg_imm_size(inst,opc,reg,imm,size)  \
-       do{ \
-               amd64_codegen_pre(inst);                \
-               if (amd64_is_nacl_stack_reg(reg)) { \
-                       if (((opc) != X86_ADD) && ((opc) != X86_SUB)) \
-                               g_assert_not_reached(); \
-                       amd64_alu_reg_imm_size_body((inst), (opc), (reg), (imm), 4); \
-                       /* Use LEA instead of ADD to preserve flags */ \
-                       amd64_lea_memindex_size((inst), (reg), (reg), 0, AMD64_R15, 0, 8); \
-               } else { \
-                       amd64_alu_reg_imm_size_body((inst), (opc), (reg), (imm), (size)); \
-               } \
-               amd64_codegen_post(inst);               \
-       } while(0)
-
-#define amd64_alu_reg_reg_size(inst,opc,dreg,reg,size) \
-       do { \
-               amd64_codegen_pre(inst);                \
-               if (amd64_is_nacl_stack_reg((dreg)) && ((reg) != AMD64_R15)) { \
-                       if (((opc) != X86_ADD && (opc) != X86_SUB)) \
-                               g_assert_not_reached(); \
-                       amd64_alu_reg_reg_size_body((inst), (opc), (dreg), (reg), 4); \
-                       /* Use LEA instead of ADD to preserve flags */ \
-                       amd64_lea_memindex_size((inst), (dreg), (dreg), 0, AMD64_R15, 0, 8); \
-               } else { \
-                       amd64_alu_reg_reg_size_body((inst), (opc), (dreg), (reg), (size)); \
-               } \
-               amd64_codegen_post(inst);               \
-       } while (0)
-
-#endif /*__native_client_codegen__*/
-
 #define amd64_alu_reg_imm(inst,opc,reg,imm) amd64_alu_reg_imm_size((inst),(opc),(reg),(imm),8)
 
 #define amd64_alu_reg_reg(inst,opc,dreg,reg) amd64_alu_reg_reg_size ((inst),(opc),(dreg),(reg),8)
@@ -406,18 +321,10 @@ typedef union {
                amd64_codegen_post(inst); \
        } while (0)
 
-#if defined(__default_codegen__)
 #define amd64_mov_reg_mem(inst,reg,mem,size)   \
        do {    \
                amd64_mov_reg_mem_body((inst),(reg),(mem),(size)); \
        } while (0)
-#elif defined(__native_client_codegen__)
-/* We have to re-base memory reads because memory isn't zero based. */
-#define amd64_mov_reg_mem(inst,reg,mem,size)   \
-       do {    \
-               amd64_mov_reg_membase((inst),(reg),AMD64_R15,(mem),(size)); \
-       } while (0)
-#endif /* __native_client_codegen__ */
 
 #define amd64_mov_reg_membase_body(inst,reg,basereg,disp,size) \
        do {    \
@@ -438,8 +345,6 @@ typedef union {
                x86_mov_reg_memindex((inst),((reg)&0x7),((basereg)&0x7),(disp),((indexreg)&0x7),(shift),(size) == 8 ? 4 : (size)); \
        } while (0)
 
-#if defined(__default_codegen__)
-
 #define amd64_mov_reg_memindex_size(inst,reg,basereg,disp,indexreg,shift,size) \
        amd64_mov_reg_memindex_size_body((inst),(reg),(basereg),(disp),(indexreg),(shift),(size))
 #define amd64_mov_reg_membase(inst,reg,basereg,disp,size)      \
@@ -447,38 +352,6 @@ typedef union {
                amd64_mov_reg_membase_body((inst), (reg), (basereg), (disp), (size)); \
        } while (0)
 
-#elif defined(__native_client_codegen__)
-
-#define amd64_mov_reg_memindex_size(inst,reg,basereg,disp,indexreg,shift,size) \
-       do { \
-               amd64_codegen_pre(inst); \
-               if (amd64_is_nacl_stack_reg((reg))) { \
-                       /* Clear upper 32 bits with mov of size 4 */ \
-                       amd64_mov_reg_memindex_size_body((inst), (reg), (basereg), (disp), (indexreg), (shift), 4); \
-                       /* Add %r15 using LEA to preserve flags */ \
-                       amd64_lea_memindex_size((inst), (reg), (reg), 0, AMD64_R15, 0, 8); \
-               } else { \
-                       amd64_mov_reg_memindex_size_body((inst), (reg), (basereg), (disp), (indexreg), (shift), (size)); \
-               } \
-               amd64_codegen_post(inst); \
-       } while(0)
-
-#define amd64_mov_reg_membase(inst,reg,basereg,disp,size)      \
-       do {    \
-               amd64_codegen_pre(inst); \
-               if (amd64_is_nacl_stack_reg((reg))) { \
-                       /* Clear upper 32 bits with mov of size 4 */ \
-                       amd64_mov_reg_membase_body((inst), (reg), (basereg), (disp), 4); \
-                       /* Add %r15 */ \
-                       amd64_lea_memindex_size((inst), (reg), (reg), 0, AMD64_R15, 0, 8); \
-               } else { \
-                       amd64_mov_reg_membase_body((inst), (reg), (basereg), (disp), (size)); \
-               } \
-               amd64_codegen_post(inst); \
-       } while (0)
-
-#endif /*__native_client_codegen__*/
-
 #define amd64_movzx_reg_membase(inst,reg,basereg,disp,size)    \
        do {    \
                amd64_codegen_pre(inst); \
@@ -577,28 +450,8 @@ typedef union {
                amd64_membase_emit ((inst), (reg), (basereg), (disp));  \
        } while (0)
 
-#if defined(__default_codegen__)
 #define amd64_lea_membase(inst,reg,basereg,disp) \
        amd64_lea_membase_body((inst), (reg), (basereg), (disp))
-#elif defined(__native_client_codegen__)
-/* NaCl modules may not write directly into RSP/RBP. Instead, use a */
-/*  32-bit LEA and add R15 to the effective address */
-#define amd64_lea_membase(inst,reg,basereg,disp) \
-       do { \
-               amd64_codegen_pre(inst); \
-               if (amd64_is_nacl_stack_reg(reg)) { \
-                       /* 32-bit LEA */ \
-                       amd64_emit_rex((inst), 4, (reg), 0, (basereg)); \
-                       *(inst)++ = (unsigned char)0x8d; \
-                       amd64_membase_emit((inst), (reg), (basereg), (disp)); \
-                       /* Use a 64-bit LEA instead of an ADD to preserve flags */ \
-                       amd64_lea_memindex_size((inst), (reg), (reg), 0, AMD64_R15, 0, 8); \
-               } else { \
-                       amd64_lea_membase_body((inst), (reg), (basereg), (disp)); \
-               } \
-               amd64_codegen_post(inst); \
-       } while (0)
-#endif /*__native_client_codegen__*/
 
 /* Instruction are implicitly 64-bits so don't generate REX for just the size. */
 #define amd64_push_reg(inst,reg)       \
@@ -627,8 +480,6 @@ typedef union {
                amd64_codegen_post(inst);  \
        } while (0)
 
-#if defined(__default_codegen__)
-
 #define amd64_call_reg(inst,reg)       \
        do {    \
                amd64_emit_rex(inst, 0, 0, 0, (reg)); \
@@ -642,81 +493,6 @@ typedef union {
 
 #define amd64_pop_reg(inst,reg) amd64_pop_reg_body((inst), (reg))
 
-#elif defined(__native_client_codegen__)
-
-/* Size is ignored for Native Client jumps, we restrict jumping to 32-bits */
-#define amd64_jump_reg_size(inst,reg,size)                                \
-  do {                                                                    \
-    amd64_codegen_pre((inst));                                            \
-    amd64_alu_reg_imm_size((inst), X86_AND, (reg), (nacl_align_byte), 4); \
-    amd64_alu_reg_reg_size((inst), X86_ADD, (reg), AMD64_R15, 8);         \
-    amd64_emit_rex ((inst),0,0,0,(reg));                                  \
-    x86_jump_reg((inst),((reg)&0x7));                                     \
-    amd64_codegen_post((inst));                                           \
-  } while (0)
-
-/* Size is ignored for Native Client jumps, we restrict jumping to 32-bits */
-#define amd64_jump_mem_size(inst,mem,size)                                \
-  do {                                                                    \
-    amd64_codegen_pre((inst));                                            \
-    amd64_mov_reg_mem((inst), (mem), AMD64_R11, 4);                       \
-    amd64_jump_reg_size((inst), AMD64_R11, 4);                            \
-    amd64_codegen_post((inst));                                           \
-  } while (0)
-
-#define amd64_call_reg_internal(inst,reg)                                 \
-  do {                                                                    \
-    amd64_codegen_pre((inst));                                            \
-    amd64_alu_reg_imm_size((inst), X86_AND, (reg), (nacl_align_byte), 4); \
-    amd64_alu_reg_reg_size((inst), X86_ADD, (reg), AMD64_R15, 8);         \
-    amd64_emit_rex((inst), 0, 0, 0, (reg));                               \
-    x86_call_reg((inst), ((reg) & 0x7));                                  \
-    amd64_codegen_post((inst));                                           \
-  } while (0)
-
-#define amd64_call_reg(inst,reg)                                          \
-  do {                                                                    \
-    amd64_codegen_pre((inst));                                            \
-    amd64_call_sequence_pre(inst);                                        \
-    amd64_call_reg_internal((inst), (reg));                               \
-    amd64_call_sequence_post(inst);                                       \
-    amd64_codegen_post((inst));                                           \
-  } while (0)
-
-
-#define amd64_ret(inst)                                                   \
-  do {                                                                    \
-    amd64_codegen_pre(inst);                                             \
-    amd64_pop_reg_body((inst), AMD64_R11);                                \
-    amd64_jump_reg_size((inst), AMD64_R11, 8);                            \
-    amd64_codegen_post(inst);                                            \
-  } while (0)
-
-#define amd64_leave(inst)                                                 \
-  do {                                                                    \
-    amd64_codegen_pre(inst);                                             \
-    amd64_mov_reg_reg((inst), AMD64_RSP, AMD64_RBP, 8);                   \
-    amd64_pop_reg_body((inst), AMD64_R11);                                \
-    amd64_mov_reg_reg_size((inst), AMD64_RBP, AMD64_R11, 4);              \
-    amd64_alu_reg_reg_size((inst), X86_ADD, AMD64_RBP, AMD64_R15, 8);     \
-    amd64_codegen_post(inst);                                            \
-  } while (0)
-
-#define amd64_pop_reg(inst,reg) \
-       do { \
-               amd64_codegen_pre(inst); \
-               if (amd64_is_nacl_stack_reg((reg))) { \
-                       amd64_pop_reg_body((inst), AMD64_R11); \
-                       amd64_mov_reg_reg_size((inst), (reg), AMD64_R11, 4); \
-                       amd64_alu_reg_reg_size((inst), X86_ADD, (reg), AMD64_R15, 8); \
-               } else { \
-                       amd64_pop_reg_body((inst), (reg)); \
-               } \
-               amd64_codegen_post(inst); \
-       } while (0)
-
-#endif /*__native_client_codegen__*/
-
 #define amd64_movsd_reg_regp(inst,reg,regp)    \
        do {    \
                amd64_codegen_pre(inst); \
@@ -832,8 +608,6 @@ typedef union {
        amd64_codegen_post(inst); \
 } while (0)
 
-#if defined (__default_codegen__)
-
 /* From the AMD64 Software Optimization Manual */
 #define amd64_padding_size(inst,size) \
     do { \
@@ -858,98 +632,6 @@ typedef union {
        } \
 } while (0)
 
-#elif defined(__native_client_codegen__)
-
-/* The 3-7 byte NOP sequences in amd64_padding_size below are all illegal in */
-/* 64-bit Native Client because they load into rSP/rBP or use duplicate */
-/* prefixes. Instead we use the NOPs recommended in Section 3.5.1.8 of the */
-/* Intel64 and IA-32 Architectures Optimization Reference Manual and */
-/* Section 4.13 of AMD Software Optimization Guide for Family 10h Processors. */
-
-#define amd64_padding_size(inst,size) \
-       do { \
-               unsigned char *code_start = (inst); \
-               switch ((size)) { \
-                       /* xchg %eax,%eax, recognized by hardware as a NOP */ \
-                       case 1: *(inst)++ = 0x90; break; \
-                       /* xchg %ax,%ax */ \
-                       case 2: *(inst)++ = 0x66; *(inst)++ = 0x90; \
-                               break; \
-                       /* nop (%rax) */ \
-                       case 3: *(inst)++ = 0x0f; *(inst)++ = 0x1f; \
-                               *(inst)++ = 0x00; \
-                               break; \
-                       /* nop 0x0(%rax) */ \
-                       case 4: *(inst)++ = 0x0f; *(inst)++ = 0x1f; \
-                               x86_address_byte ((inst), 1, 0, AMD64_RAX);     \
-                               x86_imm_emit8 ((inst), 0);      \
-                               break; \
-                       /* nop 0x0(%rax,%rax) */ \
-                       case 5: *(inst)++ = 0x0f; *(inst)++ = 0x1f; \
-                               x86_address_byte ((inst), 1, 0, 4);     \
-                               x86_address_byte ((inst), 0, AMD64_RAX, AMD64_RAX);     \
-                               x86_imm_emit8 ((inst), 0);      \
-                               break; \
-                       /* nopw 0x0(%rax,%rax) */ \
-                       case 6: *(inst)++ = 0x66; *(inst)++ = 0x0f; \
-                               *(inst)++ = 0x1f; \
-                               x86_address_byte ((inst), 1, 0, 4);     \
-                               x86_address_byte ((inst), 0, AMD64_RAX, AMD64_RAX);     \
-                               x86_imm_emit8 ((inst), 0);      \
-                               break; \
-                       /* nop 0x0(%rax) (32-bit displacement) */ \
-                       case 7: *(inst)++ = 0x0f; *(inst)++ = 0x1f; \
-                               x86_address_byte ((inst), 2, 0, AMD64_RAX);     \
-                               x86_imm_emit32((inst), 0); \
-                               break; \
-                       /* nop 0x0(%rax,%rax) (32-bit displacement) */ \
-                       case 8: *(inst)++ = 0x0f; *(inst)++ = 0x1f; \
-                               x86_address_byte ((inst), 2, 0, 4);     \
-                               x86_address_byte ((inst), 0, AMD64_RAX, AMD64_RAX);     \
-                               x86_imm_emit32 ((inst), 0);     \
-                               break; \
-                       default: \
-                               g_assert_not_reached(); \
-               } \
-               g_assert(code_start + (size) == (unsigned char *)(inst)); \
-       } while (0)
-
-
-/* Size is ignored for Native Client calls, we restrict jumping to 32-bits */
-#define amd64_call_membase_size(inst,basereg,disp,size)                   \
-  do {                                                                    \
-    amd64_codegen_pre((inst));                                            \
-    amd64_call_sequence_pre(inst);                                        \
-    amd64_mov_reg_membase((inst), AMD64_R11, (basereg), (disp), 4);       \
-    amd64_call_reg_internal((inst), AMD64_R11);                           \
-    amd64_call_sequence_post(inst);                                       \
-    amd64_codegen_post((inst));                                           \
-  } while (0)
-
-/* Size is ignored for Native Client jumps, we restrict jumping to 32-bits */
-#define amd64_jump_membase_size(inst,basereg,disp,size)                   \
-  do {                                                                    \
-    amd64_mov_reg_membase((inst), AMD64_R11, (basereg), (disp), 4);       \
-    amd64_jump_reg_size((inst), AMD64_R11, 4);                            \
-  } while (0)
-    
-/* On Native Client we can't jump more than INT_MAX in either direction */
-#define amd64_jump_code_size(inst,target,size)                            \
-  do {                                                                    \
-    /* x86_jump_code used twice in case of */                             \
-    /* relocation by amd64_codegen_post    */                             \
-    guint8* jump_start;                                                   \
-    amd64_codegen_pre(inst);                                              \
-    assert(amd64_is_imm32 ((gint64)(target) - (gint64)(inst)));           \
-    x86_jump_code((inst),(target));                                       \
-    inst = amd64_codegen_post(inst);                                      \
-    jump_start = (inst);                                                  \
-    x86_jump_code((inst),(target));                                       \
-    mono_amd64_patch(jump_start, (target));                               \
-} while (0)
-
-#endif /*__native_client_codegen__*/
-
 /*
  * SSE
  */
@@ -1591,31 +1273,14 @@ typedef union {
 #define amd64_loopne_size(inst,imm,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_loopne((inst),(imm)); amd64_codegen_post(inst); } while (0)
 #define amd64_jump32_size(inst,imm,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_jump32((inst),(imm)); amd64_codegen_post(inst); } while (0)
 #define amd64_jump8_size(inst,imm,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_jump8((inst),(imm)); amd64_codegen_post(inst); } while (0)
-#if !defined( __native_client_codegen__ )
 /* Defined above for Native Client, so they can be used in other macros */
 #define amd64_jump_reg_size(inst,reg,size) do { amd64_emit_rex ((inst),0,0,0,(reg)); x86_jump_reg((inst),((reg)&0x7)); } while (0)
 #define amd64_jump_mem_size(inst,mem,size) do { amd64_emit_rex ((inst),(size),0,0,0); x86_jump_mem((inst),(mem)); } while (0)
-#endif
 #define amd64_jump_disp_size(inst,disp,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),0,0,0,0); x86_jump_disp((inst),(disp)); amd64_codegen_post(inst); } while (0)
 #define amd64_branch8_size(inst,cond,imm,is_signed,size) do { x86_branch8((inst),(cond),(imm),(is_signed)); } while (0)
 #define amd64_branch32_size(inst,cond,imm,is_signed,size) do { x86_branch32((inst),(cond),(imm),(is_signed)); } while (0)
 #define amd64_branch_size_body(inst,cond,target,is_signed,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_branch((inst),(cond),(target),(is_signed)); amd64_codegen_post(inst); } while (0)
-#if defined(__default_codegen__)
 #define amd64_branch_size(inst,cond,target,is_signed,size) do { amd64_branch_size_body((inst),(cond),(target),(is_signed),(size)); } while (0)
-#elif defined(__native_client_codegen__)
-#define amd64_branch_size(inst,cond,target,is_signed,size) \
-       do { \
-               /* amd64_branch_size_body used twice in     */ \
-               /* case of relocation by amd64_codegen_post */ \
-               guint8* branch_start; \
-               amd64_codegen_pre(inst); \
-               amd64_branch_size_body((inst),(cond),(target),(is_signed),(size)); \
-               inst = amd64_codegen_post(inst); \
-               branch_start = inst; \
-               amd64_branch_size_body((inst),(cond),(target),(is_signed),(size)); \
-               mono_amd64_patch(branch_start, (target)); \
-       } while (0)
-#endif
 
 #define amd64_branch_disp_size(inst,cond,disp,is_signed,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_branch_disp((inst),(cond),(disp),(is_signed)); amd64_codegen_post(inst); } while (0)
 #define amd64_set_reg_size(inst,cond,reg,is_signed,size) do { amd64_codegen_pre(inst); amd64_emit_rex((inst),1,0,0,(reg)); x86_set_reg((inst),(cond),((reg)&0x7),(is_signed)); amd64_codegen_post(inst); } while (0)
@@ -1624,42 +1289,9 @@ typedef union {
 //#define amd64_call_reg_size(inst,reg,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,(reg)); x86_call_reg((inst),((reg)&0x7)); amd64_codegen_post(inst); } while (0)
 #define amd64_call_mem_size(inst,mem,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_call_mem((inst),(mem)); amd64_codegen_post(inst); } while (0)
 
-#if defined(__default_codegen__)
-
 #define amd64_call_imm_size(inst,disp,size) do { x86_call_imm((inst),(disp)); } while (0)
 #define amd64_call_code_size(inst,target,size) do { x86_call_code((inst),(target)); } while (0)
 
-#elif defined(__native_client_codegen__)
-/* Size is ignored for Native Client calls, we restrict jumping to 32-bits */
-#define amd64_call_imm_size(inst,disp,size)             \
-  do {                                                  \
-    amd64_codegen_pre((inst));                          \
-    amd64_call_sequence_pre((inst));                    \
-    x86_call_imm((inst),(disp));                        \
-    amd64_call_sequence_post((inst));                   \
-    amd64_codegen_post((inst));                         \
-  } while (0)
-
-/* x86_call_code is called twice below, first so we can get the size of the */
-/* call sequence, and again so the exact offset from "inst" is used, since  */
-/* the sequence could have moved from amd64_call_sequence_post.             */
-/* Size is ignored for Native Client jumps, we restrict jumping to 32-bits  */
-#define amd64_call_code_size(inst,target,size)          \
-  do {                                                  \
-    amd64_codegen_pre((inst));                          \
-    guint8* adjusted_start;                             \
-    guint8* call_start;                                 \
-    amd64_call_sequence_pre((inst));                    \
-    x86_call_code((inst),(target));                     \
-    adjusted_start = amd64_call_sequence_post((inst));  \
-    call_start = adjusted_start;                        \
-    x86_call_code(adjusted_start, (target));            \
-    amd64_codegen_post((inst));                         \
-    mono_amd64_patch(call_start, (target));             \
-  } while (0)
-
-#endif /*__native_client_codegen__*/
-
 //#define amd64_ret_size(inst,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_ret(inst); amd64_codegen_post(inst); } while (0)
 #define amd64_ret_imm_size(inst,imm,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),0,0,0); x86_ret_imm((inst),(imm)); amd64_codegen_post(inst); } while (0)
 #define amd64_cmov_reg_size(inst,cond,is_signed,dreg,reg,size) do { amd64_codegen_pre(inst); amd64_emit_rex ((inst),(size),(dreg),0,(reg)); x86_cmov_reg((inst),(cond),(is_signed),((dreg)&0x7),((reg)&0x7)); amd64_codegen_post(inst); } while (0)
index 1af30c6b21bb516a2466cc6d4f5bc72118884228..9f89a91d5f2bd8f58fc470a75f81848ec33493de 100644 (file)
@@ -1015,11 +1015,7 @@ typedef struct {
        ARM_RORS_REG_COND(p, rd, rm, rs, ARMCOND_AL)
 #define ARM_RORS_REG_REG(p, rd, rm, rs) ARM_RORS_REG(p, rd, rm, rs)
 
-#ifdef __native_client_codegen__
-#define ARM_DBRK(p) ARM_EMIT(p, 0xE7FEDEF0)
-#else
 #define ARM_DBRK(p) ARM_EMIT(p, 0xE6000010)
-#endif
 #define ARM_IASM_DBRK() ARM_IASM_EMIT(0xE6000010)
 
 #define ARM_INC(p, reg) ARM_ADD_REG_IMM8(p, reg, reg, 1)
index 6c9d63f37e991fc8cbaeedf8ce4fd635695253c3..183d5fe99cf1ce11c725cd934019294fbe9a1bec 100644 (file)
 #define X86_H
 #include <assert.h>
 
-#ifdef __native_client_codegen__
-extern gint8 nacl_align_byte;
-#endif /* __native_client_codegen__ */
-
-
-#if defined( __native_client_codegen__ ) && defined( TARGET_X86 )
-#define x86_codegen_pre(inst_ptr_ptr, inst_len) do { mono_nacl_align_inst(inst_ptr_ptr, inst_len); } while (0)
-#define x86_call_sequence_pre_val(inst) guint8* _code_start = (inst);
-#define x86_call_sequence_post_val(inst) \
-  (mono_nacl_align_call(&_code_start, &(inst)), _code_start);
-#define x86_call_sequence_pre(inst) x86_call_sequence_pre_val((inst))
-#define x86_call_sequence_post(inst) x86_call_sequence_post_val((inst))
-#else
 #define x86_codegen_pre(inst_ptr_ptr, inst_len) do {} while (0)
 /* Two variants are needed to avoid warnings */
 #define x86_call_sequence_pre_val(inst) guint8* _code_start = (inst);
 #define x86_call_sequence_post_val(inst) _code_start
 #define x86_call_sequence_pre(inst)
 #define x86_call_sequence_post(inst)
-#endif  /* __native_client_codegen__ */
-
 
 /*
 // x86 register numbers
@@ -333,17 +318,10 @@ typedef union {
        }       \
        } while (0)
 
-#if defined(__native_client_codegen__) && defined(TARGET_AMD64)
-#define x86_membase_emit(inst,r,basereg,disp) \
-       do { \
-               amd64_nacl_membase_handler(&(inst), (basereg), (disp), (r)) ; \
-       } while (0)
-#else /* __default_codegen__ || 32-bit NaCl codegen */
 #define x86_membase_emit(inst,r,basereg,disp) \
        do { \
                x86_membase_emit_body((inst),(r),(basereg),(disp)); \
        } while (0)
-#endif
 
 #define kMaxMemindexEmitPadding 6
 
@@ -407,84 +385,12 @@ typedef union {
                else assert (0);        \
        } while (0)
 
-#if defined( __native_client_codegen__ ) && defined(TARGET_X86)
-
-#define x86_skip_nops(inst) \
-  do {    \
-    int in_nop = 0; \
-    do { \
-      in_nop = 0; \
-      if (inst[0] == 0x90) { \
-        in_nop = 1; \
-        inst += 1; \
-      } \
-      if (inst[0] == 0x8b && inst[1] == 0xc0) { \
-        in_nop = 1; \
-        inst += 2; \
-      } \
-      if (inst[0] == 0x8d && inst[1] == 0x6d \
-       && inst[2] == 0x00) { \
-        in_nop = 1; \
-        inst += 3; \
-      } \
-      if (inst[0] == 0x8d && inst[1] == 0x64 \
-       && inst[2] == 0x24 && inst[3] == 0x00) { \
-        in_nop = 1; \
-        inst += 4; \
-      } \
-      /* skip inst+=5 case because it's the 4-byte + 1-byte case */ \
-      if (inst[0] == 0x8d && inst[1] == 0xad \
-       && inst[2] == 0x00 && inst[3] == 0x00 \
-       && inst[4] == 0x00 && inst[5] == 0x00) { \
-        in_nop = 1; \
-        inst += 6; \
-      } \
-      if (inst[0] == 0x8d && inst[1] == 0xa4 \
-       && inst[2] == 0x24 && inst[3] == 0x00 \
-       && inst[4] == 0x00 && inst[5] == 0x00 \
-       && inst[6] == 0x00 ) { \
-        in_nop = 1; \
-        inst += 7; \
-      } \
-    } while ( in_nop );  \
-  } while (0)
-
-#if defined(__native_client__)
-#define x86_patch(ins,target) \
-  do { \
-    unsigned char* inst = (ins); \
-    guint8* new_target = nacl_modify_patch_target((target)); \
-    x86_skip_nops((inst)); \
-    x86_do_patch((inst), new_target); \
-  } while (0)
-#else /* __native_client__ */
-#define x86_patch(ins,target) \
-  do { \
-    unsigned char* inst = (ins); \
-    guint8* new_target = (target); \
-    x86_skip_nops((inst)); \
-    x86_do_patch((inst), new_target); \
-  } while (0)
-#endif /* __native_client__ */
-
-#else
 #define x86_patch(ins,target) do { x86_do_patch((ins), (target)); } while (0)
-#endif /* __native_client_codegen__ */
 
-#ifdef __native_client_codegen__
-/* The breakpoint instruction is illegal in Native Client, although the HALT   */
-/* instruction is allowed. The breakpoint is used several places in mini-x86.c */
-/* and exceptions-x86.c.                                                       */
-#define x86_breakpoint(inst) \
-       do {    \
-               *(inst)++ = 0xf4;       \
-       } while (0)
-#else
 #define x86_breakpoint(inst) \
        do {    \
                *(inst)++ = 0xcc;       \
        } while (0)
-#endif
 
 #define x86_cld(inst) do { *(inst)++ =(unsigned char)0xfc; } while (0)
 #define x86_stosb(inst) do { *(inst)++ =(unsigned char)0xaa; } while (0)
@@ -494,34 +400,10 @@ typedef union {
 #define x86_movsl(inst) do { *(inst)++ =(unsigned char)0xa5; } while (0)
 #define x86_movsd(inst) x86_movsl((inst))
 
-#if defined(__default_codegen__)
 #define x86_prefix(inst,p) \
        do { \
                *(inst)++ =(unsigned char) (p); \
        } while (0)
-#elif defined(__native_client_codegen__)
-#if defined(TARGET_X86)
-/* kNaClAlignment - 1 is the max value we can pass into x86_codegen_pre. */
-/* This keeps us from having to call x86_codegen_pre with specific       */
-/* knowledge of the size of the instruction that follows it, and         */
-/* localizes the alignment requirement to this spot.                     */
-#define x86_prefix(inst,p) \
-       do { \
-               x86_codegen_pre(&(inst), kNaClAlignment - 1); \
-               *(inst)++ =(unsigned char) (p); \
-       } while (0)
-#elif defined(TARGET_AMD64)
-/* We need to tag any prefixes so we can perform proper membase sandboxing */
-/* See: mini-amd64.c:amd64_nacl_membase_handler for verbose details        */
-#define x86_prefix(inst,p) \
-       do { \
-               amd64_nacl_tag_legacy_prefix((inst)); \
-               *(inst)++ =(unsigned char) (p); \
-       } while (0)
-
-#endif /* TARGET_AMD64 */
-
-#endif /* __native_client_codegen__ */
 
 #define x86_mfence(inst) \
        do {    \
@@ -1773,36 +1655,6 @@ typedef union {
        } while (0)
 #endif
 
-#if defined( __native_client_codegen__ ) && defined( TARGET_X86 )
-#define x86_jump_reg(inst,reg) do {    \
-    x86_codegen_pre(&(inst), 5);                       \
-    *(inst)++ = (unsigned char)0x83;  /* and */                \
-    x86_reg_emit ((inst), 4, (reg));  /* reg */                \
-    *(inst)++ = (unsigned char)nacl_align_byte;                \
-    *(inst)++ = (unsigned char)0xff;                   \
-    x86_reg_emit ((inst), 4, (reg));                   \
-  } while (0)
-
-/* Let's hope ECX is available for these... */
-#define x86_jump_mem(inst,mem) do {    \
-    x86_mov_reg_mem(inst, (X86_ECX), (mem), 4);                \
-    x86_jump_reg(inst, (X86_ECX));                     \
-  } while (0)
-
-#define x86_jump_membase(inst,basereg,disp) do {       \
-    x86_mov_reg_membase(inst, (X86_ECX), basereg, disp, 4);    \
-    x86_jump_reg(inst, (X86_ECX));                             \
-  } while (0)
-
-/* like x86_jump_membase, but force a 32-bit displacement  */
-#define x86_jump_membase32(inst,basereg,disp) do {     \
-    x86_codegen_pre(&(inst), 6); \
-    *(inst)++ = (unsigned char)0x8b;                   \
-    x86_address_byte ((inst), 2, X86_ECX, (basereg));  \
-    x86_imm_emit32 ((inst), (disp));                   \
-    x86_jump_reg(inst, (X86_ECX));                     \
-  } while (0)
-#else  /* __native_client_codegen__ */
 #define x86_jump_reg(inst,reg) \
        do {    \
                *(inst)++ = (unsigned char)0xff;        \
@@ -1820,7 +1672,6 @@ typedef union {
                *(inst)++ = (unsigned char)0xff;        \
                x86_membase_emit ((inst), 4, (basereg), (disp));        \
        } while (0)
-#endif  /* __native_client_codegen__ */
 /*
  * target is a pointer in our buffer.
  */
@@ -1838,30 +1689,10 @@ typedef union {
                }       \
        } while (0)
 
-#if defined(__default_codegen__) 
-#define x86_jump_code(inst,target) \
-       do { \
-               x86_jump_code_body((inst),(target)); \
-       } while (0)
-#elif defined(__native_client_codegen__) && defined(TARGET_X86)
 #define x86_jump_code(inst,target) \
        do { \
-               guint8* jump_start = (inst); \
-               x86_jump_code_body((inst),(target)); \
-               x86_patch(jump_start, (target)); \
-       } while (0)
-#elif defined(__native_client_codegen__) && defined(TARGET_AMD64)
-#define x86_jump_code(inst,target) \
-       do { \
-               /* jump_code_body is used twice because there are offsets */ \
-               /* calculated based on the IP, which can change after the */ \
-               /* call to amd64_codegen_post                             */ \
-               amd64_codegen_pre(inst); \
-               x86_jump_code_body((inst),(target)); \
-               inst = amd64_codegen_post(inst); \
                x86_jump_code_body((inst),(target)); \
        } while (0)
-#endif /* __native_client_codegen__ */
 
 #define x86_jump_disp(inst,disp)       \
        do {    \
@@ -1953,23 +1784,10 @@ typedef union {
                }       \
        } while (0)
 
-#if defined(__default_codegen__)
 #define x86_branch(inst,cond,target,is_signed) \
        do { \
                x86_branch_body((inst),(cond),(target),(is_signed)); \
        } while (0)
-#elif defined(__native_client_codegen__)
-#define x86_branch(inst,cond,target,is_signed) \
-       do {    \
-               /* branch_body is used twice because there are offsets */ \
-               /* calculated based on the IP, which can change after  */ \
-               /* the call to amd64_codegen_post                      */ \
-               amd64_codegen_pre(inst); \
-               x86_branch_body((inst),(cond),(target),(is_signed)); \
-               inst = amd64_codegen_post(inst); \
-               x86_branch_body((inst),(cond),(target),(is_signed)); \
-       } while (0)
-#endif /* __native_client_codegen__ */
 
 #endif /* TARGET_AMD64 */
 
@@ -2032,34 +1850,6 @@ typedef union {
        } while (0)
 
 
-#if defined( __native_client_codegen__ ) && defined( TARGET_X86 )
-#define x86_call_reg_internal(inst,reg)        \
-  do {                                                 \
-    *(inst)++ = (unsigned char)0x83;  /* and */                \
-    x86_reg_emit ((inst), 4, (reg));  /* reg */                \
-    *(inst)++ = (unsigned char)nacl_align_byte;                \
-    *(inst)++ = (unsigned char)0xff;  /* call */       \
-    x86_reg_emit ((inst), 2, (reg));  /* reg */                \
-  } while (0)
-
-#define x86_call_reg(inst, reg) do {           \
-    x86_call_sequence_pre((inst));              \
-    x86_call_reg_internal(inst, reg);          \
-    x86_call_sequence_post((inst));             \
-  } while (0)
-
-
-/* It appears that x86_call_mem() is never used, so I'm leaving it out. */
-#define x86_call_membase(inst,basereg,disp)  do {              \
-    x86_call_sequence_pre((inst));                              \
-    /* x86_mov_reg_membase() inlined so its fixed size */      \
-    *(inst)++ = (unsigned char)0x8b;                           \
-    x86_address_byte ((inst), 2, (X86_ECX), (basereg));                \
-    x86_imm_emit32 ((inst), (disp));                           \
-    x86_call_reg_internal(inst, X86_ECX);                      \
-    x86_call_sequence_post((inst));                             \
-  } while (0)
-#else  /* __native_client_codegen__ */
 #define x86_call_reg(inst,reg) \
        do {    \
                *(inst)++ = (unsigned char)0xff;        \
@@ -2077,53 +1867,6 @@ typedef union {
                *(inst)++ = (unsigned char)0xff;        \
                x86_membase_emit ((inst), 2, (basereg), (disp));        \
        } while (0)
-#endif  /* __native_client_codegen__ */
-
-
-#if defined( __native_client_codegen__ ) && defined( TARGET_X86 )
-
-#define x86_call_code(inst,target)     \
-       do {    \
-               int _x86_offset; \
-               guint8* call_start; \
-               guint8* _aligned_start; \
-               x86_call_sequence_pre_val((inst)); \
-               _x86_offset = (unsigned char*)(target) - (inst);        \
-               _x86_offset -= 5;       \
-               x86_call_imm_body ((inst), _x86_offset);        \
-               _aligned_start = x86_call_sequence_post_val((inst)); \
-               call_start = _aligned_start; \
-               _x86_offset = (unsigned char*)(target) - (_aligned_start);      \
-               _x86_offset -= 5;       \
-               x86_call_imm_body ((_aligned_start), _x86_offset);      \
-               x86_patch(call_start, (target)); \
-       } while (0)
-
-#define SIZE_OF_RET 6
-#define x86_ret(inst) do { \
-    *(inst)++ = (unsigned char)0x59;  /* pop ecx */            \
-    x86_codegen_pre(&(inst), 5); \
-    *(inst)++ = (unsigned char)0x83;  /* and 0xffffffff, ecx */ \
-    *(inst)++ = (unsigned char)0xe1;                           \
-    *(inst)++ = (unsigned char)nacl_align_byte;                        \
-    *(inst)++ = (unsigned char)0xff;  /* jmp ecx */            \
-    *(inst)++ = (unsigned char)0xe1;                           \
-  } while (0)
-
-/* pop return address */
-/* pop imm bytes from stack */
-/* return */
-#define x86_ret_imm(inst,imm)  do {    \
-    *(inst)++ = (unsigned char)0x59;  /* pop ecx */            \
-    x86_alu_reg_imm ((inst), X86_ADD, X86_ESP, imm);           \
-    x86_codegen_pre(&(inst), 5); \
-    *(inst)++ = (unsigned char)0x83;  /* and 0xffffffff, ecx */ \
-    *(inst)++ = (unsigned char)0xe1;                           \
-    *(inst)++ = (unsigned char)nacl_align_byte;                        \
-    *(inst)++ = (unsigned char)0xff;  /* jmp ecx */            \
-    *(inst)++ = (unsigned char)0xe1;                           \
-} while (0)
-#else  /* __native_client_codegen__ */
 
 #define x86_call_code(inst,target)     \
        do {    \
@@ -2145,7 +1888,6 @@ typedef union {
                        x86_imm_emit16 ((inst), (imm)); \
                }       \
        } while (0)
-#endif  /* __native_client_codegen__ */
 
 #define x86_cmov_reg(inst,cond,is_signed,dreg,reg)     \
        do {    \
@@ -2229,14 +1971,6 @@ typedef union {
                }       \
        } while (0)
 
-#ifdef __native_client_codegen__
-
-#define kx86NaClLengthOfCallReg 5
-#define kx86NaClLengthOfCallImm 5
-#define kx86NaClLengthOfCallMembase (kx86NaClLengthOfCallReg + 6)
-
-#endif  /* __native_client_codegen__ */
-
 #define x86_prolog(inst,frame_size,reg_mask)   \
        do {    \
                unsigned i, m = 1;      \
index a86b2be374115316ab024a42aec3dcc8d91de75a..087e3f3008721786750ca531e3487a87aa994907 100644 (file)
 <opcode name="mono_ldptr_nursery_start" input="Pop0" output="PushI" args="InlineNone" o1="0xF0" o2="0x16" flow="next" />
 <opcode name="mono_ldptr_nursery_bits" input="Pop0" output="PushI" args="InlineNone" o1="0xF0" o2="0x17" flow="next" />
 <opcode name="mono_calli_extra_arg" input="VarPop" output="VarPush" args="InlineSig" o1="0xF0" o2="0x18" flow="call" />
+<opcode name="mono_lddomain" input="Pop0" output="PushI" args="InlineNone" o1="0xF0" o2="0x19" flow="next" />
+<opcode name="mono_atomic_store_i4" input="PopI+PopI" output="Push0" args="InlineI" o1="0xF0" o2="0x1A" flow="next" />
 </opdesc>
index ad89c95e46c2245750c5c2d275fcce1c671f12ab..ee69b699ba6797fb7f53a0f2599e650a0983198f 100644 (file)
@@ -317,6 +317,8 @@ OPDEF(CEE_MONO_LDPTR_CARD_TABLE, "mono_ldptr_card_table", Pop0, PushI, InlineNon
 OPDEF(CEE_MONO_LDPTR_NURSERY_START, "mono_ldptr_nursery_start", Pop0, PushI, InlineNone, X, 2, 0xF0, 0x16, NEXT)
 OPDEF(CEE_MONO_LDPTR_NURSERY_BITS, "mono_ldptr_nursery_bits", Pop0, PushI, InlineNone, X, 2, 0xF0, 0x17, NEXT)
 OPDEF(CEE_MONO_CALLI_EXTRA_ARG, "mono_calli_extra_arg", VarPop, VarPush, InlineSig, X, 2, 0xF0, 0x18, CALL)
+OPDEF(CEE_MONO_LDDOMAIN, "mono_lddomain", Pop0, PushI, InlineNone, X, 2, 0xF0, 0x19, NEXT)
+OPDEF(CEE_MONO_ATOMIC_STORE_I4, "mono_atomic_store_i4", PopI+PopI, Push0, InlineI, X, 2, 0xF0, 0x1A, NEXT)
 #ifndef OPALIAS
 #define _MONO_CIL_OPALIAS_DEFINED_
 #define OPALIAS(a,s,r)
index d1b85c5509abb7c864ff51ac4b92202f38dc5475..1af061c383ad8b58abc1d42a636c8b4de55d26b1 100644 (file)
@@ -1617,7 +1617,7 @@ struct {
  *
  * Disassembles the @file file.
  */
-static void
+static int
 disassemble_file (const char *file)
 {
        MonoImageOpenStatus status;
@@ -1626,7 +1626,7 @@ disassemble_file (const char *file)
        img = mono_image_open (file, &status);
        if (!img) {
                fprintf (stderr, "Error while trying to process %s\n", file);
-               return;
+               return 1;
        } else {
                /* FIXME: is this call necessary? */
                mono_assembly_load_from_full (img, file, &status, FALSE);
@@ -1659,6 +1659,7 @@ disassemble_file (const char *file)
        }
        
        mono_image_close (img);
+       return 0;
 }
 
 typedef struct {
@@ -2028,12 +2029,14 @@ main (int argc, char *argv [])
 
                mono_install_assembly_preload_hook (monodis_preload, GUINT_TO_POINTER (FALSE));
 
-               disassemble_file (filename);
+               return disassemble_file (filename);
        } else {
                mono_init (argv [0]);
 
+               i = 0;
                for (l = input_files; l; l = l->next)
-                       disassemble_file ((const char *)l->data);
+                       if (disassemble_file ((const char *)l->data) == 1) i = 1;
+               return i;
        }
 
        return 0;
index 723982cc3934b78400c736ceed5b7ac1aa086c80..f34ae7139b25f7dacf1d1f18813ce8a638bc4b81 100644 (file)
@@ -145,7 +145,7 @@ static gboolean namedevent_own (gpointer handle)
                g_assert (namedevent_handle->set_count > 0);
                
                if (--namedevent_handle->set_count == 0) {
-                       _wapi_shared_handle_set_signal_state (handle, FALSE);
+                       _wapi_handle_set_signal_state (handle, FALSE, FALSE);
                }
        }
        
@@ -205,9 +205,6 @@ static gpointer namedevent_create (WapiSecurityAttributes *security G_GNUC_UNUSE
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       guint32 namelen;
-       gint32 offset;
        
        /* w32 seems to guarantee that opening named objects can't
         * race each other
@@ -225,34 +222,26 @@ static gpointer namedevent_create (WapiSecurityAttributes *security G_GNUC_UNUSE
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Creating named event [%s]", __func__, utf8_name);
        
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDEVENT,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDEVENT,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset != 0) {
+       } else if (handle) {
                /* Not an error, but this is how the caller is
                 * informed that the event wasn't freshly created
                 */
                SetLastError (ERROR_ALREADY_EXISTS);
-       }
-       /* Fall through to create the event handle. */
-
-       if (offset == 0) {
+       } else {
                /* A new named event, so create both the private and
                 * shared parts
                 */
        
-               if (strlen (utf8_name) < MAX_PATH) {
-                       namelen = strlen (utf8_name);
-               } else {
-                       namelen = MAX_PATH;
-               }
-       
-               memcpy (&namedevent_handle.sharedns.name, utf8_name, namelen);
+               strncpy (&namedevent_handle.sharedns.name [0], utf8_name, MAX_PATH);
+               namedevent_handle.sharedns.name [MAX_PATH] = '\0';
 
                namedevent_handle.manual = manual;
                namedevent_handle.set_count = 0;
@@ -265,35 +254,27 @@ static gpointer namedevent_create (WapiSecurityAttributes *security G_GNUC_UNUSE
                
                handle = _wapi_handle_new (WAPI_HANDLE_NAMEDEVENT,
                                           &namedevent_handle);
-       } else {
-               /* A new reference to an existing named event, so just
-                * create the private part
-                */
-               handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDEVENT,
-                                                      offset, TRUE);
-       }
-       
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error creating event handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
 
-       if (offset == 0) {
+               if (handle == _WAPI_HANDLE_INVALID) {
+                       g_warning ("%s: error creating event handle", __func__);
+                       SetLastError (ERROR_GEN_FAILURE);
+                       goto cleanup;
+               }
+
                /* Set the initial state, as this is a completely new
                 * handle
                 */
-               thr_ret = _wapi_handle_lock_shared_handles ();
+               thr_ret = _wapi_handle_lock_handle (handle);
                g_assert (thr_ret == 0);
        
                if (initial == TRUE) {
-                       _wapi_shared_handle_set_signal_state (handle, TRUE);
+                       _wapi_handle_set_signal_state (handle, TRUE, FALSE);
                }
 
-               _wapi_handle_unlock_shared_handles ();
+               thr_ret = _wapi_handle_unlock_handle (handle);
+               g_assert (thr_ret == 0);
        }
-       
+
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning event handle %p", __func__, handle);
 
 cleanup:
@@ -301,7 +282,7 @@ cleanup:
 
        _wapi_namespace_unlock (NULL);
        
-       return(ret);
+       return handle;
 
 }
 
@@ -353,7 +334,7 @@ static gboolean event_pulse (gpointer handle)
                return(FALSE);
        }
        
-       thr_ret = _wapi_handle_lock_handle (handle);
+       thr_ret = _wapi_handle_unlock_handle (handle);
        g_assert (thr_ret == 0);
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Pulsing event handle %p", __func__, handle);
@@ -410,19 +391,20 @@ static gboolean namedevent_pulse (gpointer handle)
                return(FALSE);
        }
        
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
        g_assert (thr_ret == 0);
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Pulsing named event handle %p", __func__, handle);
 
        if (namedevent_handle->manual == TRUE) {
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, TRUE);
        } else {
                namedevent_handle->set_count = 1;
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, FALSE);
        }
 
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
        
        if (namedevent_handle->manual == TRUE) {
                /* For a manual-reset event, we're about to try and
@@ -440,12 +422,13 @@ static gboolean namedevent_pulse (gpointer handle)
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Obtained write lock on event handle %p",
                           __func__, handle);
 
-               thr_ret = _wapi_handle_lock_shared_handles ();
+               thr_ret = _wapi_handle_lock_handle (handle);
                g_assert (thr_ret == 0);
                
-               _wapi_shared_handle_set_signal_state (handle, FALSE);
+               _wapi_handle_set_signal_state (handle, FALSE, FALSE);
 
-               _wapi_handle_unlock_shared_handles ();
+               thr_ret = _wapi_handle_unlock_handle (handle);
+               g_assert (thr_ret == 0);
        }
 
        return(TRUE);
@@ -538,7 +521,7 @@ static gboolean namedevent_reset (gpointer handle)
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Resetting named event handle %p", __func__, handle);
 
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
        
        if (_wapi_handle_issignalled (handle) == FALSE) {
@@ -548,12 +531,13 @@ static gboolean namedevent_reset (gpointer handle)
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Obtained write lock on named event handle %p",
                           __func__, handle);
 
-               _wapi_shared_handle_set_signal_state (handle, FALSE);
+               _wapi_handle_set_signal_state (handle, FALSE, FALSE);
        }
        
        namedevent_handle->set_count = 0;
        
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
        
        return(TRUE);
 }
@@ -632,19 +616,20 @@ static gboolean namedevent_set (gpointer handle)
                return(FALSE);
        }
        
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Setting named event handle %p", __func__, handle);
 
        if (namedevent_handle->manual == TRUE) {
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, TRUE);
        } else {
                namedevent_handle->set_count = 1;
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, TRUE);
        }
 
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
 
        return(TRUE);
 }
@@ -687,8 +672,6 @@ gpointer OpenEvent (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UNUSED
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       gint32 offset;
        
        mono_once (&event_ops_once, event_ops_init);
 
@@ -702,33 +685,20 @@ gpointer OpenEvent (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UNUSED
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Opening named event [%s]", __func__, utf8_name);
        
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDEVENT,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDEVENT,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset == 0) {
+       } else if (!handle) {
                /* This name doesn't exist */
                SetLastError (ERROR_FILE_NOT_FOUND);    /* yes, really */
                goto cleanup;
        }
 
-       /* A new reference to an existing named event, so just create
-        * the private part
-        */
-       handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDEVENT, offset,
-                                              TRUE);
-       
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error opening named event handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
-
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning named event handle %p", __func__, handle);
 
 cleanup:
@@ -736,6 +706,6 @@ cleanup:
 
        _wapi_namespace_unlock (NULL);
        
-       return(ret);
+       return handle;
 
 }
index 4f20de02d411248bec7f67f5b4dc256d084696f1..81b17ea2f6bec3043d6f5c869b6cd9180cada650 100644 (file)
 #undef DEBUG
 
 extern struct _WapiHandleUnshared *_wapi_private_handles [];
-extern struct _WapiHandleSharedLayout *_wapi_shared_layout;
 
 extern guint32 _wapi_fd_reserve;
+extern gpointer _wapi_global_signal_handle;
 extern mono_mutex_t *_wapi_global_signal_mutex;
-extern pthread_cond_t *_wapi_global_signal_cond;
+extern mono_cond_t *_wapi_global_signal_cond;
 extern int _wapi_sem_id;
 extern gboolean _wapi_has_shut_down;
 
@@ -42,9 +42,6 @@ extern gpointer _wapi_handle_new (WapiHandleType type,
                                  gpointer handle_specific);
 extern gpointer _wapi_handle_new_fd (WapiHandleType type, int fd,
                                     gpointer handle_specific);
-extern gpointer _wapi_handle_new_from_offset (WapiHandleType type,
-                                             guint32 offset,
-                                             gboolean timestamp);
 extern gboolean _wapi_lookup_handle (gpointer handle, WapiHandleType type,
                                     gpointer *handle_specific);
 extern gpointer _wapi_search_handle (WapiHandleType type,
@@ -52,7 +49,7 @@ extern gpointer _wapi_search_handle (WapiHandleType type,
                                     gpointer user_data,
                                     gpointer *handle_specific,
                                     gboolean search_shared);
-extern gint32 _wapi_search_handle_namespace (WapiHandleType type,
+extern gpointer _wapi_search_handle_namespace (WapiHandleType type,
                                             gchar *utf8_name);
 extern void _wapi_handle_ref (gpointer handle);
 extern void _wapi_handle_unref (gpointer handle);
@@ -76,29 +73,19 @@ extern gboolean _wapi_handle_count_signalled_handles (guint32 numhandles,
                                                      guint32 *lowest);
 extern void _wapi_handle_unlock_handles (guint32 numhandles,
                                         gpointer *handles);
-extern int _wapi_handle_timedwait_signal (guint32 timeout, gboolean poll, gboolean *alerted);
-extern int _wapi_handle_timedwait_signal_handle (gpointer handle, guint32 timeout, gboolean alertable, gboolean poll, gboolean *alerted);
+extern int _wapi_handle_timedwait_signal_handle (gpointer handle, guint32 timeout, gboolean poll, gboolean *alerted);
 extern gboolean _wapi_handle_get_or_set_share (guint64 device, guint64 inode,
                                               guint32 new_sharemode,
                                               guint32 new_access,
                                               guint32 *old_sharemode,
                                               guint32 *old_access,
                                               struct _WapiFileShare **info);
-extern void _wapi_handle_check_share (struct _WapiFileShare *share_info,
-                                     int fd);
 extern void _wapi_handle_dump (void);
 extern void _wapi_handle_foreach (WapiHandleType type,
                                        gboolean (*on_each)(gpointer test, gpointer user),
                                        gpointer user_data);
 void _wapi_free_share_info (_WapiFileShare *share_info);
 
-/* This is OK to use for atomic writes of individual struct members, as they
- * are independent
- */
-#define WAPI_SHARED_HANDLE_DATA(handle) _wapi_shared_layout->handles[_WAPI_PRIVATE_HANDLES(GPOINTER_TO_UINT((handle))).u.shared.offset]
-
-#define WAPI_SHARED_HANDLE_TYPED_DATA(handle, type) _wapi_shared_layout->handles[_WAPI_PRIVATE_HANDLES(GPOINTER_TO_UINT((handle))).u.shared.offset].u.type
-
 static inline WapiHandleType _wapi_handle_type (gpointer handle)
 {
        guint32 idx = GPOINTER_TO_UINT(handle);
@@ -121,9 +108,7 @@ static inline void _wapi_handle_set_signal_state (gpointer handle,
        if (!_WAPI_PRIVATE_VALID_SLOT (idx)) {
                return;
        }
-       
-       g_assert (!_WAPI_SHARED_HANDLE(_wapi_handle_type (handle)));
-       
+
        handle_data = &_WAPI_PRIVATE_HANDLES(idx);
        
 #ifdef DEBUG
@@ -148,23 +133,23 @@ static inline void _wapi_handle_set_signal_state (gpointer handle,
                handle_data->signalled=state;
                
                if (broadcast == TRUE) {
-                       thr_ret = pthread_cond_broadcast (&handle_data->signal_cond);
+                       thr_ret = mono_os_cond_broadcast (&handle_data->signal_cond);
                        if (thr_ret != 0)
-                               g_warning ("Bad call to pthread_cond_broadcast result %d for handle %p", thr_ret, handle);
+                               g_warning ("Bad call to mono_os_cond_broadcast result %d for handle %p", thr_ret, handle);
                        g_assert (thr_ret == 0);
                } else {
-                       thr_ret = pthread_cond_signal (&handle_data->signal_cond);
+                       thr_ret = mono_os_cond_signal (&handle_data->signal_cond);
                        if (thr_ret != 0)
-                               g_warning ("Bad call to pthread_cond_signal result %d for handle %p", thr_ret, handle);
+                               g_warning ("Bad call to mono_os_cond_signal result %d for handle %p", thr_ret, handle);
                        g_assert (thr_ret == 0);
                }
 
                /* Tell everyone blocking on multiple handles that something
                 * was signalled
                 */                     
-               thr_ret = pthread_cond_broadcast (_wapi_global_signal_cond);
+               thr_ret = mono_os_cond_broadcast (_wapi_global_signal_cond);
                if (thr_ret != 0)
-                       g_warning ("Bad call to pthread_cond_broadcast result %d for handle %p", thr_ret, handle);
+                       g_warning ("Bad call to mono_os_cond_broadcast result %d for handle %p", thr_ret, handle);
                g_assert (thr_ret == 0);
                        
                thr_ret = mono_os_mutex_unlock (_wapi_global_signal_mutex);
@@ -176,32 +161,6 @@ static inline void _wapi_handle_set_signal_state (gpointer handle,
        }
 }
 
-static inline void _wapi_shared_handle_set_signal_state (gpointer handle,
-                                                        gboolean state)
-{
-       guint32 idx = GPOINTER_TO_UINT(handle);
-       struct _WapiHandleUnshared *handle_data;
-       struct _WapiHandle_shared_ref *ref;
-       struct _WapiHandleShared *shared_data;
-       
-       if (!_WAPI_PRIVATE_VALID_SLOT (idx)) {
-               return;
-       }
-       
-       g_assert (_WAPI_SHARED_HANDLE(_wapi_handle_type (handle)));
-       
-       handle_data = &_WAPI_PRIVATE_HANDLES(idx);
-       
-       ref = &handle_data->u.shared;
-       shared_data = &_wapi_shared_layout->handles[ref->offset];
-       shared_data->signalled = state;
-
-#ifdef DEBUG
-       g_message ("%s: signalled shared handle offset 0x%x", __func__,
-                  ref->offset);
-#endif
-}
-
 static inline gboolean _wapi_handle_issignalled (gpointer handle)
 {
        guint32 idx = GPOINTER_TO_UINT(handle);
@@ -209,12 +168,8 @@ static inline gboolean _wapi_handle_issignalled (gpointer handle)
        if (!_WAPI_PRIVATE_VALID_SLOT (idx)) {
                return(FALSE);
        }
-       
-       if (_WAPI_SHARED_HANDLE(_wapi_handle_type (handle))) {
-               return(WAPI_SHARED_HANDLE_DATA(handle).signalled);
-       } else {
-               return(_WAPI_PRIVATE_HANDLES(idx).signalled);
-       }
+
+       return _WAPI_PRIVATE_HANDLES (idx).signalled;
 }
 
 static inline int _wapi_handle_lock_signal_mutex (void)
@@ -249,11 +204,7 @@ static inline int _wapi_handle_lock_handle (gpointer handle)
        }
        
        _wapi_handle_ref (handle);
-       
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               return(0);
-       }
-       
+
        return(mono_os_mutex_lock (&_WAPI_PRIVATE_HANDLES(idx).signal_mutex));
 }
 
@@ -271,10 +222,6 @@ static inline int _wapi_handle_trylock_handle (gpointer handle)
        }
        
        _wapi_handle_ref (handle);
-       
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               return(0);
-       }
 
        ret = mono_os_mutex_trylock (&_WAPI_PRIVATE_HANDLES(idx).signal_mutex);
        if (ret != 0) {
@@ -296,12 +243,7 @@ static inline int _wapi_handle_unlock_handle (gpointer handle)
        if (!_WAPI_PRIVATE_VALID_SLOT (idx)) {
                return(0);
        }
-       
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               _wapi_handle_unref (handle);
-               return(0);
-       }
-       
+
        ret = mono_os_mutex_unlock (&_WAPI_PRIVATE_HANDLES(idx).signal_mutex);
 
        _wapi_handle_unref (handle);
@@ -321,21 +263,6 @@ static inline void _wapi_handle_spin (guint32 ms)
        nanosleep (&sleepytime, NULL);
 }
 
-static inline int _wapi_handle_lock_shared_handles (void)
-{
-       return(_wapi_shm_sem_lock (_WAPI_SHARED_SEM_SHARED_HANDLES));
-}
-
-static inline int _wapi_handle_trylock_shared_handles (void)
-{
-       return(_wapi_shm_sem_trylock (_WAPI_SHARED_SEM_SHARED_HANDLES));
-}
-
-static inline int _wapi_handle_unlock_shared_handles (void)
-{
-       return(_wapi_shm_sem_unlock (_WAPI_SHARED_SEM_SHARED_HANDLES));
-}
-
 static inline int _wapi_namespace_lock (void)
 {
        return(_wapi_shm_sem_lock (_WAPI_SHARED_SEM_NAMESPACE));
index 814d216fe5cc24351bdcef16c47b34d417dcdcee..0dd315176950c2399267ade7665aa14f78b3b0f5 100644 (file)
@@ -120,8 +120,6 @@ struct _WapiHandleUnshared *_wapi_private_handles [_WAPI_PRIVATE_MAX_SLOTS];
 static guint32 _wapi_private_handle_count = 0;
 static guint32 _wapi_private_handle_slot_count = 0;
 
-struct _WapiHandleSharedLayout *_wapi_shared_layout = NULL;
-
 /*
  * If SHM is disabled, this will point to a hash of _WapiFileShare structures, otherwise
  * it will be NULL. We use this instead of _wapi_fileshare_layout to avoid allocating a
@@ -140,11 +138,11 @@ guint32 _wapi_fd_reserve;
  * Threads which wait for multiple handles wait on this one handle, and when a handle
  * is signalled, this handle is signalled too.
  */
-static gpointer _wapi_global_signal_handle;
+gpointer _wapi_global_signal_handle;
 
 /* Point to the mutex/cond inside _wapi_global_signal_handle */
 mono_mutex_t *_wapi_global_signal_mutex;
-pthread_cond_t *_wapi_global_signal_cond;
+mono_cond_t *_wapi_global_signal_cond;
 
 int _wapi_sem_id;
 gboolean _wapi_has_shut_down = FALSE;
@@ -197,8 +195,6 @@ static void handle_cleanup (void)
        
        _wapi_shm_semaphores_remove ();
 
-       g_free (_wapi_shared_layout);
-
        if (file_share_hash) {
                g_hash_table_destroy (file_share_hash);
                mono_os_mutex_destroy (&file_share_hash_mutex);
@@ -246,9 +242,6 @@ wapi_init (void)
 
        _wapi_shm_semaphores_init ();
 
-       _wapi_shared_layout = (_WapiHandleSharedLayout *)g_malloc0 (sizeof (_WapiHandleSharedLayout));
-       g_assert (_wapi_shared_layout != NULL);
-
        _wapi_io_init ();
        mono_os_mutex_init (&scan_mutex);
 
@@ -273,22 +266,6 @@ wapi_cleanup (void)
        handle_cleanup ();
 }
 
-static void _wapi_handle_init_shared (struct _WapiHandleShared *handle,
-                                     WapiHandleType type,
-                                     gpointer handle_specific)
-{
-       g_assert (_wapi_has_shut_down == FALSE);
-       
-       handle->type = type;
-       handle->timestamp = (guint32)(time (NULL) & 0xFFFFFFFF);
-       handle->signalled = FALSE;
-       handle->handle_refs = 1;
-       
-       if (handle_specific != NULL) {
-               memcpy (&handle->u, handle_specific, sizeof (handle->u));
-       }
-}
-
 static size_t _wapi_handle_struct_size (WapiHandleType type)
 {
        size_t type_size;
@@ -347,68 +324,17 @@ static void _wapi_handle_init (struct _WapiHandleUnshared *handle,
        handle->signalled = FALSE;
        handle->ref = 1;
        
-       if (!_WAPI_SHARED_HANDLE(type)) {
-               thr_ret = pthread_cond_init (&handle->signal_cond, NULL);
-               g_assert (thr_ret == 0);
-                               
-               thr_ret = mono_os_mutex_init (&handle->signal_mutex);
-               g_assert (thr_ret == 0);
-
-               if (handle_specific != NULL) {
-                       type_size = _wapi_handle_struct_size (type);
-                       memcpy (&handle->u, handle_specific,
-                               type_size);
-               }
-       }
-}
-
-static guint32 _wapi_handle_new_shared (WapiHandleType type,
-                                       gpointer handle_specific)
-{
-       guint32 offset;
-       static guint32 last = 1;
-       int thr_ret;
-       
-       g_assert (_wapi_has_shut_down == FALSE);
-       
-       /* Leave the first slot empty as a guard */
-again:
-       /* FIXME: expandable array */
-       for(offset = last; offset <_WAPI_HANDLE_INITIAL_COUNT; offset++) {
-               struct _WapiHandleShared *handle = &_wapi_shared_layout->handles[offset];
-               
-               if(handle->type == WAPI_HANDLE_UNUSED) {
-                       thr_ret = _wapi_handle_lock_shared_handles ();
-                       g_assert (thr_ret == 0);
-                       
-                       if (InterlockedCompareExchange ((gint32 *)&handle->type, type, WAPI_HANDLE_UNUSED) == WAPI_HANDLE_UNUSED) {
-                               last = offset + 1;
+       thr_ret = mono_os_cond_init (&handle->signal_cond);
+       g_assert (thr_ret == 0);
                        
-                               _wapi_handle_init_shared (handle, type,
-                                                         handle_specific);
-
-                               _wapi_handle_unlock_shared_handles ();
-                               
-                               return(offset);
-                       } else {
-                               /* Someone else beat us to it, just
-                                * continue looking
-                                */
-                       }
-
-                       _wapi_handle_unlock_shared_handles ();
-               }
-       }
+       thr_ret = mono_os_mutex_init (&handle->signal_mutex);
+       g_assert (thr_ret == 0);
 
-       if(last > 1) {
-               /* Try again from the beginning */
-               last = 1;
-               goto again;
+       if (handle_specific != NULL) {
+               type_size = _wapi_handle_struct_size (type);
+               memcpy (&handle->u, handle_specific,
+                       type_size);
        }
-
-       /* Will need to expand the array.  The caller will sort it out */
-
-       return(0);
 }
 
 /*
@@ -515,130 +441,8 @@ _wapi_handle_new (WapiHandleType type, gpointer handle_specific)
        handle = GUINT_TO_POINTER (handle_idx);
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Allocated new handle %p", __func__, handle);
-       
-       if (_WAPI_SHARED_HANDLE(type)) {
-               /* Add the shared section too */
-               guint32 ref;
-               
-               ref = _wapi_handle_new_shared (type, handle_specific);
-               if (ref == 0) {
-                       ref = _wapi_handle_new_shared (type, handle_specific);
-                       if (ref == 0) {
-                               /* FIXME: grow the arrays */
-                               handle = _WAPI_HANDLE_INVALID;
-                               goto done;
-                       }
-               }
-               
-               _WAPI_PRIVATE_HANDLES(handle_idx).u.shared.offset = ref;
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: New shared handle at offset 0x%x", __func__,
-                          ref);
-       }
-               
-done:
-       return(handle);
-}
-
-gpointer _wapi_handle_new_from_offset (WapiHandleType type, guint32 offset,
-                                      gboolean timestamp)
-{
-       guint32 handle_idx = 0;
-       gpointer handle = INVALID_HANDLE_VALUE;
-       int thr_ret, i, k;
-       struct _WapiHandleShared *shared;
-       
-       g_assert (_wapi_has_shut_down == FALSE);
-       
-       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Creating new handle of type %s to offset %d", __func__,
-                  _wapi_handle_typename[type], offset);
-
-       g_assert(!_WAPI_FD_HANDLE(type));
-       g_assert(_WAPI_SHARED_HANDLE(type));
-       g_assert(offset != 0);
-
-       shared = &_wapi_shared_layout->handles[offset];
-       if (timestamp) {
-               guint32 now = (guint32)(time (NULL) & 0xFFFFFFFF);
-               /* Bump up the timestamp for this offset */
-               InterlockedExchange ((gint32 *)&shared->timestamp, now);
-       }
-               
-       thr_ret = mono_os_mutex_lock (&scan_mutex);
-       g_assert (thr_ret == 0);
-
-       for (i = SLOT_INDEX (0); i < _wapi_private_handle_slot_count; i++) {
-               if (_wapi_private_handles [i]) {
-                       for (k = SLOT_OFFSET (0); k < _WAPI_HANDLE_INITIAL_COUNT; k++) {
-                               struct _WapiHandleUnshared *handle_data = &_wapi_private_handles [i][k];
-               
-                               if (handle_data->type == type &&
-                                       handle_data->u.shared.offset == offset) {
-                                       handle = GUINT_TO_POINTER (i * _WAPI_HANDLE_INITIAL_COUNT + k);
-                                       goto first_pass_done;
-                               }
-                       }
-               }
-       }
-
-first_pass_done:
-       thr_ret = mono_os_mutex_unlock (&scan_mutex);
-       g_assert (thr_ret == 0);
 
-       if (handle != INVALID_HANDLE_VALUE) {
-               _wapi_handle_ref (handle);
-
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Returning old handle %p referencing 0x%x",
-                          __func__, handle, offset);
-               return (handle);
-       }
-
-       /* Prevent entries expiring under us as we search */
-       thr_ret = _wapi_handle_lock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
-       if (shared->type == WAPI_HANDLE_UNUSED) {
-               /* Someone deleted this handle while we were working */
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Handle at 0x%x unused", __func__, offset);
-               goto done;
-       }
-
-       if (shared->type != type) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Wrong type at %d 0x%x! Found %s wanted %s",
-                          __func__, offset, offset,
-                          _wapi_handle_typename[shared->type],
-                          _wapi_handle_typename[type]);
-               goto done;
-       }
-       
-       thr_ret = mono_os_mutex_lock (&scan_mutex);
-       g_assert (thr_ret == 0);
-       
-       while ((handle_idx = _wapi_handle_new_internal (type, NULL)) == 0) {
-               /* Try and expand the array, and have another go */
-               int idx = SLOT_INDEX (_wapi_private_handle_count);
-               _wapi_private_handles [idx] = g_new0 (struct _WapiHandleUnshared,
-                                               _WAPI_HANDLE_INITIAL_COUNT);
-
-               _wapi_private_handle_count += _WAPI_HANDLE_INITIAL_COUNT;
-               _wapi_private_handle_slot_count ++;
-       }
-               
-       thr_ret = mono_os_mutex_unlock (&scan_mutex);
-       g_assert (thr_ret == 0);
-               
-       /* Make sure we left the space for fd mappings */
-       g_assert (handle_idx >= _wapi_fd_reserve);
-       
-       handle = GUINT_TO_POINTER (handle_idx);
-               
-       _WAPI_PRIVATE_HANDLES(handle_idx).u.shared.offset = offset;
-       InterlockedIncrement ((gint32 *)&shared->handle_refs);
-       
-       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Allocated new handle %p referencing 0x%x (shared refs %d)", __func__, handle, offset, shared->handle_refs);
-       
 done:
-       _wapi_handle_unlock_shared_handles ();
-
        return(handle);
 }
 
@@ -672,8 +476,7 @@ gpointer _wapi_handle_new_fd (WapiHandleType type, int fd,
                   _wapi_handle_typename[type]);
        
        g_assert(_WAPI_FD_HANDLE(type));
-       g_assert(!_WAPI_SHARED_HANDLE(type));
-       
+
        if (fd >= _wapi_fd_reserve) {
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: fd %d is too big", __func__, fd);
 
@@ -708,7 +511,8 @@ gpointer _wapi_handle_new_fd (WapiHandleType type, int fd,
        return(GUINT_TO_POINTER(fd));
 }
 
-gboolean _wapi_lookup_handle (gpointer handle, WapiHandleType type,
+gboolean 
+_wapi_lookup_handle (gpointer handle, WapiHandleType type,
                              gpointer *handle_specific)
 {
        struct _WapiHandleUnshared *handle_data;
@@ -732,23 +536,7 @@ gboolean _wapi_lookup_handle (gpointer handle, WapiHandleType type,
                return(FALSE);
        }
        
-       if (_WAPI_SHARED_HANDLE(type)) {
-               struct _WapiHandle_shared_ref *ref;
-               struct _WapiHandleShared *shared_handle_data;
-                       
-               ref = &handle_data->u.shared;
-               shared_handle_data = &_wapi_shared_layout->handles[ref->offset];
-               
-               if (shared_handle_data->type != type) {
-                       /* The handle must have been deleted on us
-                        */
-                       return (FALSE);
-               }
-               
-               *handle_specific = &shared_handle_data->u;
-       } else {
-               *handle_specific = &handle_data->u;
-       }
+       *handle_specific = &handle_data->u;
        
        return(TRUE);
 }
@@ -799,7 +587,6 @@ gpointer _wapi_search_handle (WapiHandleType type,
                              gboolean search_shared)
 {
        struct _WapiHandleUnshared *handle_data = NULL;
-       struct _WapiHandleShared *shared = NULL;
        gpointer ret = NULL;
        guint32 i, k;
        gboolean found = FALSE;
@@ -818,11 +605,6 @@ gpointer _wapi_search_handle (WapiHandleType type,
                                        if (check (ret, user_data) == TRUE) {
                                                _wapi_handle_ref (ret);
                                                found = TRUE;
-
-                                               if (_WAPI_SHARED_HANDLE (type)) {
-                                                       shared = &_wapi_shared_layout->handles[i];
-                                               }
-                                       
                                                break;
                                        }
                                }
@@ -833,147 +615,78 @@ gpointer _wapi_search_handle (WapiHandleType type,
        thr_ret = mono_os_mutex_unlock (&scan_mutex);
        g_assert (thr_ret == 0);
 
-       if (!found && search_shared && _WAPI_SHARED_HANDLE (type)) {
-               /* Not found yet, so search the shared memory too */
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Looking at other shared handles...", __func__);
-
-               for (i = 0; i < _WAPI_HANDLE_INITIAL_COUNT; i++) {
-                       shared = &_wapi_shared_layout->handles[i];
-                       
-                       if (shared->type == type) {
-                               /* Tell new_from_offset to not
-                                * timestamp this handle, because
-                                * otherwise it will ping every handle
-                                * in the list and they will never
-                                * expire
-                                */
-                               ret = _wapi_handle_new_from_offset (type, i,
-                                                                   FALSE);
-                               if (ret == INVALID_HANDLE_VALUE) {
-                                       /* This handle was deleted
-                                        * while we were looking at it
-                                        */
-                                       continue;
-                               }
-                               
-                               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Opened tmp handle %p (type %s) from offset %d", __func__, ret, _wapi_handle_typename[type], i);
-
-                               /* It's possible that the shared part
-                                * of this handle has now been blown
-                                * away (after new_from_offset
-                                * successfully opened it,) if its
-                                * timestamp is too old.  The check
-                                * function needs to be aware of this,
-                                * and cope if the handle has
-                                * vanished.
-                                */
-                               if (check (ret, user_data) == TRUE) {
-                                       /* Timestamp this handle, but make
-                                        * sure it still exists first
-                                        */
-                                       thr_ret = _wapi_handle_lock_shared_handles ();
-                                       g_assert (thr_ret == 0);
-                                       
-                                       if (shared->type == type) {
-                                               guint32 now = (guint32)(time (NULL) & 0xFFFFFFFF);
-                                               InterlockedExchange ((gint32 *)&shared->timestamp, now);
-
-                                               found = TRUE;
-                                               handle_data = &_WAPI_PRIVATE_HANDLES(GPOINTER_TO_UINT(ret));
-                                       
-                                               _wapi_handle_unlock_shared_handles ();
-                                               break;
-                                       } else {
-                                               /* It's been deleted,
-                                                * so just keep
-                                                * looking
-                                                */
-                                               _wapi_handle_unlock_shared_handles ();
-                                       }
-                               }
-                               
-                               /* This isn't the handle we're looking
-                                * for, so drop the reference we took
-                                * in _wapi_handle_new_from_offset ()
-                                */
-                               _wapi_handle_unref (ret);
-                       }
-               }
-       }
-       
        if (!found) {
                ret = NULL;
                goto done;
        }
        
        if(handle_specific != NULL) {
-               if (_WAPI_SHARED_HANDLE(type)) {
-                       g_assert(shared->type == type);
-                       
-                       *handle_specific = &shared->u;
-               } else {
-                       *handle_specific = &handle_data->u;
-               }
+               *handle_specific = &handle_data->u;
        }
 
 done:
        return(ret);
 }
 
-/* Returns the offset of the metadata array, or -1 on error, or 0 for
- * not found (0 is not a valid offset)
+/* Returns the offset of the metadata array, or _WAPI_HANDLE_INVALID on error, or NULL for
+ * not found
  */
-gint32 _wapi_search_handle_namespace (WapiHandleType type,
+gpointer _wapi_search_handle_namespace (WapiHandleType type,
                                      gchar *utf8_name)
 {
-       struct _WapiHandleShared *shared_handle_data;
-       guint32 i;
-       gint32 ret = 0;
+       struct _WapiHandleUnshared *handle_data;
+       guint32 i, k;
+       gpointer ret = NULL;
        int thr_ret;
        
-       g_assert(_WAPI_SHARED_HANDLE(type));
+       g_assert(_WAPI_SHARED_NAMESPACE(type));
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Lookup for handle named [%s] type %s", __func__,
                   utf8_name, _wapi_handle_typename[type]);
 
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = mono_os_mutex_lock (&scan_mutex);
        g_assert (thr_ret == 0);
        
-       for(i = 1; i < _WAPI_HANDLE_INITIAL_COUNT; i++) {
-               WapiSharedNamespace *sharedns;
-               
-               shared_handle_data = &_wapi_shared_layout->handles[i];
-
-               /* Check mutex, event, semaphore, timer, job and
-                * file-mapping object names.  So far only mutex,
-                * semaphore and event are implemented.
-                */
-               if (!_WAPI_SHARED_NAMESPACE (shared_handle_data->type)) {
+       for(i = SLOT_INDEX (0); i < _wapi_private_handle_slot_count; i++) {
+               if (!_wapi_private_handles [i])
                        continue;
-               }
+               for (k = SLOT_OFFSET (0); k < _WAPI_HANDLE_INITIAL_COUNT; k++) {
+                       WapiSharedNamespace *sharedns;
+                       
+                       handle_data = &_wapi_private_handles [i][k];
 
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: found a shared namespace handle at 0x%x (type %s)", __func__, i, _wapi_handle_typename[shared_handle_data->type]);
+                       /* Check mutex, event, semaphore, timer, job and
+                        * file-mapping object names.  So far only mutex,
+                        * semaphore and event are implemented.
+                        */
+                       if (!_WAPI_SHARED_NAMESPACE (handle_data->type)) {
+                               continue;
+                       }
 
-               sharedns=(WapiSharedNamespace *)&shared_handle_data->u;
-                       
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: name is [%s]", __func__, sharedns->name);
-
-               if (strcmp (sharedns->name, utf8_name) == 0) {
-                       if (shared_handle_data->type != type) {
-                               /* Its the wrong type, so fail now */
-                               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: handle 0x%x matches name but is wrong type: %s", __func__, i, _wapi_handle_typename[shared_handle_data->type]);
-                               ret = -1;
-                               goto done;
-                       } else {
-                               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: handle 0x%x matches name and type", __func__, i);
-                               ret = i;
-                               goto done;
+                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: found a shared namespace handle at 0x%x (type %s)", __func__, i, _wapi_handle_typename[handle_data->type]);
+
+                       sharedns=(WapiSharedNamespace *)&handle_data->u;
+                               
+                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: name is [%s]", __func__, sharedns->name);
+
+                       if (strcmp (sharedns->name, utf8_name) == 0) {
+                               if (handle_data->type != type) {
+                                       /* Its the wrong type, so fail now */
+                                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: handle 0x%x matches name but is wrong type: %s", __func__, i, _wapi_handle_typename[handle_data->type]);
+                                       ret = _WAPI_HANDLE_INVALID;
+                                       goto done;
+                               } else {
+                                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: handle 0x%x matches name and type", __func__, i);
+                                       ret = handle_data;
+                                       goto done;
+                               }
                        }
                }
        }
 
 done:
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = mono_os_mutex_unlock (&scan_mutex);
+       g_assert (thr_ret == 0);
        
        return(ret);
 }
@@ -996,17 +709,6 @@ void _wapi_handle_ref (gpointer handle)
        handle_data = &_WAPI_PRIVATE_HANDLES(idx);
        
        InterlockedIncrement ((gint32 *)&handle_data->ref);
-
-       /* It's possible for processes to exit before getting around
-        * to updating timestamps in the collection thread, so if a
-        * shared handle is reffed do the timestamp here as well just
-        * to make sure.
-        */
-       if (_WAPI_SHARED_HANDLE(handle_data->type)) {
-               struct _WapiHandleShared *shared_data = &_wapi_shared_layout->handles[handle_data->u.shared.offset];
-               guint32 now = (guint32)(time (NULL) & 0xFFFFFFFF);
-               InterlockedExchange ((gint32 *)&shared_data->timestamp, now);
-       }
        
 #ifdef DEBUG_REFS
        g_message ("%s: %s handle %p ref now %d", __func__, 
@@ -1055,20 +757,9 @@ static void _wapi_handle_unref_full (gpointer handle, gboolean ignore_private_bu
                 * same fd racing the memset())
                 */
                struct _WapiHandleUnshared handle_data;
-               struct _WapiHandleShared shared_handle_data;
                WapiHandleType type = _WAPI_PRIVATE_HANDLES(idx).type;
                void (*close_func)(gpointer, gpointer) = _wapi_handle_ops_get_close_func (type);
-               gboolean is_shared = _WAPI_SHARED_HANDLE(type);
 
-               if (is_shared) {
-                       /* If this is a shared handle we need to take
-                        * the shared lock outside of the scan_mutex
-                        * lock to avoid deadlocks
-                        */
-                       thr_ret = _wapi_handle_lock_shared_handles ();
-                       g_assert (thr_ret == 0);
-               }
-               
                thr_ret = mono_os_mutex_lock (&scan_mutex);
 
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Destroying handle %p", __func__, handle);
@@ -1080,46 +771,25 @@ static void _wapi_handle_unref_full (gpointer handle, gboolean ignore_private_bu
                        sizeof(_WAPI_PRIVATE_HANDLES(idx).u));
 
                _WAPI_PRIVATE_HANDLES(idx).type = WAPI_HANDLE_UNUSED;
-               
-               if (!is_shared) {
-                       /* Destroy the mutex and cond var.  We hope nobody
-                        * tried to grab them between the handle unlock and
-                        * now, but pthreads doesn't have a
-                        * "unlock_and_destroy" atomic function.
-                        */
-                       thr_ret = mono_os_mutex_destroy (&_WAPI_PRIVATE_HANDLES(idx).signal_mutex);
-                       /*WARNING gross hack to make cleanup not crash when exiting without the whole runtime teardown.*/
-                       if (thr_ret == EBUSY && ignore_private_busy_handles) {
-                               early_exit = TRUE;
-                       } else {
-                               if (thr_ret != 0)
-                                       g_error ("Error destroying handle %p mutex due to %d\n", handle, thr_ret);
-
-                               thr_ret = pthread_cond_destroy (&_WAPI_PRIVATE_HANDLES(idx).signal_cond);
-                               if (thr_ret == EBUSY && ignore_private_busy_handles)
-                                       early_exit = TRUE;
-                               else if (thr_ret != 0)
-                                       g_error ("Error destroying handle %p cond var due to %d\n", handle, thr_ret);
-                       }
-               } else {
-                       struct _WapiHandleShared *shared = &_wapi_shared_layout->handles[handle_data.u.shared.offset];
 
-                       memcpy (&shared_handle_data, shared,
-                               sizeof (struct _WapiHandleShared));
-                       
-                       /* It's possible that this handle is already
-                        * pointing at a deleted shared section
-                        */
-#ifdef DEBUG_REFS
-                       g_message ("%s: %s handle %p shared refs before dec %d", __func__, _wapi_handle_typename[type], handle, shared->handle_refs);
-#endif
+               /* Destroy the mutex and cond var.  We hope nobody
+                * tried to grab them between the handle unlock and
+                * now, but pthreads doesn't have a
+                * "unlock_and_destroy" atomic function.
+                */
+               thr_ret = mono_os_mutex_destroy (&_WAPI_PRIVATE_HANDLES(idx).signal_mutex);
+               /*WARNING gross hack to make cleanup not crash when exiting without the whole runtime teardown.*/
+               if (thr_ret == EBUSY && ignore_private_busy_handles) {
+                       early_exit = TRUE;
+               } else {
+                       if (thr_ret != 0)
+                               g_error ("Error destroying handle %p mutex due to %d\n", handle, thr_ret);
 
-                       if (shared->handle_refs > 0) {
-                               shared->handle_refs--;
-                               if (shared->handle_refs == 0) {
-                                       memset (shared, '\0', sizeof (struct _WapiHandleShared));
-                               }
-                       }
+                       thr_ret = mono_os_cond_destroy (&_WAPI_PRIVATE_HANDLES(idx).signal_cond);
+                       if (thr_ret == EBUSY && ignore_private_busy_handles)
+                               early_exit = TRUE;
+                       else if (thr_ret != 0)
+                               g_error ("Error destroying handle %p cond var due to %d\n", handle, thr_ret);
                }
 
                thr_ret = mono_os_mutex_unlock (&scan_mutex);
@@ -1127,16 +797,9 @@ static void _wapi_handle_unref_full (gpointer handle, gboolean ignore_private_bu
 
                if (early_exit)
                        return;
-               if (is_shared) {
-                       _wapi_handle_unlock_shared_handles ();
-               }
                
                if (close_func != NULL) {
-                       if (is_shared) {
-                               close_func (handle, &shared_handle_data.u);
-                       } else {
-                               close_func (handle, &handle_data.u);
-                       }
+                       close_func (handle, &handle_data.u);
                }
        }
 }
@@ -1358,9 +1021,6 @@ gboolean _wapi_handle_count_signalled_handles (guint32 numhandles,
        
        /* Lock all the handles, with backoff */
 again:
-       thr_ret = _wapi_handle_lock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
        for(i=0; i<numhandles; i++) {
                gpointer handle = handles[i];
                guint32 idx = GPOINTER_TO_UINT(handle);
@@ -1377,9 +1037,6 @@ again:
                        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: attempt failed for %p: %s", __func__,
                                   handle, strerror (thr_ret));
 
-                       thr_ret = _wapi_handle_unlock_shared_handles ();
-                       g_assert (thr_ret == 0);
-                       
                        while (i--) {
                                handle = handles[i];
                                idx = GPOINTER_TO_UINT(handle);
@@ -1422,10 +1079,7 @@ again:
 
                if(((_wapi_handle_test_capabilities (handle, WAPI_HANDLE_CAP_OWN)==TRUE) &&
                    (_wapi_handle_ops_isowned (handle) == TRUE)) ||
-                  (_WAPI_SHARED_HANDLE(type) &&
-                   WAPI_SHARED_HANDLE_DATA(handle).signalled == TRUE) ||
-                  (!_WAPI_SHARED_HANDLE(type) &&
-                   _WAPI_PRIVATE_HANDLES(idx).signalled == TRUE)) {
+                  (_wapi_handle_issignalled (handle))) {
                        count++;
                        
                        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Handle %p signalled", __func__,
@@ -1457,9 +1111,6 @@ void _wapi_handle_unlock_handles (guint32 numhandles, gpointer *handles)
        guint32 i;
        int thr_ret;
        
-       thr_ret = _wapi_handle_unlock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
        for(i=0; i<numhandles; i++) {
                gpointer handle = handles[i];
                
@@ -1470,16 +1121,10 @@ void _wapi_handle_unlock_handles (guint32 numhandles, gpointer *handles)
        }
 }
 
-int
-_wapi_handle_timedwait_signal (guint32 timeout, gboolean poll, gboolean *alerted)
-{
-       return _wapi_handle_timedwait_signal_handle (_wapi_global_signal_handle, timeout, TRUE, poll, alerted);
-}
-
 static void
 signal_handle_and_unref (gpointer handle)
 {
-       pthread_cond_t *cond;
+       mono_cond_t *cond;
        mono_mutex_t *mutex;
        guint32 idx;
 
@@ -1502,94 +1147,69 @@ signal_handle_and_unref (gpointer handle)
 }
 
 int
-_wapi_handle_timedwait_signal_handle (gpointer handle, guint32 timeout, gboolean alertable, gboolean poll, gboolean *alerted)
+_wapi_handle_timedwait_signal_handle (gpointer handle, guint32 timeout, gboolean poll, gboolean *alerted)
 {
+       guint32 idx;
+       int res;
+       mono_cond_t *cond;
+       mono_mutex_t *mutex;
+
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: waiting for %p (type %s)", __func__, handle,
                   _wapi_handle_typename[_wapi_handle_type (handle)]);
 
-       if (alertable)
-               g_assert (alerted);
-
        if (alerted)
                *alerted = FALSE;
 
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               if (WAPI_SHARED_HANDLE_DATA(handle).signalled == TRUE) {
-                       return (0);
-               }
-               if (timeout != INFINITE) {
-                       if (timeout < 100) {
-                               /* FIXME: Real timeout is less than
-                                * 100ms time, but is it really worth
-                                * calculating to the exact ms?
-                                */
-                               _wapi_handle_spin (100);
+       idx = GPOINTER_TO_UINT(handle);
 
-                               if (WAPI_SHARED_HANDLE_DATA(handle).signalled == TRUE) {
-                                       return (0);
-                               } else {
-                                       return (ETIMEDOUT);
-                               }
-                       }
-               }
-               _wapi_handle_spin (100);
-               return (0);
-               
-       } else {
-               guint32 idx = GPOINTER_TO_UINT(handle);
-               int res;
-               pthread_cond_t *cond;
-               mono_mutex_t *mutex;
-
-               if (alertable) {
-                       mono_thread_info_install_interrupt (signal_handle_and_unref, handle, alerted);
-                       if (*alerted)
-                               return 0;
-                       _wapi_handle_ref (handle);
-               }
+       if (alerted) {
+               mono_thread_info_install_interrupt (signal_handle_and_unref, handle, alerted);
+               if (*alerted)
+                       return 0;
+               _wapi_handle_ref (handle);
+       }
 
-               cond = &_WAPI_PRIVATE_HANDLES (idx).signal_cond;
-               mutex = &_WAPI_PRIVATE_HANDLES (idx).signal_mutex;
+       cond = &_WAPI_PRIVATE_HANDLES (idx).signal_cond;
+       mutex = &_WAPI_PRIVATE_HANDLES (idx).signal_mutex;
 
-               if (!poll) {
+       if (!poll) {
+               res = mono_os_cond_timedwait (cond, mutex, timeout);
+       } else {
+               /* This is needed when waiting for process handles */
+               if (!alerted) {
+                       /*
+                        * pthread_cond_(timed)wait() can return 0 even if the condition was not
+                        * signalled.  This happens at least on Darwin.  We surface this, i.e., we
+                        * get spurious wake-ups.
+                        *
+                        * http://pubs.opengroup.org/onlinepubs/007908775/xsh/pthread_cond_wait.html
+                        */
                        res = mono_os_cond_timedwait (cond, mutex, timeout);
                } else {
-                       /* This is needed when waiting for process handles */
-                       if (!alertable) {
-                               /*
-                                * pthread_cond_(timed)wait() can return 0 even if the condition was not
-                                * signalled.  This happens at least on Darwin.  We surface this, i.e., we
-                                * get spurious wake-ups.
-                                *
-                                * http://pubs.opengroup.org/onlinepubs/007908775/xsh/pthread_cond_wait.html
-                                */
+                       if (timeout < 100) {
+                               /* Real timeout is less than 100ms time */
                                res = mono_os_cond_timedwait (cond, mutex, timeout);
                        } else {
-                               if (timeout < 100) {
-                                       /* Real timeout is less than 100ms time */
-                                       res = mono_os_cond_timedwait (cond, mutex, timeout);
-                               } else {
-                                       res = mono_os_cond_timedwait (cond, mutex, 100);
+                               res = mono_os_cond_timedwait (cond, mutex, 100);
 
-                                       /* Mask the fake timeout, this will cause
-                                        * another poll if the cond was not really signaled
-                                        */
-                                       if (res == ETIMEDOUT)
-                                               res = 0;
-                               }
+                               /* Mask the fake timeout, this will cause
+                                * another poll if the cond was not really signaled
+                                */
+                               if (res == ETIMEDOUT)
+                                       res = 0;
                        }
                }
+       }
 
-               if (alertable) {
-                       mono_thread_info_uninstall_interrupt (alerted);
-                       if (!*alerted) {
-                               /* if it is alerted, then the handle is unref in the interrupt callback */
-                               _wapi_handle_unref (handle);
-                       }
+       if (alerted) {
+               mono_thread_info_uninstall_interrupt (alerted);
+               if (!*alerted) {
+                       /* if it is alerted, then the handle is unref in the interrupt callback */
+                       _wapi_handle_unref (handle);
                }
-
-               return res;
        }
+
+       return res;
 }
 
 void
@@ -1629,11 +1249,6 @@ gboolean _wapi_handle_get_or_set_share (guint64 device, guint64 inode,
        int thr_ret;
        gboolean exists = FALSE;
 
-       /* Prevents entries from expiring under us as we search
-        */
-       thr_ret = _wapi_handle_lock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
        /* Prevent new entries racing with us */
        thr_ret = _wapi_shm_sem_lock (_WAPI_SHARED_SEM_FILESHARE);
        g_assert (thr_ret == 0);
@@ -1681,123 +1296,9 @@ gboolean _wapi_handle_get_or_set_share (guint64 device, guint64 inode,
        
        thr_ret = _wapi_shm_sem_unlock (_WAPI_SHARED_SEM_FILESHARE);
 
-       _wapi_handle_unlock_shared_handles ();
-
        return(exists);
 }
 
-/* If we don't have the info in /proc, check if the process that
- * opened this share info is still there (it's not a perfect method,
- * due to pid reuse)
- */
-static void _wapi_handle_check_share_by_pid (struct _WapiFileShare *share_info)
-{
-#if defined(__native_client__)
-       g_assert_not_reached ();
-#elif defined(HAVE_KILL)
-       if (kill (share_info->opened_by_pid, 0) == -1 &&
-           (errno == ESRCH ||
-            errno == EPERM)) {
-               /* It's gone completely (or there's a new process
-                * owned by someone else) so mark this share info as
-                * dead
-                */
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Didn't find it, destroying entry", __func__);
-
-               _wapi_free_share_info (share_info);
-       }
-#endif
-}
-
-#ifdef __linux__
-/* Scan /proc/<pids>/fd/ for open file descriptors to the file in
- * question.  If there are none, reset the share info.
- *
- * This implementation is Linux-specific; legacy systems will have to
- * implement their own ways of finding out if a particular file is
- * open by a process.
- */
-void _wapi_handle_check_share (struct _WapiFileShare *share_info, int fd)
-{
-       gboolean found = FALSE, proc_fds = FALSE;
-       int thr_ret, i;
-       
-       /* Prevents entries from expiring under us if we remove this
-        * one
-        */
-       thr_ret = _wapi_handle_lock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
-       /* Prevent new entries racing with us */
-       thr_ret = _wapi_shm_sem_lock (_WAPI_SHARED_SEM_FILESHARE);
-       g_assert (thr_ret == 0);
-       
-       /* If there is no /proc, there's nothing more we can do here */
-       if (access ("/proc", F_OK) == -1) {
-               _wapi_handle_check_share_by_pid (share_info);
-               goto done;
-       }
-
-       /* If there's another handle that thinks it owns this fd, then even
-        * if the fd has been closed behind our back consider it still owned.
-        * See bugs 75764 and 75891
-        */
-       for (i = 0; i < _wapi_fd_reserve; i++) {
-               if (_wapi_private_handles [SLOT_INDEX (i)]) {
-                       struct _WapiHandleUnshared *handle = &_WAPI_PRIVATE_HANDLES(i);
-
-                       if (i != fd &&
-                               handle->type == WAPI_HANDLE_FILE) {
-                               struct _WapiHandle_file *file_handle = &handle->u.file;
-
-                               if (file_handle->share_info == share_info) {
-                                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: handle 0x%x has this file open!",
-                                                          __func__, i);
-
-                                       goto done;
-                               }
-                       }
-               }
-       }
-
-       if (proc_fds == FALSE) {
-               _wapi_handle_check_share_by_pid (share_info);
-       } else if (found == FALSE) {
-               /* Blank out this entry, as it is stale */
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Didn't find it, destroying entry", __func__);
-
-               _wapi_free_share_info (share_info);
-       }
-
-done:
-       thr_ret = _wapi_shm_sem_unlock (_WAPI_SHARED_SEM_FILESHARE);
-
-       _wapi_handle_unlock_shared_handles ();
-}
-#else
-//
-// Other implementations (non-Linux)
-//
-void _wapi_handle_check_share (struct _WapiFileShare *share_info, int fd)
-{
-       int thr_ret;
-       
-       /* Prevents entries from expiring under us if we remove this
-        * one */
-       thr_ret = _wapi_handle_lock_shared_handles ();
-       g_assert (thr_ret == 0);
-       
-       /* Prevent new entries racing with us */
-       thr_ret = _wapi_shm_sem_lock (_WAPI_SHARED_SEM_FILESHARE);
-       g_assert (thr_ret == 0);
-       
-       _wapi_handle_check_share_by_pid (share_info);
-
-       thr_ret = _wapi_shm_sem_unlock (_WAPI_SHARED_SEM_FILESHARE);
-       _wapi_handle_unlock_shared_handles ();
-}
-#endif
-
 void _wapi_handle_dump (void)
 {
        struct _WapiHandleUnshared *handle_data;
index 5d10b370a9c8309a629414a236804a9d1a7962c6..145529ed53203992eb78769dea054d0ca7d5b780 100644 (file)
@@ -1454,31 +1454,6 @@ share_allows_delete (struct stat *statbuf, struct _WapiFileShare **share_info)
 
        return(TRUE);
 }
-static gboolean share_check (struct stat *statbuf, guint32 sharemode,
-                            guint32 fileaccess,
-                            struct _WapiFileShare **share_info, int fd)
-{
-       if (share_allows_open (statbuf, sharemode, fileaccess,
-                              share_info) == TRUE) {
-               return (TRUE);
-       }
-       
-       /* Got a share violation.  Double check that the file is still
-        * open by someone, in case a process crashed while still
-        * holding a file handle.  This will also cope with someone
-        * using Mono.Posix to close the file.  This is cheaper and
-        * less intrusive to other processes than initiating a handle
-        * collection.
-        */
-
-       _wapi_handle_check_share (*share_info, fd);
-       if (share_allows_open (statbuf, sharemode, fileaccess,
-                              share_info) == TRUE) {
-               return (TRUE);
-       }
-
-       return(share_allows_open (statbuf, sharemode, fileaccess, share_info));
-}
 
 /**
  * CreateFile:
@@ -1607,8 +1582,8 @@ gpointer CreateFile(const gunichar2 *name, guint32 fileaccess,
        statbuf.st_ino = g_str_hash(filename);
 #endif
 
-       if (share_check (&statbuf, sharemode, fileaccess,
-                        &file_handle.share_info, fd) == FALSE) {
+       if (share_allows_open (&statbuf, sharemode, fileaccess,
+                        &file_handle.share_info) == FALSE) {
                SetLastError (ERROR_SHARING_VIOLATION);
                g_free (filename);
                close (fd);
index 4faa3b720233cd3281fd9708c0ad7a94359ae53c..21eaaac6705637f51b228decb400c393c92251b0 100644 (file)
@@ -22,7 +22,6 @@ extern void _wapi_mutex_details (gpointer handle_info);
 
 struct _WapiHandle_mutex
 {
-       pid_t pid;
        pthread_t tid;
        guint32 recursion;
 };
@@ -30,7 +29,6 @@ struct _WapiHandle_mutex
 struct _WapiHandle_namedmutex 
 {
        WapiSharedNamespace sharedns;
-       pid_t pid;
        pthread_t tid;
        guint32 recursion;
 };
index 730363e6302b1fa16a42da9722eb0690ea970402..9bcff16fe22fdf4b819366a5f911738e914f7d42 100644 (file)
@@ -44,11 +44,9 @@ void _wapi_mutex_details (gpointer handle_info)
        struct _WapiHandle_mutex *mut = (struct _WapiHandle_mutex *)handle_info;
        
 #ifdef PTHREAD_POINTER_ID
-       g_print ("own: %5d:%5p, count: %5u", mut->pid, mut->tid,
-                mut->recursion);
+       g_print ("own: %5p, count: %5u", mut->tid, mut->recursion);
 #else
-       g_print ("own: %5d:%5ld, count: %5u", mut->pid, mut->tid,
-                mut->recursion);
+       g_print ("own: %5ld, count: %5u", mut->tid, mut->recursion);
 #endif
 }
 
@@ -116,13 +114,11 @@ static gboolean mutex_own (gpointer handle)
 
        _wapi_handle_set_signal_state (handle, FALSE, FALSE);
        
-       mutex_handle->pid = _wapi_getpid ();
        mutex_handle->tid = pthread_self ();
        mutex_handle->recursion++;
 
-       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p locked %d times by %d:%ld", __func__,
-                  handle, mutex_handle->recursion, mutex_handle->pid,
-                  mutex_handle->tid);
+       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p locked %d times by %ld", __func__,
+               handle, mutex_handle->recursion, mutex_handle->tid);
 
        return(TRUE);
 }
@@ -142,15 +138,14 @@ static gboolean mutex_is_owned (gpointer handle)
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: testing ownership mutex handle %p", __func__, handle);
 
-       if (mutex_handle->recursion > 0 &&
-           mutex_handle->pid == _wapi_getpid () &&
-           pthread_equal (mutex_handle->tid, pthread_self ())) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p owned by %d:%ld", __func__,
-                          handle, _wapi_getpid (), pthread_self ());
+       if (mutex_handle->recursion > 0 && pthread_equal (mutex_handle->tid, pthread_self ())) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p owned by %ld", __func__,
+                       handle, pthread_self ());
 
                return(TRUE);
        } else {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p not owned by %d:%ld, but locked %d times by %d:%ld", __func__, handle, _wapi_getpid (), pthread_self (), mutex_handle->recursion, mutex_handle->pid, mutex_handle->tid);
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p not owned by %ld, but locked %d times by %ld", __func__,
+                       handle, pthread_self (), mutex_handle->recursion, mutex_handle->tid);
 
                return(FALSE);
        }
@@ -179,15 +174,13 @@ static gboolean namedmutex_own (gpointer handle)
 
        _wapi_thread_own_mutex (handle);
 
-       namedmutex_handle->pid = _wapi_getpid ();
        namedmutex_handle->tid = pthread_self ();
        namedmutex_handle->recursion++;
 
-       _wapi_shared_handle_set_signal_state (handle, FALSE);
+       _wapi_handle_set_signal_state (handle, FALSE, FALSE);
 
-       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p locked %d times by %d:%ld", __func__,
-                  handle, namedmutex_handle->recursion,
-                  namedmutex_handle->pid, namedmutex_handle->tid);
+       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p locked %d times by %ld", __func__,
+               handle, namedmutex_handle->recursion, namedmutex_handle->tid);
        
        return(TRUE);
 }
@@ -207,15 +200,14 @@ static gboolean namedmutex_is_owned (gpointer handle)
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: testing ownership mutex handle %p", __func__, handle);
 
-       if (namedmutex_handle->recursion > 0 &&
-           namedmutex_handle->pid == _wapi_getpid () &&
-           pthread_equal (namedmutex_handle->tid, pthread_self ())) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p owned by %d:%ld", __func__,
-                          handle, _wapi_getpid (), pthread_self ());
+       if (namedmutex_handle->recursion > 0 && pthread_equal (namedmutex_handle->tid, pthread_self ())) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p owned by %ld", __func__,
+                       handle, pthread_self ());
 
                return(TRUE);
        } else {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p not owned by %d:%ld, but locked %d times by %d:%ld", __func__, handle, _wapi_getpid (), pthread_self (), namedmutex_handle->recursion, namedmutex_handle->pid, namedmutex_handle->tid);
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: mutex handle %p not owned by %ld, but locked %d times by %ld", __func__,
+                       handle, pthread_self (), namedmutex_handle->recursion, namedmutex_handle->tid);
 
                return(FALSE);
        }
@@ -247,34 +239,9 @@ static void namedmutex_prewait (gpointer handle)
        if (namedmutex_handle->recursion == 0) {
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Named mutex handle %p not owned", __func__,
                           handle);
-       } else if (namedmutex_handle->pid == _wapi_getpid ()) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Named mutex handle %p owned by this process",
-                          __func__, handle);
        } else {
-               int thr_ret;
-               gpointer proc_handle;
-               
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Named mutex handle %p owned by another process", __func__, handle);
-               proc_handle = OpenProcess (0, 0, namedmutex_handle->pid);
-               if (proc_handle == NULL) {
-                       /* Didn't find the process that this handle
-                        * was owned by, overriding it
-                        */
-                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: overriding old owner of named mutex handle %p", __func__, handle);
-                       thr_ret = _wapi_handle_lock_shared_handles ();
-                       g_assert (thr_ret == 0);
-
-                       namedmutex_handle->pid = 0;
-                       namedmutex_handle->tid = 0;
-                       namedmutex_handle->recursion = 0;
-
-                       _wapi_shared_handle_set_signal_state (handle, TRUE);
-                       _wapi_handle_unlock_shared_handles ();
-               } else {
-                       MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Found active pid %d for named mutex handle %p", __func__, namedmutex_handle->pid, handle);
-               }
-               if (proc_handle != NULL)
-                       CloseProcess (proc_handle);
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Named mutex handle %p owned by this process", __func__,
+                       handle);
        }
 }
 
@@ -295,12 +262,11 @@ static void mutex_abandon (gpointer handle, pid_t pid, pthread_t tid)
        thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
        
-       if (mutex_handle->pid == pid &&
-           pthread_equal (mutex_handle->tid, tid)) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Mutex handle %p abandoned!", __func__, handle);
+       if (pthread_equal (mutex_handle->tid, tid)) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Mutex handle %p abandoned!", __func__,
+                       handle);
 
                mutex_handle->recursion = 0;
-               mutex_handle->pid = 0;
                mutex_handle->tid = 0;
                
                _wapi_handle_set_signal_state (handle, TRUE, FALSE);
@@ -324,21 +290,21 @@ static void namedmutex_abandon (gpointer handle, pid_t pid, pthread_t tid)
                return;
        }
 
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
        
-       if (mutex_handle->pid == pid &&
-           pthread_equal (mutex_handle->tid, tid)) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Mutex handle %p abandoned!", __func__, handle);
+       if (pthread_equal (mutex_handle->tid, tid)) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Mutex handle %p abandoned!", __func__,
+                       handle);
 
                mutex_handle->recursion = 0;
-               mutex_handle->pid = 0;
                mutex_handle->tid = 0;
                
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, FALSE);
        }
 
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
 }
 
 /* When a thread exits, any mutexes it still holds need to be
@@ -404,9 +370,6 @@ static gpointer namedmutex_create (WapiSecurityAttributes *security G_GNUC_UNUSE
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       guint32 namelen;
-       gint32 offset;
 
        /* w32 seems to guarantee that opening named objects can't
         * race each other
@@ -424,66 +387,50 @@ static gpointer namedmutex_create (WapiSecurityAttributes *security G_GNUC_UNUSE
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Creating named mutex [%s]", __func__, utf8_name);
        
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDMUTEX,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDMUTEX,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset != 0) {
+       } else if (handle) {
                /* Not an error, but this is how the caller is
                 * informed that the mutex wasn't freshly created
                 */
                SetLastError (ERROR_ALREADY_EXISTS);
-       }
-       /* Fall through to create the mutex handle. */
-
-       if (offset == 0) {
+       } else {
                /* A new named mutex, so create both the private and
                 * shared parts
                 */
        
-               if (strlen (utf8_name) < MAX_PATH) {
-                       namelen = strlen (utf8_name);
-               } else {
-                       namelen = MAX_PATH;
-               }
-       
-               memcpy (&namedmutex_handle.sharedns.name, utf8_name, namelen);
+               strncpy (&namedmutex_handle.sharedns.name [0], utf8_name, MAX_PATH);
+               namedmutex_handle.sharedns.name [MAX_PATH] = '\0';
 
                handle = _wapi_handle_new (WAPI_HANDLE_NAMEDMUTEX,
                                           &namedmutex_handle);
-       } else {
-               /* A new reference to an existing named mutex, so just
-                * create the private part
-                */
-               handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDMUTEX,
-                                                      offset, TRUE);
-       }
        
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error creating mutex handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
+               if (handle == _WAPI_HANDLE_INVALID) {
+                       g_warning ("%s: error creating mutex handle", __func__);
+                       SetLastError (ERROR_GEN_FAILURE);
+                       goto cleanup;
+               }
 
-       if (offset == 0) {
                /* Set the initial state, as this is a completely new
                 * handle
                 */
-               thr_ret = _wapi_handle_lock_shared_handles ();
+               thr_ret = _wapi_handle_lock_handle (handle);
                g_assert (thr_ret == 0);
        
                if (owned == TRUE) {
                        namedmutex_own (handle);
                } else {
-                       _wapi_shared_handle_set_signal_state (handle, TRUE);
+                       _wapi_handle_set_signal_state (handle, TRUE, FALSE);
                }
 
-               _wapi_handle_unlock_shared_handles ();
+               thr_ret = _wapi_handle_unlock_handle (handle);
+               g_assert (thr_ret == 0);
        }
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning mutex handle %p", __func__, handle);
@@ -493,7 +440,7 @@ cleanup:
 
        _wapi_namespace_unlock (NULL);
        
-       return(ret);
+       return handle;
 }
 
 /**
@@ -532,7 +479,6 @@ static gboolean mutex_release (gpointer handle)
        struct _WapiHandle_mutex *mutex_handle;
        gboolean ok;
        pthread_t tid = pthread_self ();
-       pid_t pid = _wapi_getpid ();
        int thr_ret;
        gboolean ret = FALSE;
        
@@ -549,9 +495,9 @@ static gboolean mutex_release (gpointer handle)
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Releasing mutex handle %p", __func__, handle);
 
-       if (!pthread_equal (mutex_handle->tid, tid) ||
-           mutex_handle->pid != pid) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: We don't own mutex handle %p (owned by %d:%ld, me %d:%ld)", __func__, handle, mutex_handle->pid, mutex_handle->tid, _wapi_getpid (), tid);
+       if (!pthread_equal (mutex_handle->tid, tid)) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: We don't own mutex handle %p (owned by %ld, me %ld)", __func__,
+                       handle, mutex_handle->tid, tid);
 
                goto cleanup;
        }
@@ -565,7 +511,6 @@ static gboolean mutex_release (gpointer handle)
 
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Unlocking mutex handle %p", __func__, handle);
 
-               mutex_handle->pid=0;
                mutex_handle->tid=0;
                _wapi_handle_set_signal_state (handle, TRUE, FALSE);
        }
@@ -582,7 +527,6 @@ static gboolean namedmutex_release (gpointer handle)
        struct _WapiHandle_namedmutex *mutex_handle;
        gboolean ok;
        pthread_t tid = pthread_self ();
-       pid_t pid = _wapi_getpid ();
        int thr_ret;
        gboolean ret = FALSE;
        
@@ -594,14 +538,14 @@ static gboolean namedmutex_release (gpointer handle)
                return(FALSE);
        }
 
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Releasing mutex handle %p", __func__, handle);
 
-       if (!pthread_equal (mutex_handle->tid, tid) ||
-           mutex_handle->pid != pid) {
-               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: We don't own mutex handle %p (owned by %d:%ld, me %d:%ld)", __func__, handle, mutex_handle->pid, mutex_handle->tid, _wapi_getpid (), tid);
+       if (!pthread_equal (mutex_handle->tid, tid)) {
+               MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: We don't own mutex handle %p (owned by %ld, me %ld)", __func__,
+                       handle, mutex_handle->tid, tid);
 
                goto cleanup;
        }
@@ -615,13 +559,13 @@ static gboolean namedmutex_release (gpointer handle)
 
                MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Unlocking mutex handle %p", __func__, handle);
 
-               mutex_handle->pid=0;
                mutex_handle->tid=0;
-               _wapi_shared_handle_set_signal_state (handle, TRUE);
+               _wapi_handle_set_signal_state (handle, TRUE, FALSE);
        }
 
 cleanup:
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
        
        return(ret);
 }
@@ -659,8 +603,6 @@ gpointer OpenMutex (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UNUSED
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       gint32 offset;
 
        mono_once (&mutex_ops_once, mutex_ops_init);
 
@@ -674,33 +616,20 @@ gpointer OpenMutex (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UNUSED
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Opening named mutex [%s]", __func__, utf8_name);
        
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDMUTEX,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDMUTEX,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset == 0) {
+       } else if (!handle) {
                /* This name doesn't exist */
                SetLastError (ERROR_FILE_NOT_FOUND);    /* yes, really */
                goto cleanup;
        }
 
-       /* A new reference to an existing named mutex, so just create
-        * the private part
-        */
-       handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDMUTEX, offset,
-                                              TRUE);
-       
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error opening named mutex handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
-
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning named mutex handle %p", __func__, handle);
 
 cleanup:
@@ -708,5 +637,5 @@ cleanup:
 
        _wapi_namespace_unlock (NULL);
        
-       return(ret);
+       return handle;
 }
index 1136d17dcb2deb3aca5ab0c3d1daf0ca6244862d..89bd3f0e8bbb9fac4b07cc768a834ac692396d8c 100644 (file)
@@ -577,7 +577,6 @@ gboolean CreateProcess (const gunichar2 *appname, const gunichar2 *cmdline,
        GError *gerr = NULL;
        int in_fd, out_fd, err_fd;
        pid_t pid = 0;
-       int thr_ret;
        int startup_pipe [2] = {-1, -1};
        int dummy;
        struct MonoProcess *mono_process;
@@ -1027,9 +1026,6 @@ gboolean CreateProcess (const gunichar2 *appname, const gunichar2 *cmdline,
                break;
        }
        default: /* Parent */ {
-               thr_ret = _wapi_handle_lock_shared_handles ();
-               g_assert (thr_ret == 0);
-
                process_handle_data = lookup_process_handle (handle);
                if (!process_handle_data) {
                        g_warning ("%s: error looking up process handle %p", __func__, handle);
@@ -1071,8 +1067,6 @@ gboolean CreateProcess (const gunichar2 *appname, const gunichar2 *cmdline,
                        }
                }
 
-               _wapi_handle_unlock_shared_handles ();
-
                break;
        }
        }
@@ -2725,8 +2719,7 @@ process_wait (gpointer handle, guint32 timeout, gboolean alertable)
        WapiHandle_process *process_handle;
        pid_t pid G_GNUC_UNUSED, ret;
        int status;
-       guint32 start;
-       guint32 now;
+       gint64 start, now;
        struct MonoProcess *mp;
 
        /* FIXME: We can now easily wait on processes that aren't our own children,
@@ -2829,9 +2822,6 @@ process_wait (gpointer handle, guint32 timeout, gboolean alertable)
        /* Process must have exited */
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s (%p, %u): Waited successfully", __func__, handle, timeout);
 
-       ret = _wapi_handle_lock_shared_handles ();
-       g_assert (ret == 0);
-
        status = mp ? mp->status : 0;
        if (WIFSIGNALED (status))
                process_handle->exitstatus = 128 + WTERMSIG (status);
@@ -2846,8 +2836,6 @@ process_wait (gpointer handle, guint32 timeout, gboolean alertable)
 
        _wapi_handle_set_signal_state (handle, TRUE, TRUE);
 
-       _wapi_handle_unlock_shared_handles ();
-
        return WAIT_OBJECT_0;
 }
 
index a8131fa97f6a7d36d862f8a66f64cc5b8cb3c63b..721749cd3d7d94603885e83bdddaefef30e52297 100644 (file)
@@ -146,7 +146,7 @@ static gboolean namedsema_own (gpointer handle)
                   namedsem_handle->val);
 
        if (namedsem_handle->val == 0) {
-               _wapi_shared_handle_set_signal_state (handle, FALSE);
+               _wapi_handle_set_signal_state (handle, FALSE, FALSE);
        }
        
        return (TRUE);
@@ -196,9 +196,6 @@ static gpointer namedsem_create (WapiSecurityAttributes *security G_GNUC_UNUSED,
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       guint32 namelen;
-       gint32 offset;
        
        /* w32 seems to guarantee that opening named objects can't
         * race each other
@@ -216,66 +213,51 @@ static gpointer namedsem_create (WapiSecurityAttributes *security G_GNUC_UNUSED,
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Creating named sem [%s]", __func__, utf8_name);
 
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDSEM,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDSEM,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset != 0) {
+       } else if (handle) {
                /* Not an error, but this is how the caller is
                 * informed that the semaphore wasn't freshly created
                 */
                SetLastError (ERROR_ALREADY_EXISTS);
-       }
-       /* Fall through to create the semaphore handle */
-
-       if (offset == 0) {
+       } else {
                /* A new named semaphore, so create both the private
                 * and shared parts
                 */
-               if (strlen (utf8_name) < MAX_PATH) {
-                       namelen = strlen (utf8_name);
-               } else {
-                       namelen = MAX_PATH;
-               }
        
-               memcpy (&namedsem_handle.sharedns.name, utf8_name, namelen);
+               strncpy (&namedsem_handle.sharedns.name [0], utf8_name, MAX_PATH);
+               namedsem_handle.sharedns.name [MAX_PATH] = '\0';
        
                namedsem_handle.val = initial;
                namedsem_handle.max = max;
 
                handle = _wapi_handle_new (WAPI_HANDLE_NAMEDSEM,
                                           &namedsem_handle);
-       } else {
-               /* A new reference to an existing named semaphore, so
-                * just create the private part
-                */
-               handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDSEM,
-                                                      offset, TRUE);
-       }
        
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error creating named sem handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
+               if (handle == _WAPI_HANDLE_INVALID) {
+                       g_warning ("%s: error creating named sem handle", __func__);
+                       SetLastError (ERROR_GEN_FAILURE);
+                       goto cleanup;
+               }
        
-       if (offset == 0) {
                /* Set the initial state, as this is a completely new
                 * handle
                 */
-               thr_ret = _wapi_handle_lock_shared_handles ();
+               thr_ret = _wapi_handle_lock_handle (handle);
                g_assert (thr_ret == 0);
                
                if (initial != 0) {
-                       _wapi_shared_handle_set_signal_state (handle, TRUE);
+                       _wapi_handle_set_signal_state (handle, TRUE, FALSE);
                }
                
-               _wapi_handle_unlock_shared_handles ();
+               thr_ret = _wapi_handle_unlock_handle (handle);
+               g_assert (thr_ret == 0);
        }
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning named sem handle %p", __func__, handle);
@@ -285,7 +267,7 @@ cleanup:
        
        _wapi_namespace_unlock (NULL);
        
-       return (ret);
+       return handle;
 }
 
 
@@ -397,7 +379,7 @@ static gboolean namedsem_release (gpointer handle, gint32 count,
                return(FALSE);
        }
 
-       thr_ret = _wapi_handle_lock_shared_handles ();
+       thr_ret = _wapi_handle_lock_handle (handle);
        g_assert (thr_ret == 0);
 
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: named sem %p val %d count %d", __func__, handle,
@@ -418,7 +400,7 @@ static gboolean namedsem_release (gpointer handle, gint32 count,
        }
        
        sem_handle->val += count;
-       _wapi_shared_handle_set_signal_state (handle, TRUE);
+       _wapi_handle_set_signal_state (handle, TRUE, TRUE);
        
        ret = TRUE;
 
@@ -426,7 +408,8 @@ static gboolean namedsem_release (gpointer handle, gint32 count,
                  sem_handle->val);
        
 end:
-       _wapi_handle_unlock_shared_handles ();
+       thr_ret = _wapi_handle_unlock_handle (handle);
+       g_assert (thr_ret == 0);
 
        return(ret);
 }
@@ -468,8 +451,6 @@ gpointer OpenSemaphore (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UN
        gpointer handle;
        gchar *utf8_name;
        int thr_ret;
-       gpointer ret = NULL;
-       gint32 offset;
 
        mono_once (&sem_ops_once, sem_ops_init);
        
@@ -483,33 +464,20 @@ gpointer OpenSemaphore (guint32 access G_GNUC_UNUSED, gboolean inherit G_GNUC_UN
        
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: Opening named sem [%s]", __func__, utf8_name);
 
-       offset = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDSEM,
+       handle = _wapi_search_handle_namespace (WAPI_HANDLE_NAMEDSEM,
                                                utf8_name);
-       if (offset == -1) {
+       if (handle == _WAPI_HANDLE_INVALID) {
                /* The name has already been used for a different
                 * object.
                 */
                SetLastError (ERROR_INVALID_HANDLE);
                goto cleanup;
-       } else if (offset == 0) {
+       } else if (!handle) {
                /* This name doesn't exist */
                SetLastError (ERROR_FILE_NOT_FOUND);    /* yes, really */
                goto cleanup;
        }
 
-       /* A new reference to an existing named semaphore, so just
-        * create the private part
-        */
-       handle = _wapi_handle_new_from_offset (WAPI_HANDLE_NAMEDSEM, offset,
-                                              TRUE);
-       
-       if (handle == _WAPI_HANDLE_INVALID) {
-               g_warning ("%s: error opening named sem handle", __func__);
-               SetLastError (ERROR_GEN_FAILURE);
-               goto cleanup;
-       }
-       ret = handle;
-       
        MONO_TRACE (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER, "%s: returning named sem handle %p", __func__, handle);
 
 cleanup:
@@ -517,5 +485,5 @@ cleanup:
        
        _wapi_namespace_unlock (NULL);
        
-       return (ret);
+       return handle;
 }
index aaa53ffe16d157b16554960ba51f2ab35c430ab8..4785e1504e3ff98e895c17cb68e6296bf75dd171 100644 (file)
@@ -969,7 +969,7 @@ wapi_sendfile (guint32 socket, gpointer fd, guint32 bytes_to_write, guint32 byte
                /* TODO: Might not send the entire file for non-blocking sockets */
                res = sendfile (file, socket, 0, &statbuf.st_size, NULL, 0);
 #endif
-       } while (res != -1 && (errno == EINTR || errno == EAGAIN) && !_wapi_thread_cur_apc_pending ());
+       } while (res != -1 && errno == EINTR && !_wapi_thread_cur_apc_pending ());
        if (res == -1) {
                errnum = errno;
                errnum = errno_to_WSA (errnum, __func__);
@@ -996,7 +996,7 @@ wapi_sendfile (guint32 socket, gpointer fd, guint32 bytes_to_write, guint32 byte
                do {
                        n = send (socket, buffer, n, 0); /* short sends? enclose this in a loop? */
                } while (n == -1 && errno == EINTR && !_wapi_thread_cur_apc_pending ());
-       } while (n != -1);
+       } while (n != -1 && errno == EINTR && !_wapi_thread_cur_apc_pending ());
 
        if (n == -1) {
                gint errnum = errno;
index 3cf5535c5b821492f971a9c347cc1144a4f0ba28..a950e5e6da816eff181f36feedb215c71283522b 100644 (file)
@@ -23,6 +23,7 @@ struct _WapiHandle_thread
 {
        pthread_t id;
        GPtrArray *owned_mutexes;
+       gint32 priority;
 };
 
 typedef struct _WapiHandle_thread WapiHandle_thread;
index a00569d1a99a34f20708bd86650d0591e54f19fb..f26cefb548e2ed758025bfa23fe3a333ccd2b6da 100644 (file)
@@ -25,16 +25,27 @@ G_BEGIN_DECLS
 #define THREAD_ALL_ACCESS              (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3ff)
 
 typedef guint32 (*WapiThreadStart)(gpointer);
+typedef enum {
+       THREAD_PRIORITY_LOWEST = -2,
+       THREAD_PRIORITY_BELOW_NORMAL = -1,
+       THREAD_PRIORITY_NORMAL = 0,
+       THREAD_PRIORITY_ABOVE_NORMAL = 1,
+       THREAD_PRIORITY_HIGHEST = 2
+} WapiThreadPriority;
 
 gpointer wapi_create_thread_handle (void);
 void wapi_thread_handle_set_exited (gpointer handle, guint32 exitstatus);
 void wapi_ref_thread_handle (gpointer handle);
 gpointer wapi_get_current_thread_handle (void);
 
-charwapi_current_thread_desc (void);
+char *wapi_current_thread_desc (void);
 
 extern gint32 GetThreadPriority (gpointer handle);
 extern gboolean SetThreadPriority (gpointer handle, gint32 priority);
 
+extern int wapi_thread_priority_to_posix_priority (WapiThreadPriority, int);
+extern void wapi_init_thread_info_priority (gpointer, gint32);
+
 G_END_DECLS
 #endif /* _WAPI_THREADS_H_ */
index a91fff80d57c0697f6431d99b75fd9327a945433..edd875ee188dd3ccc3329e888fdaacde1d8430ec 100644 (file)
 static gboolean own_if_signalled(gpointer handle)
 {
        gboolean ret = FALSE;
-       
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               if (_wapi_handle_trylock_shared_handles () == EBUSY) {
-                       return (FALSE);
-               }
-       }
-       
+
        if (_wapi_handle_issignalled (handle)) {
                _wapi_handle_ops_own (handle);
                ret = TRUE;
        }
 
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               _wapi_handle_unlock_shared_handles ();
-       }
-
        return(ret);
 }
 
 static gboolean own_if_owned(gpointer handle)
 {
        gboolean ret = FALSE;
-       
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               if (_wapi_handle_trylock_shared_handles () == EBUSY) {
-                       return (FALSE);
-               }
-       }
-       
+
        if (_wapi_handle_ops_isowned (handle)) {
                _wapi_handle_ops_own (handle);
                ret = TRUE;
        }
 
-       if (_WAPI_SHARED_HANDLE (_wapi_handle_type (handle))) {
-               _wapi_handle_unlock_shared_handles ();
-       }
-
        return(ret);
 }
 
@@ -176,7 +156,7 @@ guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
                }
 
                if (timeout == INFINITE) {
-                       waited = _wapi_handle_timedwait_signal_handle (handle, INFINITE, alertable, FALSE, &apc_pending);
+                       waited = _wapi_handle_timedwait_signal_handle (handle, INFINITE, FALSE, alertable ? &apc_pending : NULL);
                } else {
                        now = mono_100ns_ticks ();
                        if (end < now) {
@@ -184,7 +164,7 @@ guint32 WaitForSingleObjectEx(gpointer handle, guint32 timeout,
                                goto done;
                        }
 
-                       waited = _wapi_handle_timedwait_signal_handle (handle, (end - now) / 10 / 1000, alertable, FALSE, &apc_pending);
+                       waited = _wapi_handle_timedwait_signal_handle (handle, (end - now) / 10 / 1000, FALSE, alertable ? &apc_pending : NULL);
                }
 
                if(waited==0 && !apc_pending) {
@@ -359,7 +339,7 @@ guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
                }
 
                if (timeout == INFINITE) {
-                       waited = _wapi_handle_timedwait_signal_handle (wait, INFINITE, alertable, FALSE, &apc_pending);
+                       waited = _wapi_handle_timedwait_signal_handle (wait, INFINITE, FALSE, alertable ? &apc_pending : NULL);
                } else {
                        now = mono_100ns_ticks ();
                        if (end < now) {
@@ -367,7 +347,7 @@ guint32 SignalObjectAndWait(gpointer signal_handle, gpointer wait,
                                goto done;
                        }
 
-                       waited = _wapi_handle_timedwait_signal_handle (wait, (end - now) / 10 / 1000, alertable, FALSE, &apc_pending);
+                       waited = _wapi_handle_timedwait_signal_handle (wait, (end - now) / 10 / 1000, FALSE, alertable ? &apc_pending : NULL);
                }
 
                if (waited==0 && !apc_pending) {
@@ -546,7 +526,7 @@ guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
 
        poll = FALSE;
        for (i = 0; i < numobjects; ++i)
-               if (_wapi_handle_type (handles [i]) == WAPI_HANDLE_PROCESS || _WAPI_SHARED_HANDLE (_wapi_handle_type (handles[i]))) 
+               if (_wapi_handle_type (handles [i]) == WAPI_HANDLE_PROCESS)
                        /* Can't wait for a process handle + another handle without polling */
                        poll = TRUE;
 
@@ -606,13 +586,13 @@ guint32 WaitForMultipleObjectsEx(guint32 numobjects, gpointer *handles,
                if (!done) {
                        /* Enter the wait */
                        if (timeout == INFINITE) {
-                               ret = _wapi_handle_timedwait_signal (INFINITE, poll, &apc_pending);
+                               ret = _wapi_handle_timedwait_signal_handle (_wapi_global_signal_handle, INFINITE, poll, &apc_pending);
                        } else {
                                now = mono_100ns_ticks ();
                                if (end < now) {
                                        ret = WAIT_TIMEOUT;
                                } else {
-                                       ret = _wapi_handle_timedwait_signal ((end - now) / 10 / 1000, poll, &apc_pending);
+                                       ret = _wapi_handle_timedwait_signal_handle (_wapi_global_signal_handle, (end - now) / 10 / 1000, poll, &apc_pending);
                                }
                        }
                } else {
index e01cdf6804cda195b9b55d6cd89a89f9d0e8c109..e82d8e68f660ffbe21c3add129c20ef801b8eac3 100644 (file)
@@ -45,10 +45,6 @@ typedef enum {
 
 extern const char *_wapi_handle_typename[];
 
-#define _WAPI_SHARED_HANDLE(type) (type == WAPI_HANDLE_NAMEDMUTEX || \
-                                  type == WAPI_HANDLE_NAMEDSEM || \
-                                  type == WAPI_HANDLE_NAMEDEVENT)
-
 #define _WAPI_FD_HANDLE(type) (type == WAPI_HANDLE_FILE || \
                               type == WAPI_HANDLE_CONSOLE || \
                               type == WAPI_HANDLE_SOCKET || \
@@ -127,7 +123,7 @@ struct _WapiHandleUnshared
        guint ref;
        gboolean signalled;
        mono_mutex_t signal_mutex;
-       pthread_cond_t signal_cond;
+       mono_cond_t signal_cond;
        
        union 
        {
@@ -140,18 +136,6 @@ struct _WapiHandleUnshared
                struct _WapiHandle_thread thread;
                struct _WapiHandle_process process;
                struct _WapiHandle_shared_ref shared;
-       } u;
-};
-
-struct _WapiHandleShared
-{
-       WapiHandleType type;
-       guint32 timestamp;
-       guint32 handle_refs;
-       volatile gboolean signalled;
-       
-       union
-       {
                struct _WapiHandle_namedmutex namedmutex;
                struct _WapiHandle_namedsem namedsem;
                struct _WapiHandle_namedevent namedevent;
@@ -161,21 +145,10 @@ struct _WapiHandleShared
 #define _WAPI_SHARED_SEM_NAMESPACE 0
 /*#define _WAPI_SHARED_SEM_COLLECTION 1*/
 #define _WAPI_SHARED_SEM_FILESHARE 2
-#define _WAPI_SHARED_SEM_SHARED_HANDLES 3
 #define _WAPI_SHARED_SEM_PROCESS_COUNT_LOCK 6
 #define _WAPI_SHARED_SEM_PROCESS_COUNT 7
 #define _WAPI_SHARED_SEM_COUNT 8       /* Leave some future expansion space */
 
-struct _WapiHandleSharedLayout
-{
-       volatile guint32 collection_count;
-       volatile key_t sem_key;
-       
-       struct _WapiHandleShared handles[_WAPI_HANDLE_INITIAL_COUNT];
-};
-
-typedef struct _WapiHandleSharedLayout _WapiHandleSharedLayout;
-
 struct _WapiFileShare
 {
 #ifdef WAPI_FILE_SHARE_PLATFORM_EXTRA_DATA
index 304fd35adf807e349c77529ee2813686d0e6553a..26246bbaa081b5a997b7c0d68a696584ccd47a71 100644 (file)
@@ -46,14 +46,6 @@ struct _WapiHandleOps _wapi_thread_ops = {
        NULL,                           /* special_wait */
        NULL                            /* prewait */
 };
-typedef enum {
-       THREAD_PRIORITY_LOWEST = -2,
-       THREAD_PRIORITY_BELOW_NORMAL = -1,
-       THREAD_PRIORITY_NORMAL = 0,
-       THREAD_PRIORITY_ABOVE_NORMAL = 1,
-       THREAD_PRIORITY_HIGHEST = 2
-} WapiThreadPriority;
 
 static mono_once_t thread_ops_once = MONO_ONCE_INIT;
 
@@ -226,6 +218,24 @@ _wapi_thread_disown_mutex (gpointer mutex)
        g_ptr_array_remove (thread->owned_mutexes, mutex);
 }
 
+/**
+ * wapi_init_thread_info_priority:
+ * @param handle: The thread handle to set.
+ * @param priority: Priority to initialize with
+ *
+ *   Initialize the priority field of the thread info
+ */
+void
+wapi_init_thread_info_priority (gpointer handle, gint32 priority)
+{
+       struct _WapiHandle_thread *thread_handle = NULL;
+       gboolean ok = _wapi_lookup_handle (handle, WAPI_HANDLE_THREAD,
+                                 (gpointer *)&thread_handle);
+                                 
+       if (ok == TRUE)
+               thread_handle->priority = priority;
+}
+
 /**
  * _wapi_thread_posix_priority_to_priority:
  *
@@ -280,14 +290,14 @@ _wapi_thread_posix_priority_to_priority (int sched_priority, int policy)
 }
 
 /**
- * _wapi_thread_priority_to_posix_priority:
+ * wapi_thread_priority_to_posix_priority:
  *
  *   Convert a WapiThreadPriority to a POSIX priority.
  * priority is a WapiThreadPriority,
  * policy is the current scheduling policy
  */
-static int 
-_wapi_thread_priority_to_posix_priority (WapiThreadPriority priority, int policy)
+int 
+wapi_thread_priority_to_posix_priority (WapiThreadPriority priority, int policy)
 {
 /* Necessary to get valid priority range */
 #ifdef _POSIX_PRIORITY_SCHEDULING
@@ -351,19 +361,21 @@ _wapi_thread_priority_to_posix_priority (WapiThreadPriority priority, int policy
 gint32 
 GetThreadPriority (gpointer handle)
 {
-       struct _WapiHandle_thread *thread_handle;
+       struct _WapiHandle_thread *thread_handle = NULL;
        int policy;
        struct sched_param param;
        gboolean ok = _wapi_lookup_handle (handle, WAPI_HANDLE_THREAD,
                                  (gpointer *)&thread_handle);
                                  
-       if (ok == FALSE) {
+       if (ok == FALSE)
                return (THREAD_PRIORITY_NORMAL);
-       }
        
        switch (pthread_getschedparam (thread_handle->id, &policy, &param)) {
                case 0:
-                       return (_wapi_thread_posix_priority_to_priority (param.sched_priority, policy));
+                       if ((policy == SCHED_FIFO) || (policy == SCHED_RR))
+                               return (_wapi_thread_posix_priority_to_priority (param.sched_priority, policy));
+                       else
+                               return (thread_handle->priority);
                case ESRCH:
                        g_warning ("pthread_getschedparam: error looking up thread id %x", (gsize)thread_handle->id);
        }
@@ -382,7 +394,7 @@ GetThreadPriority (gpointer handle)
 gboolean 
 SetThreadPriority (gpointer handle, gint32 priority)
 {
-       struct _WapiHandle_thread *thread_handle;
+       struct _WapiHandle_thread *thread_handle = NULL;
        int policy,
            posix_priority,
            rv;
@@ -401,16 +413,17 @@ SetThreadPriority (gpointer handle, gint32 priority)
                return FALSE;
        }
        
-       posix_priority =  _wapi_thread_priority_to_posix_priority (priority, policy);
+       posix_priority =  wapi_thread_priority_to_posix_priority (priority, policy);
        if (0 > posix_priority)
                return FALSE;
                
        param.sched_priority = posix_priority;
        switch (pthread_setschedparam (thread_handle->id, policy, &param)) {
                case 0:
+                       thread_handle->priority = priority;
                        return TRUE;
                case ESRCH:
-                       g_warning ("pthread_setschedparam: error looking up thread id %x", (gsize)thread_handle->id);
+                       g_warning ("pthread_setschedprio: error looking up thread id %x", (gsize)thread_handle->id);
                        break;
                case ENOTSUP:
                        g_warning ("%s: priority %d not supported", __func__, priority);
index 147fbe83a78c2ce70fb02e43b311afa43a9e9278..e4419f293228df23373567e0d873400ae7d82271 100644 (file)
@@ -1,8 +1,6 @@
 /Makefile
 /Makefile.in
 /Makefile.am
-/pedump
-/pedump.exe
 /monosn
 /monodiet
 /.libs
index cdf42e498d982b6ce989de73960b1abd62513a85..3639f3e5eb0e9b4a6364b91ec3822c5eda578c11 100644 (file)
@@ -32,12 +32,6 @@ if PLATFORM_ANDROID
 platform_sources += ../../support/libm/complex.c
 endif
 
-if SHARED_MONO
-if SUPPORT_BOEHM
-bin_PROGRAMS = pedump
-endif
-endif
-
 #
 # libtool is not capable of creating static/shared versions of the same
 # convenience lib, so we have to do it ourselves
@@ -297,31 +291,5 @@ libmonoruntimeinclude_HEADERS = \
        tokentype.h             \
        verify.h                
 
-if DTRACE_G_REQUIRED
-
-PEDUMP_DTRACE_OBJECT = pedump-dtrace.$(OBJEXT)
-
-pedump-dtrace.$(OBJEXT): $(top_srcdir)/data/mono.d libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la
-       DTRACE="$(DTRACE)" DTRACEFLAGS="$(DTRACEFLAGS)" AR="$(AR)" $(SHELL) $(top_srcdir)/data/dtrace-prelink.sh \
-       --pic pedump-dtrace.$(OBJEXT) $(top_srcdir)/data/mono.d libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la
-
-else
-PEDUMP_DTRACE_OBJECT = 
-endif
-
-if SHARED_MONO
-if SUPPORT_BOEHM
-pedump_SOURCES =               \
-       pedump.c
-
-pedump_LDADD = libmonoruntime.la ../io-layer/libwapi.la ../utils/libmonoutils.la \
-       $(LIBGC_LIBS) $(GLIB_LIBS) -lm $(LIBICONV) $(PEDUMP_DTRACE_OBJECT)
-
-if PLATFORM_DARWIN
-pedump_LDFLAGS=-framework CoreFoundation -framework Foundation
-endif
-endif
-endif
-
 EXTRA_DIST = $(win32_sources) $(unix_sources) $(null_sources) runtime.h \
                threadpool-ms-io-poll.c threadpool-ms-io-epoll.c threadpool-ms-io-kqueue.c
index effa46abdd1d93de67209e08d95a85a33301d450..d0d80a5e9de50412ab0b05cbe5a7f612d943fd14 100644 (file)
@@ -39,6 +39,7 @@
 #include "mono/metadata/metadata-internals.h"
 #include <mono/metadata/assembly.h>
 #include <mono/metadata/exception.h>
+#include <mono/metadata/exception-internals.h>
 #include <mono/metadata/threads.h>
 #include <mono/metadata/threadpool-ms.h>
 #include <mono/metadata/socket-io.h>
@@ -81,7 +82,7 @@
  * Changes which are already detected at runtime, like the addition
  * of icalls, do not require an increment.
  */
-#define MONO_CORLIB_VERSION 146
+#define MONO_CORLIB_VERSION 151
 
 typedef struct
 {
@@ -189,16 +190,19 @@ create_domain_objects (MonoDomain *domain)
         * Create an instance early since we can't do it when there is no memory.
         */
        arg = mono_string_new (domain, "Out of memory");
-       domain->out_of_memory_ex = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "OutOfMemoryException", arg, NULL);
+       domain->out_of_memory_ex = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "OutOfMemoryException", arg, NULL, &error);
+       mono_error_assert_ok (&error);
 
        /* 
         * These two are needed because the signal handlers might be executing on
         * an alternate stack, and Boehm GC can't handle that.
         */
        arg = mono_string_new (domain, "A null value was found where an object instance was required");
-       domain->null_reference_ex = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "NullReferenceException", arg, NULL);
+       domain->null_reference_ex = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "NullReferenceException", arg, NULL, &error);
+       mono_error_assert_ok (&error);
        arg = mono_string_new (domain, "The requested operation caused a stack overflow.");
-       domain->stack_overflow_ex = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "StackOverflowException", arg, NULL);
+       domain->stack_overflow_ex = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "StackOverflowException", arg, NULL, &error);
+       mono_error_assert_ok (&error);
 
        /*The ephemeron tombstone i*/
        domain->ephemeron_tombstone = mono_object_new_checked (domain, mono_defaults.object_class, &error);
@@ -485,27 +489,36 @@ copy_app_domain_setup (MonoDomain *domain, MonoAppDomainSetup *setup, MonoError
 
        mono_domain_set_internal (domain);
 
-       MONO_OBJECT_SETREF (copy, application_base, mono_marshal_xdomain_copy_value ((MonoObject*)setup->application_base));
-       MONO_OBJECT_SETREF (copy, application_name, mono_marshal_xdomain_copy_value ((MonoObject*)setup->application_name));
-       MONO_OBJECT_SETREF (copy, cache_path, mono_marshal_xdomain_copy_value ((MonoObject*)setup->cache_path));
-       MONO_OBJECT_SETREF (copy, configuration_file, mono_marshal_xdomain_copy_value ((MonoObject*)setup->configuration_file));
-       MONO_OBJECT_SETREF (copy, dynamic_base, mono_marshal_xdomain_copy_value ((MonoObject*)setup->dynamic_base));
-       MONO_OBJECT_SETREF (copy, license_file, mono_marshal_xdomain_copy_value ((MonoObject*)setup->license_file));
-       MONO_OBJECT_SETREF (copy, private_bin_path, mono_marshal_xdomain_copy_value ((MonoObject*)setup->private_bin_path));
-       MONO_OBJECT_SETREF (copy, private_bin_path_probe, mono_marshal_xdomain_copy_value ((MonoObject*)setup->private_bin_path_probe));
-       MONO_OBJECT_SETREF (copy, shadow_copy_directories, mono_marshal_xdomain_copy_value ((MonoObject*)setup->shadow_copy_directories));
-       MONO_OBJECT_SETREF (copy, shadow_copy_files, mono_marshal_xdomain_copy_value ((MonoObject*)setup->shadow_copy_files));
+#define XCOPY_FIELD(dst,field,src,error)                                       \
+       do {                                                            \
+               MonoObject *copied_val = mono_marshal_xdomain_copy_value ((MonoObject*)(src), error); \
+               return_val_if_nok (error, NULL);                        \
+               MONO_OBJECT_SETREF ((dst),field,copied_val);            \
+       } while (0)
+
+       XCOPY_FIELD (copy, application_base, setup->application_base, error);
+       XCOPY_FIELD (copy, application_name, setup->application_name, error);
+       XCOPY_FIELD (copy, cache_path, setup->cache_path, error);
+       XCOPY_FIELD (copy, configuration_file, setup->configuration_file, error);
+       XCOPY_FIELD (copy, dynamic_base, setup->dynamic_base, error);
+       XCOPY_FIELD (copy, license_file, setup->license_file, error);
+       XCOPY_FIELD (copy, private_bin_path, setup->private_bin_path, error);
+       XCOPY_FIELD (copy, private_bin_path_probe, setup->private_bin_path_probe, error);
+       XCOPY_FIELD (copy, shadow_copy_directories, setup->shadow_copy_directories, error);
+       XCOPY_FIELD (copy, shadow_copy_files, setup->shadow_copy_files, error);
        copy->publisher_policy = setup->publisher_policy;
        copy->path_changed = setup->path_changed;
        copy->loader_optimization = setup->loader_optimization;
        copy->disallow_binding_redirects = setup->disallow_binding_redirects;
        copy->disallow_code_downloads = setup->disallow_code_downloads;
-       MONO_OBJECT_SETREF (copy, domain_initializer_args, mono_marshal_xdomain_copy_value ((MonoObject*)setup->domain_initializer_args));
+       XCOPY_FIELD (copy, domain_initializer_args, setup->domain_initializer_args, error);
        copy->disallow_appbase_probe = setup->disallow_appbase_probe;
-       MONO_OBJECT_SETREF (copy, application_trust, mono_marshal_xdomain_copy_value ((MonoObject*)setup->application_trust));
-       MONO_OBJECT_SETREF (copy, configuration_bytes, mono_marshal_xdomain_copy_value ((MonoObject*)setup->configuration_bytes));
-       MONO_OBJECT_SETREF (copy, serialized_non_primitives, mono_marshal_xdomain_copy_value ((MonoObject*)setup->serialized_non_primitives));
+       XCOPY_FIELD (copy, application_trust, setup->application_trust, error);
+       XCOPY_FIELD (copy, configuration_bytes, setup->configuration_bytes, error);
+       XCOPY_FIELD (copy, serialized_non_primitives, setup->serialized_non_primitives, error);
 
+#undef COPY_FIELD
+       
        mono_domain_set_internal (caller_domain);
 
        return copy;
@@ -697,6 +710,7 @@ mono_domain_set (MonoDomain *domain, gboolean force)
 MonoObject *
 ves_icall_System_AppDomain_GetData (MonoAppDomain *ad, MonoString *name)
 {
+       MonoError error;
        MonoDomain *add;
        MonoObject *o;
        char *str;
@@ -707,7 +721,9 @@ ves_icall_System_AppDomain_GetData (MonoAppDomain *ad, MonoString *name)
        add = ad->data;
        g_assert (add);
 
-       str = mono_string_to_utf8 (name);
+       str = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        mono_domain_lock (add);
 
@@ -950,7 +966,9 @@ ves_icall_System_AppDomain_createDomain (MonoString *friendly_name, MonoAppDomai
 #else
        char *fname;
 
-       fname = mono_string_to_utf8 (friendly_name);
+       fname = mono_string_to_utf8_checked (friendly_name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        ad = mono_domain_create_appdomain_internal (fname, setup, &error);
 
        g_free (fname);
@@ -2020,7 +2038,9 @@ ves_icall_System_Reflection_Assembly_LoadFrom (MonoString *fname, MonoBoolean re
                return NULL;
        }
                
-       name = filename = mono_string_to_utf8 (fname);
+       name = filename = mono_string_to_utf8_checked (fname, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        
        ass = mono_assembly_open_full (filename, &status, refOnly);
        
@@ -2097,7 +2117,9 @@ ves_icall_System_AppDomain_LoadAssembly (MonoAppDomain *ad,  MonoString *assRef,
 
        g_assert (assRef);
 
-       name = mono_string_to_utf8 (assRef);
+       name = mono_string_to_utf8_checked (assRef, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        parsed = mono_assembly_name_parse (name, &aname);
        g_free (name);
 
@@ -2213,7 +2235,9 @@ ves_icall_System_AppDomain_ExecuteAssembly (MonoAppDomain *ad,
                mono_error_assert_ok (&error);
        }
 
-       return mono_runtime_exec_main (method, (MonoArray *)args, NULL);
+       int res = mono_runtime_exec_main_checked (method, (MonoArray *)args, &error);
+       mono_error_set_pending_exception (&error);
+       return res;
 }
 
 gint32 
@@ -2430,12 +2454,8 @@ unload_thread_main (void *arg)
 
        /* Have to attach to the runtime so shutdown can wait for this thread */
        /* Force it to be attached to avoid racing during shutdown. */
-       thread = mono_thread_attach_full (mono_get_root_domain (), TRUE, &error);
-       if (!is_ok (&error)) {
-               data->failure_reason = g_strdup (mono_error_get_message (&error));
-               mono_error_cleanup (&error);
-               goto failure;
-       }
+       thread = mono_thread_attach_full (mono_get_root_domain (), TRUE);
+
        mono_thread_set_name_internal (thread->internal_thread, mono_string_new (mono_get_root_domain (), "Domain unloader"), TRUE, &error);
        if (!is_ok (&error)) {
                data->failure_reason = g_strdup (mono_error_get_message (&error));
@@ -2537,9 +2557,9 @@ guarded_wait (HANDLE handle, guint32 timeout, gboolean alertable)
 {
        guint32 result;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        result = WaitForSingleObjectEx (handle, timeout, alertable);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return result;
 }
@@ -2573,7 +2593,7 @@ mono_domain_try_unload (MonoDomain *domain, MonoObject **exc)
        unload_data *thread_data;
        MonoNativeThreadId tid;
        MonoDomain *caller_domain = mono_domain_get ();
-       char *name;
+       MonoThreadParm tp;
 
        /* printf ("UNLOAD STARTING FOR %s (%p) IN THREAD 0x%x.\n", domain->friendly_name, domain, mono_native_thread_id_get ()); */
 
@@ -2630,13 +2650,13 @@ mono_domain_try_unload (MonoDomain *domain, MonoObject **exc)
         * First we create a separate thread for unloading, since
         * we might have to abort some threads, including the current one.
         */
-       thread_handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)unload_thread_main, thread_data, 0, CREATE_SUSPENDED, &tid);
+       tp.priority = 0;
+       tp.stack_size = 0;
+       tp.creation_flags = CREATE_SUSPENDED;
+       thread_handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)unload_thread_main, thread_data, &tp, &tid);
        if (thread_handle == NULL)
                return;
-       name = g_strdup_printf ("Unload thread for domain %x", domain);
-       mono_thread_info_set_name (tid, name);
        mono_thread_info_resume (tid);
-       g_free (name);
 
        /* Wait for the thread */       
        while (!thread_data->done && guarded_wait (thread_handle, INFINITE, TRUE) == WAIT_IO_COMPLETION) {
index 7f2b5fdb6a62e11741c63c09f4ba5098835219de..9c435d27b50df9b3775470b1137c1f087b7b74cd 100644 (file)
@@ -2888,6 +2888,7 @@ get_per_domain_assembly_binding_info (MonoDomain *domain, MonoAssemblyName *anam
 static MonoAssemblyName*
 mono_assembly_apply_binding (MonoAssemblyName *aname, MonoAssemblyName *dest_name)
 {
+       MonoError error;
        MonoAssemblyBindingInfo *info, *info2;
        MonoImage *ppimage;
        MonoDomain *domain;
@@ -2918,7 +2919,11 @@ mono_assembly_apply_binding (MonoAssemblyName *aname, MonoAssemblyName *dest_nam
        if (domain && domain->setup && domain->setup->configuration_file) {
                mono_domain_lock (domain);
                if (!domain->assembly_bindings_parsed) {
-                       gchar *domain_config_file_name = mono_string_to_utf8 (domain->setup->configuration_file);
+                       gchar *domain_config_file_name = mono_string_to_utf8_checked (domain->setup->configuration_file, &error);
+                       /* expect this to succeed because mono_domain_set_options_from_config () did
+                        * the same thing when the domain was created. */
+                       mono_error_assert_ok (&error);
+
                        gchar *domain_config_file_path = mono_portability_find_file (domain_config_file_name, TRUE);
 
                        if (!domain_config_file_path)
index 5e1605fd972295a21362b31a4be27f3d4f7d61a7..f1d52f5607d7dc558a677f2bdc6c46590bcb6888 100644 (file)
@@ -475,12 +475,17 @@ transport_send (int fd, guint8 *data, int len)
 static void
 transport_start_receive (void)
 {
+       MonoThreadParm tp;
+
        transport_connect ();
 
        if (!listen_fd)
                return;
 
-       receiver_thread_handle = mono_threads_create_thread (receiver_thread, NULL, 0, 0, NULL);
+       tp.priority = 0;
+       tp.stack_size = 0;
+       tp.creation_flags = 0;
+       receiver_thread_handle = mono_threads_create_thread (receiver_thread, NULL, &tp, NULL);
        g_assert (receiver_thread_handle);
 }
 
@@ -493,7 +498,7 @@ receiver_thread (void *arg)
        guint8 *p, *p_end;
        MonoObject *exc;
 
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Attach receiver");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Attach receiver");
 
        printf ("attach: Listening on '%s'...\n", server_uri);
 
index 43844ad98304cfed42194dc622df44a161fe27ab..e76a3a3bfb7b6f581f9bceb8aa2eb711e4b01c38 100644 (file)
@@ -1125,7 +1125,9 @@ mono_gc_get_managed_allocator (MonoClass *klass, gboolean for_box, gboolean know
                return NULL;
        if (!SMALL_ENOUGH (klass->instance_size))
                return NULL;
-       if (mono_class_has_finalizer (klass) || mono_class_is_marshalbyref (klass) || (mono_profiler_get_events () & MONO_PROFILE_ALLOCATIONS))
+       if (mono_class_has_finalizer (klass) || mono_class_is_marshalbyref (klass))
+               return NULL;
+       if (mono_profiler_get_events () & (MONO_PROFILE_ALLOCATIONS | MONO_PROFILE_STATISTICAL))
                return NULL;
        if (klass->rank)
                return NULL;
@@ -1151,7 +1153,7 @@ mono_gc_get_managed_allocator (MonoClass *klass, gboolean for_box, gboolean know
                        atype = ATYPE_NORMAL;
                */
        }
-       return mono_gc_get_managed_allocator_by_type (atype, FALSE);
+       return mono_gc_get_managed_allocator_by_type (atype, MANAGED_ALLOCATOR_REGULAR);
 }
 
 MonoMethod*
@@ -1166,10 +1168,11 @@ mono_gc_get_managed_array_allocator (MonoClass *klass)
  *   Return a managed allocator method corresponding to allocator type ATYPE.
  */
 MonoMethod*
-mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath)
+mono_gc_get_managed_allocator_by_type (int atype, ManagedAllocatorVariant variant)
 {
        int offset = -1;
        MonoMethod *res;
+       gboolean slowpath = variant != MANAGED_ALLOCATOR_REGULAR;
        MonoMethod **cache = slowpath ? slowpath_alloc_method_cache : alloc_method_cache;
        MONO_THREAD_VAR_OFFSET (GC_thread_tls, offset);
 
@@ -1226,7 +1229,7 @@ mono_gc_get_managed_array_allocator (MonoClass *klass)
 }
 
 MonoMethod*
-mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath)
+mono_gc_get_managed_allocator_by_type (int atype, ManagedAllocatorVariant variant)
 {
        return NULL;
 }
index 1e7404d4e0ca4f35fa84f5ce47c475a9b3694ef0..b72657fda72f1e55b2195782581692a490447c74 100644 (file)
@@ -905,7 +905,7 @@ typedef struct {
 
 extern MonoStats mono_stats;
 
-typedef gpointer (*MonoRemotingTrampoline)       (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target);
+typedef gpointer (*MonoRemotingTrampoline)       (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target, MonoError *error);
 typedef gpointer (*MonoDelegateTrampoline)       (MonoDomain *domain, MonoClass *klass);
 
 typedef gboolean (*MonoGetCachedClassInfo) (MonoClass *klass, MonoCachedClassInfo *res);
@@ -1097,7 +1097,6 @@ typedef struct {
        MonoClass *fieldhandle_class;
        MonoClass *methodhandle_class;
        MonoClass *systemtype_class;
-       MonoClass *monotype_class;
        MonoClass *runtimetype_class;
        MonoClass *exception_class;
        MonoClass *threadabortexception_class;
@@ -1444,6 +1443,9 @@ mono_class_load_from_name (MonoImage *image, const char* name_space, const char
 MonoClass*
 mono_class_try_load_from_name (MonoImage *image, const char* name_space, const char *name);
 
+void
+mono_error_set_for_class_failure (MonoError *orerror, MonoClass *klass);
+
 static inline guint8
 mono_class_get_failure (MonoClass *klass)
 {
index 17da478b5e9c1f089d76de0bc275da6ab5e21077..39fc6e491df965cc8ba8e37d76072cb467533c3e 100644 (file)
@@ -1369,6 +1369,53 @@ mono_type_has_exceptions (MonoType *type)
        }
 }
 
+void
+mono_error_set_for_class_failure (MonoError *oerror, MonoClass *klass)
+{
+       gpointer exception_data = mono_class_get_exception_data (klass);
+
+       switch (mono_class_get_failure(klass)) {
+       case MONO_EXCEPTION_TYPE_LOAD: {
+               mono_error_set_type_load_class (oerror, klass, "Error Loading class");
+               return;
+       }
+       case MONO_EXCEPTION_MISSING_METHOD: {
+               char *class_name = (char *)exception_data;
+               char *member_name = class_name + strlen (class_name) + 1;
+
+               mono_error_set_method_load (oerror, klass, member_name, "Error Loading Method");
+               return;
+       }
+       case MONO_EXCEPTION_MISSING_FIELD: {
+               char *class_name = (char *)exception_data;
+               char *member_name = class_name + strlen (class_name) + 1;
+
+               mono_error_set_field_load (oerror, klass, member_name, "Error Loading Field");
+               return;
+       }
+       case MONO_EXCEPTION_FILE_NOT_FOUND: {
+               char *msg_format = (char *)exception_data;
+               char *assembly_name = msg_format + strlen (msg_format) + 1;
+               char *msg = g_strdup_printf (msg_format, assembly_name);
+
+               mono_error_set_assembly_load (oerror, assembly_name, msg);
+               return;
+       }
+       case MONO_EXCEPTION_BAD_IMAGE: {
+               mono_error_set_bad_image (oerror, NULL, (const char *)exception_data);
+               return;
+       }
+       case MONO_EXCEPTION_INVALID_PROGRAM: {
+               mono_error_set_invalid_program (oerror, (const char *)exception_data);
+               return;
+       }
+       default: {
+               g_assert_not_reached ();
+       }
+       }
+}
+
+
 /*
  * mono_class_alloc:
  *
@@ -8022,7 +8069,9 @@ gboolean
 mono_class_is_subclass_of (MonoClass *klass, MonoClass *klassc, 
                           gboolean check_interfaces)
 {
-/*FIXME test for interfaces with variant generic arguments*/
+       /* FIXME test for interfaces with variant generic arguments */
+       mono_class_init (klass);
+       mono_class_init (klassc);
        
        if (check_interfaces && MONO_CLASS_IS_INTERFACE (klassc) && !MONO_CLASS_IS_INTERFACE (klass)) {
                if (MONO_CLASS_IMPLEMENTS_INTERFACE (klass, klassc->interface_id))
index 3ebe507d0d185472c7aada8bed2713c8b11847df..889c19ece4f786221a020fc365cebe41983b7734 100644 (file)
@@ -599,7 +599,7 @@ mono_cominterop_init (void)
        register_icall (cominterop_get_interface, "cominterop_get_interface", "ptr object ptr int32", FALSE);
 
        register_icall (mono_string_to_bstr, "mono_string_to_bstr", "ptr obj", FALSE);
-       register_icall (mono_string_from_bstr, "mono_string_from_bstr", "obj ptr", FALSE);
+       register_icall (mono_string_from_bstr_icall, "mono_string_from_bstr_icall", "obj ptr", FALSE);
        register_icall (mono_free_bstr, "mono_free_bstr", "void ptr", FALSE);
        register_icall (cominterop_type_from_handle, "cominterop_type_from_handle", "object ptr", FALSE);
 
@@ -1696,9 +1696,11 @@ ves_icall_System_ComObject_CreateRCW (MonoReflectionType *type)
         * Constructor does not need to be called. Will be called later.
        */
        MonoVTable *vtable = mono_class_vtable_full (domain, klass, &error);
-       mono_error_raise_exception (&error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        obj = mono_object_new_alloc_specific_checked (vtable, &error);
-       mono_error_raise_exception (&error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        return obj;
 }
@@ -1982,8 +1984,7 @@ cominterop_get_ccw_checked (MonoObject* object, MonoClass* itf, MonoError *error
                g_hash_table_insert (ccw_hash, GINT_TO_POINTER (mono_object_hash (object)), ccw_list);
                mono_cominterop_unlock ();
                /* register for finalization to clean up ccw */
-               mono_object_register_finalizer (object, error);
-               return_val_if_nok (error, NULL);
+               mono_object_register_finalizer (object);
        }
 
        cinfo = mono_custom_attrs_from_class_checked (itf, error);
@@ -2113,12 +2114,14 @@ cominterop_get_ccw_checked (MonoObject* object, MonoClass* itf, MonoError *error
                        wrapper_method = mono_mb_create_method (mb, m.csig, m.csig->param_count + 16);
                        mono_cominterop_unlock ();
 
-                       vtable [vtable_index--] = mono_compile_method (wrapper_method);
+                       vtable [vtable_index--] = mono_compile_method_checked (wrapper_method, error);
 
+                       // cleanup, then error out if compile_method failed
                        for (param_index = sig_adjusted->param_count; param_index >= 0; param_index--)
                                if (mspecs [param_index])
                                        mono_metadata_free_marshal_spec (mspecs [param_index]);
                        g_free (mspecs);
+                       return_val_if_nok (error, NULL);
                }
 
                ccw_entry = g_new0 (MonoCCWInterface, 1);
@@ -2424,15 +2427,15 @@ static const IID MONO_IID_IMarshal = {0x3, 0x0, 0x0, {0xC0, 0x0, 0x0, 0x0, 0x0,
 #ifdef HOST_WIN32
 /* All ccw objects are free threaded */
 static int
-cominterop_ccw_getfreethreadedmarshaler (MonoCCW* ccw, MonoObject* object, gpointer* ppv)
+cominterop_ccw_getfreethreadedmarshaler (MonoCCW* ccw, MonoObject* object, gpointer* ppv, MonoError *error)
 {
+       mono_error_init (error);
 #ifdef HOST_WIN32
-       MonoError error;
        if (!ccw->free_marshaler) {
                int ret = 0;
                gpointer tunk;
-               tunk = cominterop_get_ccw_checked (object, mono_class_get_iunknown_class (), &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               tunk = cominterop_get_ccw_checked (object, mono_class_get_iunknown_class (), error);
+               return_val_if_nok (error, MONO_E_NOINTERFACE);
                ret = CoCreateFreeThreadedMarshaler (tunk, (LPUNKNOWN*)&ccw->free_marshaler);
        }
                
@@ -2491,7 +2494,9 @@ cominterop_ccw_queryinterface (MonoCCWInterface* ccwe, guint8* riid, gpointer* p
 #ifdef HOST_WIN32
        /* handle IMarshal special */
        if (0 == memcmp (riid, &MONO_IID_IMarshal, sizeof (IID))) {
-               return cominterop_ccw_getfreethreadedmarshaler (ccw, object, ppv);      
+               int res = cominterop_ccw_getfreethreadedmarshaler (ccw, object, ppv, &error);
+               mono_error_assert_ok (&error);
+               return res;
        }
 #endif
        klass_iter = klass;
@@ -2776,22 +2781,41 @@ MonoString *
 mono_string_from_bstr (gpointer bstr)
 {
        MonoError error;
+       MonoString *result = mono_string_from_bstr_checked (bstr, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+MonoString *
+mono_string_from_bstr_icall (gpointer bstr)
+{
+       MonoError error;
+       MonoString *result = mono_string_from_bstr_checked (bstr, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
+MonoString *
+mono_string_from_bstr_checked (gpointer bstr, MonoError *error)
+{
        MonoString * res = NULL;
        
+       mono_error_init (error);
+
        if (!bstr)
                return NULL;
 #ifdef HOST_WIN32
-       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, SysStringLen (bstr), &error);
+       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, SysStringLen (bstr), error);
 #else
        if (com_provider == MONO_COM_DEFAULT) {
-               res = mono_string_new_utf16_checked (mono_domain_get (), (const mono_unichar2 *)bstr, *((guint32 *)bstr - 1) / sizeof(gunichar2), &error);
+               res = mono_string_new_utf16_checked (mono_domain_get (), (const mono_unichar2 *)bstr, *((guint32 *)bstr - 1) / sizeof(gunichar2), error);
        } else if (com_provider == MONO_COM_MS && init_com_provider_ms ()) {
                MonoString* str = NULL;
                glong written = 0;
                gunichar2* utf16 = NULL;
 
                utf16 = g_ucs4_to_utf16 ((const gunichar *)bstr, sys_string_len_ms (bstr), NULL, &written, NULL);
-               str = mono_string_new_utf16_checked (mono_domain_get (), utf16, written, &error);
+               str = mono_string_new_utf16_checked (mono_domain_get (), utf16, written, error);
                g_free (utf16);
                res = str;
        } else {
@@ -2799,7 +2823,6 @@ mono_string_from_bstr (gpointer bstr)
        }
 
 #endif
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
        return res;
 }
 
@@ -3118,6 +3141,7 @@ int mono_marshal_safe_array_get_ubound (gpointer psa, guint nDim, glong* plUboun
        return result;
 }
 
+/* This is an icall */
 static gboolean
 mono_marshal_safearray_begin (gpointer safearray, MonoArray **result, gpointer *indices, gpointer empty, gpointer parameter, gboolean allocateNewArray)
 {
@@ -3161,14 +3185,16 @@ mono_marshal_safearray_begin (gpointer safearray, MonoArray **result, gpointer *
                                hr = mono_marshal_safe_array_get_lbound (safearray, i+1, &lbound);
                                if (hr < 0) {
                                        cominterop_set_hr_error (&error, hr);
-                                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                                       if (mono_error_set_pending_exception (&error))
+                                               return FALSE;
                                }
                                if (lbound != 0)
                                        bounded = TRUE;
                                hr = mono_marshal_safe_array_get_ubound (safearray, i+1, &ubound);
                                if (hr < 0) {
                                        cominterop_set_hr_error (&error, hr);
-                                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                                       if (mono_error_set_pending_exception (&error))
+                                               return FALSE;
                                }
                                cursize = ubound-lbound+1;
                                sizes [i] = cursize;
@@ -3183,7 +3209,8 @@ mono_marshal_safearray_begin (gpointer safearray, MonoArray **result, gpointer *
                        if (allocateNewArray) {
                                aklass = mono_bounded_array_class_get (mono_defaults.object_class, dim, bounded);
                                *result = mono_array_new_full_checked (mono_domain_get (), aklass, sizes, bounds, &error);
-                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               if (mono_error_set_pending_exception (&error))
+                                       return FALSE;
                        } else {
                                *result = (MonoArray *)parameter;
                        }
@@ -3192,6 +3219,7 @@ mono_marshal_safearray_begin (gpointer safearray, MonoArray **result, gpointer *
        return TRUE;
 }
 
+/* This is an icall */
 static 
 gpointer mono_marshal_safearray_get_value (gpointer safearray, gpointer indices)
 {
@@ -3201,14 +3229,16 @@ gpointer mono_marshal_safearray_get_value (gpointer safearray, gpointer indices)
        int hr = SafeArrayPtrOfIndex (safearray, indices, &result);
        if (hr < 0) {
                        cominterop_set_hr_error (&error, hr);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_error_set_pending_exception (&error);
+                       return NULL;
        }
 #else
        if (com_provider == MONO_COM_MS && init_com_provider_ms ()) {
                int hr = safe_array_ptr_of_index_ms (safearray, (glong *)indices, &result);
                if (hr < 0) {
                        cominterop_set_hr_error (&error, hr);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_error_set_pending_exception (&error);
+                       return NULL;
                }
        } else {
                g_assert_not_reached ();
@@ -3217,6 +3247,7 @@ gpointer mono_marshal_safearray_get_value (gpointer safearray, gpointer indices)
        return result;
 }
 
+/* This is an icall */
 static 
 gboolean mono_marshal_safearray_next (gpointer safearray, gpointer indices)
 {
@@ -3234,7 +3265,8 @@ gboolean mono_marshal_safearray_next (gpointer safearray, gpointer indices)
                hr = mono_marshal_safe_array_get_ubound (safearray, i+1, &ubound);
                if (hr < 0) {
                        cominterop_set_hr_error (&error, hr);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_error_set_pending_exception (&error);
+                       return FALSE;
                }
 
                if (++pIndices[i] <= ubound) {
@@ -3244,7 +3276,8 @@ gboolean mono_marshal_safearray_next (gpointer safearray, gpointer indices)
                hr = mono_marshal_safe_array_get_lbound (safearray, i+1, &lbound);
                if (hr < 0) {
                        cominterop_set_hr_error (&error, hr);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_error_set_pending_exception (&error);
+                       return FALSE;
                }
 
                pIndices[i] = lbound;
@@ -3316,6 +3349,7 @@ mono_marshal_safearray_create (MonoArray *input, gpointer *newsafearray, gpointe
        return TRUE;
 }
 
+/* This is an icall */
 static 
 void mono_marshal_safearray_set_value (gpointer safearray, gpointer indices, gpointer value)
 {
@@ -3324,14 +3358,16 @@ void mono_marshal_safearray_set_value (gpointer safearray, gpointer indices, gpo
        int hr = SafeArrayPutElement (safearray, indices, value);
        if (hr < 0) {
                cominterop_set_hr_error (&error, hr);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               mono_error_set_pending_exception (&error);
+               return;
        }
 #else
        if (com_provider == MONO_COM_MS && init_com_provider_ms ()) {
                int hr = safe_array_put_element_ms (safearray, (glong *)indices, (void **)value);
                if (hr < 0) {
                        cominterop_set_hr_error (&error, hr);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_error_set_pending_exception (&error);
+                       return;
                }
        } else
                g_assert_not_reached ();
@@ -3360,7 +3396,7 @@ mono_cominterop_init (void)
        emit an exception in the generated IL.
        */
        register_icall (mono_string_to_bstr, "mono_string_to_bstr", "ptr obj", FALSE);
-       register_icall (mono_string_from_bstr, "mono_string_from_bstr", "obj ptr", FALSE);
+       register_icall (mono_string_from_bstr_icall, "mono_string_from_bstr_icall", "obj ptr", FALSE);
        register_icall (mono_free_bstr, "mono_free_bstr", "void ptr", FALSE);
 }
 
@@ -3398,19 +3434,37 @@ mono_string_to_bstr (MonoString *string_obj)
 #endif
 }
 
+
 MonoString *
 mono_string_from_bstr (gpointer bstr)
 {
-       MonoString *res = NULL;
        MonoError error;
+       MonoString *result = mono_string_from_bstr_checked (bstr, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+MonoString *
+mono_string_from_bstr_icall (gpointer bstr)
+{
+       MonoError error;
+       MonoString *result = mono_string_from_bstr_checked (bstr, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
+MonoString *
+mono_string_from_bstr_checked (gpointer bstr, MonoError *error)
+{
+       MonoString *res = NULL;
+       mono_error_init (error);
        if (!bstr)
                return NULL;
 #ifdef HOST_WIN32
-       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, SysStringLen (bstr), &error);
+       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, SysStringLen (bstr), error);
 #else
-       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, *((guint32 *)bstr - 1) / sizeof(gunichar2), &error);
+       res = mono_string_new_utf16_checked (mono_domain_get (), bstr, *((guint32 *)bstr - 1) / sizeof(gunichar2), error);
 #endif
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
        return res;
 }
 
@@ -3458,7 +3512,10 @@ ves_icall_System_Runtime_InteropServices_Marshal_QueryInterfaceInternal (gpointe
 MonoString *
 ves_icall_System_Runtime_InteropServices_Marshal_PtrToStringBSTR (gpointer ptr)
 {
-       return mono_string_from_bstr(ptr);
+       MonoError error;
+       MonoString *result = mono_string_from_bstr_checked (ptr, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 gpointer
index 1338bd3b5bc169c8b440a59ea7d6941155542dbf..d80021aa93bba6172773640a9e9d23c49917d76f 100644 (file)
@@ -47,9 +47,16 @@ mono_cominterop_emit_marshal_safearray (EmitMarshalContext *m, int argnum,
                                                                                int conv_arg, MonoType **conv_arg_type,
                                                                                MarshalAction action);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString * 
 mono_string_from_bstr (gpointer bstr);
 
+MonoString *
+mono_string_from_bstr_icall (gpointer bstr);
+
+MonoString *
+mono_string_from_bstr_checked (gpointer bstr, MonoError *error);
+
 MONO_API void 
 mono_free_bstr (gpointer bstr);
 
index 29ce37fc141bc4b8a92049e55590f10c7eef16b4..38a82c92e957f3cb76cde6f66bd2031f6009c881 100644 (file)
@@ -247,9 +247,11 @@ do_console_cancel_event (void)
                mono_error_cleanup (&error);
                return;
        }
-       mono_field_static_get_value (vtable, cancel_handler_field, &load_value);
-       if (load_value == NULL)
+       mono_field_static_get_value_checked (vtable, cancel_handler_field, &load_value, &error);
+       if (load_value == NULL || !is_ok (&error)) {
+               mono_error_cleanup (&error);
                return;
+       }
 
        klass = load_value->object.vtable->klass;
        method = mono_class_get_method_from_name (klass, "BeginInvoke", -1);
@@ -496,13 +498,21 @@ ves_icall_System_ConsoleDriver_TtySetup (MonoString *keypad, MonoString *teardow
        if (setup_finished)
                return TRUE;
 
-       keypad_xmit_str = keypad != NULL ? mono_string_to_utf8 (keypad) : NULL;
+       keypad_xmit_str = NULL;
+       if (keypad != NULL) {
+               keypad_xmit_str = mono_string_to_utf8_checked (keypad, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return FALSE;
+       }
        
        console_set_signal_handlers ();
        setup_finished = TRUE;
        if (!atexit_called) {
-               if (teardown != NULL)
-                       teardown_str = mono_string_to_utf8 (teardown);
+               if (teardown != NULL) {
+                       teardown_str = mono_string_to_utf8_checked (teardown, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return FALSE;
+               }
 
                mono_atexit (tty_teardown);
        }
index 326251cc140c53a575ff7e227abcdeea92bc2782..4436229376e10101b1d16f827601c72f466d2328 100644 (file)
@@ -23,6 +23,7 @@
 #include "domain-internals.h"
 #include "appdomain.h"
 #include "object.h"
+#include "object-internals.h"
 #include "loader.h"
 #include "threads.h"
 #include "environment.h"
@@ -197,7 +198,8 @@ __int32 STDMETHODCALLTYPE _CorExeMain(void)
                argv [i] = g_utf16_to_utf8 (argvw [i], -1, NULL, NULL, NULL);
        LocalFree (argvw);
 
-       mono_runtime_run_main (method, argc, argv, NULL);
+       mono_runtime_run_main_checked (method, argc, argv, &error);
+       mono_error_raise_exception (&error); /* OK, triggers unhandled exn handler */
        mono_thread_manage ();
 
        mono_runtime_quit ();
index baf79f6be9709502aa442df5fe76f9570e73719a..449895a56106a2a0e3efbbc97230cd3bfe938712 100644 (file)
@@ -444,10 +444,6 @@ mono_method_desc_match (MonoMethodDesc *desc, MonoMethod *method)
        gboolean name_match;
 
        name_match = strcmp (desc->name, method->name) == 0;
-#ifndef _EGLIB_MAJOR
-       if (!name_match && desc->name_glob)
-               name_match = g_pattern_match_simple (desc->name, method->name);
-#endif
        if (!name_match)
                return FALSE;
        if (!desc->args)
@@ -922,6 +918,7 @@ print_name_space (MonoClass *klass)
 void
 mono_object_describe (MonoObject *obj)
 {
+       MonoError error;
        MonoClass* klass;
        const char* sep;
        if (!obj) {
@@ -930,14 +927,19 @@ mono_object_describe (MonoObject *obj)
        }
        klass = mono_object_class (obj);
        if (klass == mono_defaults.string_class) {
-               char *utf8 = mono_string_to_utf8 ((MonoString*)obj);
-               if (strlen (utf8) > 60) {
+               char *utf8 = mono_string_to_utf8_checked ((MonoString*)obj, &error);
+               mono_error_cleanup (&error); /* FIXME don't swallow the error */
+               if (utf8 && strlen (utf8) > 60) {
                        utf8 [57] = '.';
                        utf8 [58] = '.';
                        utf8 [59] = '.';
                        utf8 [60] = 0;
                }
-               g_print ("String at %p, length: %d, '%s'\n", obj, mono_string_length ((MonoString*) obj), utf8);
+               if (utf8) {
+                       g_print ("String at %p, length: %d, '%s'\n", obj, mono_string_length ((MonoString*) obj), utf8);
+               } else {
+                       g_print ("String at %p, length: %d, unable to decode UTF16\n", obj, mono_string_length ((MonoString*) obj));
+               }
                g_free (utf8);
        } else if (klass->rank) {
                MonoArray *array = (MonoArray*)obj;
index e6d9cc95e2f578977f80362f5ce971b5ef15c42e..8357099a551aa9bec2f6c5dcb147724731e1ee5f 100644 (file)
@@ -107,6 +107,9 @@ mono_ppdb_load_file (MonoImage *image, const guint8 *raw_contents, int size)
        gint32 pe_timestamp;
        MonoPPDBFile *ppdb;
 
+       if (!get_pe_debug_guid (image, pe_guid, &pe_age, &pe_timestamp))
+               return NULL;
+
        if (raw_contents) {
                if (size > 4 && strncmp ((char*)raw_contents, "BSJB", 4) == 0)
                        ppdb_image = mono_image_open_from_data_internal ((char*)raw_contents, size, TRUE, &status, FALSE, TRUE, NULL);
@@ -134,18 +137,16 @@ mono_ppdb_load_file (MonoImage *image, const guint8 *raw_contents, int size)
         * The same id is stored in the Debug Directory of the PE file, and in the
         * #Pdb stream in the ppdb file.
         */
-       if (get_pe_debug_guid (image, pe_guid, &pe_age, &pe_timestamp)) {
-               PdbStreamHeader *pdb_stream = (PdbStreamHeader*)ppdb_image->heap_pdb.data;
+       PdbStreamHeader *pdb_stream = (PdbStreamHeader*)ppdb_image->heap_pdb.data;
 
-               g_assert (pdb_stream);
+       g_assert (pdb_stream);
 
-               /* The pdb id is a concentation of the pe guid and the timestamp */
-               if (memcmp (pe_guid, pdb_stream->guid, 16) != 0 || memcmp (&pe_timestamp, pdb_stream->guid + 16, 4) != 0) {
-                       g_warning ("Symbol file %s doesn't match image %s", ppdb_image->name,
-                                          image->name);
-                       mono_image_close (ppdb_image);
-                       return NULL;
-               }
+       /* The pdb id is a concentation of the pe guid and the timestamp */
+       if (memcmp (pe_guid, pdb_stream->guid, 16) != 0 || memcmp (&pe_timestamp, pdb_stream->guid + 16, 4) != 0) {
+               g_warning ("Symbol file %s doesn't match image %s", ppdb_image->name,
+                                  image->name);
+               mono_image_close (ppdb_image);
+               return NULL;
        }
 
        ppdb = g_new0 (MonoPPDBFile, 1);
index 5e3adb36a48537df661e036429f35b7b745af26a..a3989ab74aad127f831b879358a0de850accc5dc 100644 (file)
@@ -409,6 +409,7 @@ struct _MonoDomain {
        MonoImage *socket_assembly;
        MonoClass *sockaddr_class;
        MonoClassField *sockaddr_data_field;
+       MonoClassField *sockaddr_data_length_field;
 
        /* Cache function pointers for architectures  */
        /* that require wrappers */
@@ -521,12 +522,6 @@ mono_domain_code_reserve_align (MonoDomain *domain, int size, int alignment);
 void
 mono_domain_code_commit (MonoDomain *domain, void *data, int size, int newsize);
 
-void *
-nacl_domain_get_code_dest (MonoDomain *domain, void *data);
-
-void 
-nacl_domain_code_validate (MonoDomain *domain, guint8 **buf_base, int buf_size, guint8 **code_end);
-
 void
 mono_domain_code_foreach (MonoDomain *domain, MonoCodeManagerFunc func, void *user_data);
 
index fa2514b9814b088d8748494a51fda80edc8c2df3..a3ba4a76e0492b35533b95791df77c3eab1a235c 100644 (file)
@@ -707,9 +707,6 @@ mono_init_internal (const char *filename, const char *exe_filename, const char *
        mono_defaults.systemtype_class = mono_class_load_from_name (
                 mono_defaults.corlib, "System", "Type");
 
-       mono_defaults.monotype_class = mono_class_load_from_name (
-                mono_defaults.corlib, "System", "MonoType");
-
        mono_defaults.runtimetype_class = mono_class_load_from_name (
                 mono_defaults.corlib, "System", "RuntimeType");
 
@@ -1054,7 +1051,7 @@ unregister_vtable_reflection_type (MonoVTable *vtable)
 {
        MonoObject *type = (MonoObject *)vtable->type;
 
-       if (type->vtable->klass != mono_defaults.monotype_class)
+       if (type->vtable->klass != mono_defaults.runtimetype_class)
                MONO_GC_UNREGISTER_ROOT_IF_MOVING (vtable->type);
 }
 
@@ -1420,58 +1417,6 @@ mono_domain_code_commit (MonoDomain *domain, void *data, int size, int newsize)
        mono_domain_unlock (domain);
 }
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-/*
- * Given the temporary buffer (allocated by mono_domain_code_reserve) into which
- * we are generating code, return a pointer to the destination in the dynamic 
- * code segment into which the code will be copied when mono_domain_code_commit
- * is called.
- * LOCKING: Acquires the domain lock.
- */
-void *
-nacl_domain_get_code_dest (MonoDomain *domain, void *data)
-{
-       void *dest;
-       mono_domain_lock (domain);
-       dest = nacl_code_manager_get_code_dest (domain->code_mp, data);
-       mono_domain_unlock (domain);
-       return dest;
-}
-
-/* 
- * Convenience function which calls mono_domain_code_commit to validate and copy
- * the code. The caller sets *buf_base and *buf_size to the start and size of
- * the buffer (allocated by mono_domain_code_reserve), and *code_end to the byte
- * after the last instruction byte. On return, *buf_base will point to the start
- * of the copied in the code segment, and *code_end will point after the end of 
- * the copied code.
- */
-void
-nacl_domain_code_validate (MonoDomain *domain, guint8 **buf_base, int buf_size, guint8 **code_end)
-{
-       guint8 *tmp = nacl_domain_get_code_dest (domain, *buf_base);
-       mono_domain_code_commit (domain, *buf_base, buf_size, *code_end - *buf_base);
-       *code_end = tmp + (*code_end - *buf_base);
-       *buf_base = tmp;
-}
-
-#else
-
-/* no-op versions of Native Client functions */
-
-void *
-nacl_domain_get_code_dest (MonoDomain *domain, void *data)
-{
-       return data;
-}
-
-void
-nacl_domain_code_validate (MonoDomain *domain, guint8 **buf_base, int buf_size, guint8 **code_end)
-{
-}
-
-#endif
-
 /*
  * mono_domain_code_foreach:
  * Iterate over the code thunks of the code manager of @domain.
index 60c2ae0bd19a28725cc9464e1dd3673ec0742836..4a9ad505798ee867cfab121d1afcf84069b6d44a 100644 (file)
@@ -15,4 +15,14 @@ mono_get_exception_reflection_type_load_checked (MonoArray *types, MonoArray *ex
 MonoException *
 mono_get_exception_runtime_wrapped_checked (MonoObject *wrapped_exception, MonoError *error);
 
-#endif
\ No newline at end of file
+MonoException *
+mono_exception_from_name_two_strings_checked (MonoImage *image, const char *name_space,
+                                             const char *name, MonoString *a1, MonoString *a2,
+                                             MonoError *error);
+
+MonoException *
+mono_exception_from_token_two_strings_checked (MonoImage *image, uint32_t token,
+                                              MonoString *a1, MonoString *a2,
+                                              MonoError *error);
+
+#endif
index e2e162f702a1efeb69e0226a5a4ab8eedb4d52d4..2aff26dfd53788fe5080ef51e97cbaf0b9975045 100644 (file)
@@ -13,6 +13,7 @@
  */
 
 #include <glib.h>
+#include <config.h>
 #include <mono/metadata/exception.h>
 #include <mono/metadata/exception-internals.h>
 
@@ -173,15 +174,39 @@ mono_exception_from_name_two_strings (MonoImage *image, const char *name_space,
                                      const char *name, MonoString *a1, MonoString *a2)
 {
        MonoError error;
-       MonoClass *klass;
        MonoException *ret;
 
-       klass = mono_class_load_from_name (image, name_space, name);
+       ret = mono_exception_from_name_two_strings_checked (image, name_space, name, a1, a2, &error);
+       mono_error_cleanup (&error);
+       return ret;
+}
 
-       ret = create_exception_two_strings (klass, a1, a2, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+/**
+ * mono_exception_from_name_two_strings_checked:
+ * @image: the Mono image where to look for the class
+ * @name_space: the namespace for the class
+ * @name: class name
+ * @a1: first string argument to pass
+ * @a2: second string argument to pass
+ * @error: set on error
+ *
+ * Creates an exception from a constructor that takes two string
+ * arguments.
+ *
+ * Returns: the initialized exception instance. On failure returns
+ * NULL and sets @error.
+ */
+MonoException *
+mono_exception_from_name_two_strings_checked (MonoImage *image, const char *name_space,
+                                             const char *name, MonoString *a1, MonoString *a2,
+                                             MonoError *error)
+{
+       MonoClass *klass;
 
-       return ret;
+       mono_error_init (error);
+       klass = mono_class_load_from_name (image, name_space, name);
+
+       return create_exception_two_strings (klass, a1, a2, error);
 }
 
 /**
@@ -220,16 +245,31 @@ mono_exception_from_token_two_strings (MonoImage *image, guint32 token,
                                                                           MonoString *a1, MonoString *a2)
 {
        MonoError error;
-       MonoClass *klass;
        MonoException *ret;
+       ret = mono_exception_from_token_two_strings_checked (image, token, a1, a2, &error);
+       mono_error_cleanup (&error);
+       return ret;
+}
 
-       klass = mono_class_get_checked (image, token, &error);
-       mono_error_assert_ok (&error); /* FIXME handle the error. */
+/**
+ * mono_exception_from_token_two_strings_checked:
+ *
+ *   Same as mono_exception_from_name_two_strings, but lookup the exception class using
+ * IMAGE and TOKEN.
+ */
+MonoException *
+mono_exception_from_token_two_strings_checked (MonoImage *image, guint32 token,
+                                              MonoString *a1, MonoString *a2,
+                                              MonoError *error)
+{
+       MonoClass *klass;
 
-       ret = create_exception_two_strings (klass, a1, a2, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       mono_error_init (error);
 
-       return ret;
+       klass = mono_class_get_checked (image, token, error);
+       mono_error_assert_ok (error); /* FIXME handle the error. */
+
+       return create_exception_two_strings (klass, a1, a2, error);
 }
 
 /**
@@ -400,8 +440,11 @@ mono_get_exception_type_load (MonoString *class_name, char *assembly_name)
 {
        MonoString *s = assembly_name ? mono_string_new (mono_domain_get (), assembly_name) : mono_string_new (mono_domain_get (), "");
 
-       return mono_exception_from_name_two_strings (mono_get_corlib (), "System",
-                                                    "TypeLoadException", class_name, s);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (mono_get_corlib (), "System",
+                                                                  "TypeLoadException", class_name, s, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
@@ -441,8 +484,11 @@ mono_get_exception_missing_method (const char *class_name, const char *member_na
        MonoString *s1 = mono_string_new (mono_domain_get (), class_name);
        MonoString *s2 = mono_string_new (mono_domain_get (), member_name);
 
-       return mono_exception_from_name_two_strings (mono_get_corlib (), "System",
-                                                    "MissingMethodException", s1, s2);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (mono_get_corlib (), "System",
+                                                                          "MissingMethodException", s1, s2, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
@@ -458,8 +504,11 @@ mono_get_exception_missing_field (const char *class_name, const char *member_nam
        MonoString *s1 = mono_string_new (mono_domain_get (), class_name);
        MonoString *s2 = mono_string_new (mono_domain_get (), member_name);
 
-       return mono_exception_from_name_two_strings (mono_get_corlib (), "System",
-                                                    "MissingFieldException", s1, s2);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (mono_get_corlib (), "System",
+                                                                  "MissingFieldException", s1, s2, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
@@ -563,8 +612,11 @@ mono_get_exception_io (const char *msg)
 MonoException *
 mono_get_exception_file_not_found (MonoString *fname)
 {
-       return mono_exception_from_name_two_strings (
-               mono_get_corlib (), "System.IO", "FileNotFoundException", fname, fname);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (
+               mono_get_corlib (), "System.IO", "FileNotFoundException", fname, fname, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
@@ -579,8 +631,11 @@ mono_get_exception_file_not_found2 (const char *msg, MonoString *fname)
 {
        MonoString *s = msg ? mono_string_new (mono_domain_get (), msg) : NULL;
 
-       return mono_exception_from_name_two_strings (
-               mono_get_corlib (), "System.IO", "FileNotFoundException", s, fname);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (
+               mono_get_corlib (), "System.IO", "FileNotFoundException", s, fname, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
@@ -699,8 +754,11 @@ mono_get_exception_bad_image_format2 (const char *msg, MonoString *fname)
 {
        MonoString *s = msg ? mono_string_new (mono_domain_get (), msg) : NULL;
 
-       return mono_exception_from_name_two_strings (
-               mono_get_corlib (), "System", "BadImageFormatException", s, fname);
+       MonoError error;
+       MonoException *ret = mono_exception_from_name_two_strings_checked (
+               mono_get_corlib (), "System", "BadImageFormatException", s, fname, &error);
+       mono_error_assert_ok (&error);
+       return ret;
 }
 
 /**
index b9b82dd7427943455cfdd4bd0c4a53638f57f262..3de5ae7ff57681981cf95a766105308ab2cacc79 100644 (file)
@@ -14,6 +14,7 @@ mono_exception_from_name               (MonoImage *image,
 MONO_API MonoException *
 mono_exception_from_token              (MonoImage *image, uint32_t token);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoException *
 mono_exception_from_name_two_strings (MonoImage *image, const char *name_space,
                                      const char *name, MonoString *a1, MonoString *a2);
@@ -22,6 +23,7 @@ MONO_API MonoException *
 mono_exception_from_name_msg          (MonoImage *image, const char *name_space,
                                        const char *name, const char *msg);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoException *
 mono_exception_from_token_two_strings (MonoImage *image, uint32_t token,
                                                   MonoString *a1, MonoString *a2);
index c10b1fee8d934b8249c8ca70b32497e0c5a174dc..a871337ee36d15cd920d5edc8997f67a7d32d350 100644 (file)
@@ -270,7 +270,7 @@ MonoBoolean
 ves_icall_System_IO_MonoIO_CreateDirectory (MonoString *path, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -279,7 +279,7 @@ ves_icall_System_IO_MonoIO_CreateDirectory (MonoString *path, gint32 *error)
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -287,7 +287,7 @@ MonoBoolean
 ves_icall_System_IO_MonoIO_RemoveDirectory (MonoString *path, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -296,7 +296,7 @@ ves_icall_System_IO_MonoIO_RemoveDirectory (MonoString *path, gint32 *error)
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -404,9 +404,9 @@ ves_icall_System_IO_MonoIO_GetFileSystemEntries (MonoString *path,
        
        *ioerror = ERROR_SUCCESS;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        names = get_filesystem_entries (mono_string_chars (path), mono_string_chars (path_with_pattern), attrs, mask, ioerror);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (!names) {
                // If there's no array and no error, then return an empty array.
@@ -461,15 +461,16 @@ incremental_find_check_match (IncrementalFind *handle, WIN32_FIND_DATA *data, Mo
 MonoString *
 ves_icall_System_IO_MonoIO_FindFirst (MonoString *path,
                                      MonoString *path_with_pattern,
-                                     gint32 *result_attr, gint32 *error,
+                                     gint32 *result_attr, gint32 *ioerror,
                                      gpointer *handle)
 {
+       MonoError error;
        WIN32_FIND_DATA data;
        HANDLE find_handle;
        IncrementalFind *ifh;
        MonoString *result;
        
-       *error = ERROR_SUCCESS;
+       *ioerror = ERROR_SUCCESS;
        
        find_handle = FindFirstFile (mono_string_chars (path_with_pattern), &data);
        
@@ -480,13 +481,15 @@ ves_icall_System_IO_MonoIO_FindFirst (MonoString *path,
                if (find_error == ERROR_FILE_NOT_FOUND) 
                        return NULL;
                
-               *error = find_error;
+               *ioerror = find_error;
                return NULL;
        }
 
        ifh = g_new (IncrementalFind, 1);
        ifh->find_handle = find_handle;
-       ifh->utf8_path = mono_string_to_utf8 (path);
+       ifh->utf8_path = mono_string_to_utf8_checked (path, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        ifh->domain = mono_domain_get ();
        *handle = ifh;
 
@@ -494,7 +497,7 @@ ves_icall_System_IO_MonoIO_FindFirst (MonoString *path,
                if (FindNextFile (find_handle, &data) == FALSE){
                        int e = GetLastError ();
                        if (e != ERROR_NO_MORE_FILES)
-                               *error = e;
+                               *ioerror = e;
                        return NULL;
                }
        }
@@ -531,14 +534,14 @@ ves_icall_System_IO_MonoIO_FindClose (gpointer handle)
        IncrementalFind *ifh = (IncrementalFind *)handle;
        gint32 error;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        if (FindClose (ifh->find_handle) == FALSE){
                error = GetLastError ();
        } else
                error = ERROR_SUCCESS;
        g_free (ifh->utf8_path);
        g_free (ifh);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return error;
 }
@@ -602,7 +605,7 @@ ves_icall_System_IO_MonoIO_MoveFile (MonoString *path, MonoString *dest,
                                     gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
 
@@ -611,7 +614,7 @@ ves_icall_System_IO_MonoIO_MoveFile (MonoString *path, MonoString *dest,
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -623,7 +626,7 @@ ves_icall_System_IO_MonoIO_ReplaceFile (MonoString *sourceFileName, MonoString *
        gboolean ret;
        gunichar2 *utf16_sourceFileName = NULL, *utf16_destinationFileName = NULL, *utf16_destinationBackupFileName = NULL;
        guint32 replaceFlags = REPLACEFILE_WRITE_THROUGH;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        if (sourceFileName)
                utf16_sourceFileName = mono_string_chars (sourceFileName);
@@ -642,7 +645,7 @@ ves_icall_System_IO_MonoIO_ReplaceFile (MonoString *sourceFileName, MonoString *
        if (ret == FALSE)
                *error = GetLastError ();
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return ret;
 }
 
@@ -651,7 +654,7 @@ ves_icall_System_IO_MonoIO_CopyFile (MonoString *path, MonoString *dest,
                                     MonoBoolean overwrite, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -660,7 +663,7 @@ ves_icall_System_IO_MonoIO_CopyFile (MonoString *path, MonoString *dest,
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -668,7 +671,7 @@ MonoBoolean
 ves_icall_System_IO_MonoIO_DeleteFile (MonoString *path, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -677,7 +680,7 @@ ves_icall_System_IO_MonoIO_DeleteFile (MonoString *path, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -685,7 +688,7 @@ gint32
 ves_icall_System_IO_MonoIO_GetFileAttributes (MonoString *path, gint32 *error)
 {
        gint32 ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -702,7 +705,7 @@ ves_icall_System_IO_MonoIO_GetFileAttributes (MonoString *path, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -711,7 +714,7 @@ ves_icall_System_IO_MonoIO_SetFileAttributes (MonoString *path, gint32 attrs,
                                              gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -721,7 +724,7 @@ ves_icall_System_IO_MonoIO_SetFileAttributes (MonoString *path, gint32 attrs,
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -729,7 +732,7 @@ gint32
 ves_icall_System_IO_MonoIO_GetFileType (HANDLE handle, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -741,7 +744,7 @@ ves_icall_System_IO_MonoIO_GetFileType (HANDLE handle, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -751,7 +754,7 @@ ves_icall_System_IO_MonoIO_GetFileStat (MonoString *path, MonoIOStat *stat,
 {
        gboolean result;
        WIN32_FILE_ATTRIBUTE_DATA data;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -764,7 +767,7 @@ ves_icall_System_IO_MonoIO_GetFileStat (MonoString *path, MonoIOStat *stat,
                memset (stat, 0, sizeof (MonoIOStat));
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return result;
 }
 
@@ -776,7 +779,7 @@ ves_icall_System_IO_MonoIO_Open (MonoString *filename, gint32 mode,
        HANDLE ret;
        int attributes, attrs;
        gunichar2 *chars;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        chars = mono_string_chars (filename);   
        *error=ERROR_SUCCESS;
@@ -821,7 +824,7 @@ ves_icall_System_IO_MonoIO_Open (MonoString *filename, gint32 mode,
                *error=GetLastError ();
        } 
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -829,7 +832,7 @@ MonoBoolean
 ves_icall_System_IO_MonoIO_Close (HANDLE handle, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -838,7 +841,7 @@ ves_icall_System_IO_MonoIO_Close (HANDLE handle, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -862,9 +865,9 @@ ves_icall_System_IO_MonoIO_Read (HANDLE handle, MonoArray *dest,
 
        buffer = mono_array_addr (dest, guchar, dest_offset);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        result = ReadFile (handle, buffer, count, &n, NULL);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (!result) {
                *error=GetLastError ();
@@ -893,9 +896,9 @@ ves_icall_System_IO_MonoIO_Write (HANDLE handle, MonoArray *src,
        }
        
        buffer = mono_array_addr (src, guchar, src_offset);
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        result = WriteFile (handle, buffer, count, &n, NULL);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (!result) {
                *error=GetLastError ();
@@ -910,7 +913,7 @@ ves_icall_System_IO_MonoIO_Seek (HANDLE handle, gint64 offset, gint32 origin,
                                 gint32 *error)
 {
        gint32 offset_hi;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -922,7 +925,7 @@ ves_icall_System_IO_MonoIO_Seek (HANDLE handle, gint64 offset, gint32 origin,
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return offset | ((gint64)offset_hi << 32);
 }
 
@@ -930,7 +933,7 @@ MonoBoolean
 ves_icall_System_IO_MonoIO_Flush (HANDLE handle, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -939,7 +942,7 @@ ves_icall_System_IO_MonoIO_Flush (HANDLE handle, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -948,7 +951,7 @@ ves_icall_System_IO_MonoIO_GetLength (HANDLE handle, gint32 *error)
 {
        gint64 length;
        guint32 length_hi;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -957,7 +960,7 @@ ves_icall_System_IO_MonoIO_GetLength (HANDLE handle, gint32 *error)
                *error=GetLastError ();
        }
        
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return length | ((gint64)length_hi << 32);
 }
 
@@ -1019,7 +1022,7 @@ ves_icall_System_IO_MonoIO_SetFileTime (HANDLE handle, gint64 creation_time,
        const FILETIME *creation_filetime;
        const FILETIME *last_access_filetime;
        const FILETIME *last_write_filetime;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        *error=ERROR_SUCCESS;
        
@@ -1043,7 +1046,7 @@ ves_icall_System_IO_MonoIO_SetFileTime (HANDLE handle, gint64 creation_time,
                *error=GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return(ret);
 }
 
@@ -1075,9 +1078,9 @@ ves_icall_System_IO_MonoIO_CreatePipe (HANDLE *read_handle, HANDLE *write_handle
        attr.bInheritHandle=TRUE;
        attr.lpSecurityDescriptor=NULL;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret=CreatePipe (read_handle, write_handle, &attr, 0);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if(ret==FALSE) {
                *error = GetLastError ();
@@ -1095,9 +1098,9 @@ ves_icall_System_IO_MonoIO_DuplicateHandle (HANDLE source_process_handle, HANDLE
        /* This is only used on Windows */
        gboolean ret;
        
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret=DuplicateHandle (source_process_handle, source_handle, target_process_handle, target_handle, access, inherit, options);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if(ret==FALSE) {
                *error = GetLastError ();
@@ -1196,7 +1199,7 @@ void ves_icall_System_IO_MonoIO_Lock (HANDLE handle, gint64 position,
                                      gint64 length, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -1206,14 +1209,14 @@ void ves_icall_System_IO_MonoIO_Lock (HANDLE handle, gint64 position,
                *error = GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 }
 
 void ves_icall_System_IO_MonoIO_Unlock (HANDLE handle, gint64 position,
                                        gint64 length, gint32 *error)
 {
        gboolean ret;
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        
        *error=ERROR_SUCCESS;
        
@@ -1223,7 +1226,7 @@ void ves_icall_System_IO_MonoIO_Unlock (HANDLE handle, gint64 position,
                *error = GetLastError ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 }
 
 //Support for io-layer free mmap'd files.
@@ -1233,11 +1236,13 @@ void ves_icall_System_IO_MonoIO_Unlock (HANDLE handle, gint64 position,
 gint64
 mono_filesize_from_path (MonoString *string)
 {
+       MonoError error;
        struct stat buf;
        gint64 res;
-       char *path = mono_string_to_utf8 (string);
+       char *path = mono_string_to_utf8_checked (string, &error);
+       mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        if (stat (path, &buf) == -1)
                res = -1;
        else
@@ -1245,7 +1250,7 @@ mono_filesize_from_path (MonoString *string)
 
        g_free (path);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return res;
 }
 
@@ -1255,9 +1260,9 @@ mono_filesize_from_fd (int fd)
        struct stat buf;
        int res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        res = fstat (fd, &buf);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        
        if (res == -1)
                return (gint64)-1;
index ab10f929173b4413ac188294374ce56a9447406d..0d798ed6a0d85108891df8140579b169196de909 100644 (file)
@@ -248,6 +248,7 @@ ves_icall_System_IO_MonoIO_ReplaceFile (MonoString *sourceFileName, MonoString *
                                        MonoString *destinationBackupFileName, MonoBoolean ignoreMetadataErrors,
                                        gint32 *error);
 
+MONO_RT_EXTERNAL_ONLY
 extern gint64
 mono_filesize_from_path (MonoString *path);
 
index efa5547f6e485fa3a5f81522dc9fddc2153194c9..84e3b4aa68d75000fbec036787887c36f1fe8930 100644 (file)
@@ -227,27 +227,26 @@ is_special_zero_size_file (struct stat *buf)
 XXX implement options
 */
 static void*
-open_file_map (MonoString *path, int input_fd, int mode, gint64 *capacity, int access, int options, int *error)
+open_file_map (const char *c_path, int input_fd, int mode, gint64 *capacity, int access, int options, int *ioerror)
 {
        struct stat buf;
-       char *c_path = path ? mono_string_to_utf8 (path) : NULL;
        MmapHandle *handle = NULL;
        int result, fd;
 
-       if (path)
+       if (c_path)
                result = stat (c_path, &buf);
        else
                result = fstat (input_fd, &buf);
 
        if (mode == FILE_MODE_TRUNCATE || mode == FILE_MODE_APPEND || mode == FILE_MODE_OPEN) {
                if (result == -1) { //XXX translate errno?
-                       *error = FILE_NOT_FOUND;
+                       *ioerror = FILE_NOT_FOUND;
                        goto done;
                }
        }
 
        if (mode == FILE_MODE_CREATE_NEW && result == 0) {
-               *error = FILE_ALREADY_EXISTS;
+               *ioerror = FILE_ALREADY_EXISTS;
                goto done;
        }
 
@@ -258,28 +257,28 @@ open_file_map (MonoString *path, int input_fd, int mode, gint64 *capacity, int a
                         * also makes little sense, so don't do the check if th file is one of these.
                         */
                        if (buf.st_size == 0 && !is_special_zero_size_file (&buf)) {
-                               *error = CAPACITY_SMALLER_THAN_FILE_SIZE;
+                               *ioerror = CAPACITY_SMALLER_THAN_FILE_SIZE;
                                goto done;
                        }
                        *capacity = buf.st_size;
                } else if (*capacity < buf.st_size) {
-                       *error = CAPACITY_SMALLER_THAN_FILE_SIZE;
+                       *ioerror = CAPACITY_SMALLER_THAN_FILE_SIZE;
                        goto done;
                }
        } else {
                if (mode == FILE_MODE_CREATE_NEW && *capacity == 0) {
-                       *error = CAPACITY_SMALLER_THAN_FILE_SIZE;
+                       *ioerror = CAPACITY_SMALLER_THAN_FILE_SIZE;
                        goto done;
                }
        }
 
-       if (path) //FIXME use io portability?
+       if (c_path) //FIXME use io portability?
                fd = open (c_path, file_mode_to_unix (mode) | access_mode_to_unix (access), DEFAULT_FILEMODE);
        else
                fd = dup (input_fd);
 
        if (fd == -1) { //XXX translate errno?
-               *error = COULD_NOT_OPEN;
+               *ioerror = COULD_NOT_OPEN;
                goto done;
        }
 
@@ -293,33 +292,29 @@ open_file_map (MonoString *path, int input_fd, int mode, gint64 *capacity, int a
        handle->fd = fd;
 
 done:
-       g_free (c_path);
        return (void*)handle;
 }
 
 #define MONO_ANON_FILE_TEMPLATE "/mono.anonmap.XXXXXXXXX"
 static void*
-open_memory_map (MonoString *mapName, int mode, gint64 *capacity, int access, int options, int *error)
+open_memory_map (const char *c_mapName, int mode, gint64 *capacity, int access, int options, int *ioerror)
 {
-       char *c_mapName;
        MmapHandle *handle;
        if (*capacity <= 1) {
-               *error = CAPACITY_MUST_BE_POSITIVE;
+               *ioerror = CAPACITY_MUST_BE_POSITIVE;
                return NULL;
        }
 
        if (!(mode == FILE_MODE_CREATE_NEW || mode == FILE_MODE_OPEN_OR_CREATE || mode == FILE_MODE_OPEN)) {
-               *error = INVALID_FILE_MODE;
+               *ioerror = INVALID_FILE_MODE;
                return NULL;
        }
 
-       c_mapName = mono_string_to_utf8 (mapName);
-
        named_regions_lock ();
        handle = (MmapHandle*)g_hash_table_lookup (named_regions, c_mapName);
        if (handle) {
                if (mode == FILE_MODE_CREATE_NEW) {
-                       *error = FILE_ALREADY_EXISTS;
+                       *ioerror = FILE_ALREADY_EXISTS;
                        goto done;
                }
 
@@ -332,7 +327,7 @@ open_memory_map (MonoString *mapName, int mode, gint64 *capacity, int access, in
                int unused G_GNUC_UNUSED, alloc_size;
 
                if (mode == FILE_MODE_OPEN) {
-                       *error = FILE_NOT_FOUND;
+                       *ioerror = FILE_NOT_FOUND;
                        goto done;
                }
                *capacity = align_up_to_page_size (*capacity);
@@ -340,7 +335,7 @@ open_memory_map (MonoString *mapName, int mode, gint64 *capacity, int access, in
                tmp_dir = g_get_tmp_dir ();
                alloc_size = strlen (tmp_dir) + strlen (MONO_ANON_FILE_TEMPLATE) + 1;
                if (alloc_size > 1024) {//rather fail that stack overflow
-                       *error = COULD_NOT_MAP_MEMORY;
+                       *ioerror = COULD_NOT_MAP_MEMORY;
                        goto done;
                }
                file_name = (char *)alloca (alloc_size);
@@ -349,7 +344,7 @@ open_memory_map (MonoString *mapName, int mode, gint64 *capacity, int access, in
 
                fd = mkstemp (file_name);
                if (fd == -1) {
-                       *error = COULD_NOT_MAP_MEMORY;
+                       *ioerror = COULD_NOT_MAP_MEMORY;
                        goto done;
                }
 
@@ -369,61 +364,79 @@ open_memory_map (MonoString *mapName, int mode, gint64 *capacity, int access, in
 done:
        named_regions_unlock ();
 
-       g_free (c_mapName);
        return handle;
 }
 
 
+/* This is an icall */
 void *
-mono_mmap_open_file (MonoString *path, int mode, MonoString *mapName, gint64 *capacity, int access, int options, int *error)
+mono_mmap_open_file (MonoString *path, int mode, MonoString *mapName, gint64 *capacity, int access, int options, int *ioerror)
 {
+       MonoError error;
+       MmapHandle *handle = NULL;
        g_assert (path || mapName);
 
-       if (!mapName)
-               return open_file_map (path, -1, mode, capacity, access, options, error);
+       if (!mapName) {
+               char * c_path = mono_string_to_utf8_checked (path, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
+               handle = open_file_map (c_path, -1, mode, capacity, access, options, ioerror);
+               g_free (c_path);
+               return handle;
+       }
 
-       if (path) {
-               MmapHandle *handle;
-               char *c_mapName = mono_string_to_utf8 (mapName);
+       char *c_mapName = mono_string_to_utf8_checked (mapName, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
+       if (path) {
                named_regions_lock ();
                handle = (MmapHandle*)g_hash_table_lookup (named_regions, c_mapName);
                if (handle) {
-                       *error = FILE_ALREADY_EXISTS;
+                       *ioerror = FILE_ALREADY_EXISTS;
                        handle = NULL;
                } else {
-                       handle = (MmapHandle *)open_file_map (path, -1, mode, capacity, access, options, error);
-                       if (handle) {
-                               handle->name = g_strdup (c_mapName);
-                               g_hash_table_insert (named_regions, handle->name, handle);
+                       char *c_path = mono_string_to_utf8_checked (path, &error);
+                       if (is_ok (&error)) {
+                               handle = (MmapHandle *)open_file_map (c_path, -1, mode, capacity, access, options, ioerror);
+                               if (handle) {
+                                       handle->name = g_strdup (c_mapName);
+                                       g_hash_table_insert (named_regions, handle->name, handle);
+                               }
+                       } else {
+                               handle = NULL;
                        }
+                       g_free (c_path);
                }
                named_regions_unlock ();
+       } else
+               handle = open_memory_map (c_mapName, mode, capacity, access, options, ioerror);
 
-               g_free (c_mapName);
-               return handle;
-       }
-
-       return open_memory_map (mapName, mode, capacity, access, options, error);
+       g_free (c_mapName);
+       return handle;
 }
 
+/* this is an icall */
 void *
-mono_mmap_open_handle (void *input_fd, MonoString *mapName, gint64 *capacity, int access, int options, int *error)
+mono_mmap_open_handle (void *input_fd, MonoString *mapName, gint64 *capacity, int access, int options, int *ioerror)
 {
+       MonoError error;
        MmapHandle *handle;
        if (!mapName) {
-               handle = (MmapHandle *)open_file_map (NULL, GPOINTER_TO_INT (input_fd), FILE_MODE_OPEN, capacity, access, options, error);
+               handle = (MmapHandle *)open_file_map (NULL, GPOINTER_TO_INT (input_fd), FILE_MODE_OPEN, capacity, access, options, ioerror);
        } else {
-               char *c_mapName = mono_string_to_utf8 (mapName);
+               char *c_mapName = mono_string_to_utf8_checked (mapName, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
 
                named_regions_lock ();
                handle = (MmapHandle*)g_hash_table_lookup (named_regions, c_mapName);
                if (handle) {
-                       *error = FILE_ALREADY_EXISTS;
+                       *ioerror = FILE_ALREADY_EXISTS;
                        handle = NULL;
                } else {
                        //XXX we're exploiting wapi HANDLE == FD equivalence. THIS IS FRAGILE, create a _wapi_handle_to_fd call
-                       handle = (MmapHandle *)open_file_map (NULL, GPOINTER_TO_INT (input_fd), FILE_MODE_OPEN, capacity, access, options, error);
+                       handle = (MmapHandle *)open_file_map (NULL, GPOINTER_TO_INT (input_fd), FILE_MODE_OPEN, capacity, access, options, ioerror);
                        handle->name = g_strdup (c_mapName);
                        g_hash_table_insert (named_regions, handle->name, handle);
                }
index eb1827a0c6055f863341ad2c12cdcf55b11ec600..e6902c6caa394157f7ec2c223980bc84f42df8cd 100644 (file)
@@ -149,13 +149,16 @@ ves_icall_System_IO_InotifyWatcher_GetInotifyInstance ()
 int
 ves_icall_System_IO_InotifyWatcher_AddWatch (int fd, MonoString *name, gint32 mask)
 {
+       MonoError error;
        char *str, *path;
        int retval;
 
        if (name == NULL)
                return -1;
 
-       str = mono_string_to_utf8 (name);
+       str = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return -1;
        path = mono_portability_find_file (str, TRUE);
        if (!path)
                path = str;
@@ -231,9 +234,9 @@ ves_icall_System_IO_KqueueMonitor_kevent_notimeout (int *kq_ptr, gpointer change
                return -1;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        res = kevent (*kq_ptr, changelist, nchanges, eventlist, nevents, NULL);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
 
index 52d950d8cca7b8469db99a3f95dcd751d6a24f4b..82e013b09cdfc642e32b7d52985d5a83463c9df5 100644 (file)
@@ -66,7 +66,7 @@
 /* useful until we keep track of gc-references in corlib etc. */
 #define IS_GC_REFERENCE(class,t) (mono_gc_is_moving () ? FALSE : ((t)->type == MONO_TYPE_U && (class)->image == mono_defaults.corlib))
 
-void   mono_object_register_finalizer               (MonoObject  *obj, MonoError *error);
+void   mono_object_register_finalizer               (MonoObject  *obj);
 void   ves_icall_System_GC_InternalCollect          (int          generation);
 gint64 ves_icall_System_GC_GetTotalMemory           (MonoBoolean  forceCollection);
 void   ves_icall_System_GC_KeepAlive                (MonoObject  *obj);
@@ -189,10 +189,17 @@ void  mono_gc_finalize_threadpool_threads (void);
 
 /* fast allocation support */
 
+typedef enum {
+       // Regular fast path allocator.
+       MANAGED_ALLOCATOR_REGULAR,
+       // Managed allocator that just calls into the runtime. Used when allocation profiling w/ AOT.
+       MANAGED_ALLOCATOR_SLOW_PATH,
+} ManagedAllocatorVariant;
+
 int mono_gc_get_aligned_size_for_allocator (int size);
 MonoMethod* mono_gc_get_managed_allocator (MonoClass *klass, gboolean for_box, gboolean known_instance_size);
 MonoMethod* mono_gc_get_managed_array_allocator (MonoClass *klass);
-MonoMethod *mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath);
+MonoMethod *mono_gc_get_managed_allocator_by_type (int atype, ManagedAllocatorVariant variant);
 
 guint32 mono_gc_get_managed_allocator_types (void);
 
index 9ab8f7dd6d674aa778d9a9f89a871ec77d1381bb..e44f07f6d8329cb3e3811eb9387baeb4aa6654a0 100644 (file)
@@ -38,6 +38,7 @@
 #include <mono/utils/mono-time.h>
 #include <mono/utils/dtrace.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/atomic.h>
 #include <mono/utils/mono-coop-semaphore.h>
 #include <mono/utils/hazard-pointer.h>
@@ -73,7 +74,7 @@ static MonoCoopCond exited_cond;
 
 static MonoInternalThread *gc_thread;
 
-static void object_register_finalizer (MonoObject *obj, void (*callback)(void *, void*), MonoError *error);
+static void object_register_finalizer (MonoObject *obj, void (*callback)(void *, void*));
 
 static void reference_queue_proccess_all (void);
 static void mono_reference_queue_cleanup (void);
@@ -85,21 +86,23 @@ guarded_wait (HANDLE handle, guint32 timeout, gboolean alertable)
 {
        guint32 result;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        result = WaitForSingleObjectEx (handle, timeout, alertable);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return result;
 }
 
-static void
-add_thread_to_finalize (MonoInternalThread *thread)
+static gboolean
+add_thread_to_finalize (MonoInternalThread *thread, MonoError *error)
 {
+       mono_error_init (error);
        mono_finalizer_lock ();
        if (!threads_to_finalize)
                MONO_GC_REGISTER_ROOT_SINGLE (threads_to_finalize, MONO_ROOT_SOURCE_FINALIZER_QUEUE, "finalizable threads list");
-       threads_to_finalize = mono_mlist_append (threads_to_finalize, (MonoObject*)thread);
+       threads_to_finalize = mono_mlist_append_checked (threads_to_finalize, (MonoObject*)thread, error);
        mono_finalizer_unlock ();
+       return is_ok (error);
 }
 
 static gboolean suspend_finalizers = FALSE;
@@ -164,8 +167,7 @@ mono_gc_run_finalize (void *obj, void *data)
 #endif
 
        /* make sure the finalizer is not called again if the object is resurrected */
-       object_register_finalizer ((MonoObject *)obj, NULL, &error);
-       mono_error_assert_ok (&error); /* FIXME don't swallow the error */
+       object_register_finalizer ((MonoObject *)obj, NULL);
 
        if (log_finalizers)
                g_log ("mono-gc-finalizers", G_LOG_LEVEL_MESSAGE, "<%s at %p> Registered finalizer as processed.", o->vtable->klass->name, o);
@@ -181,7 +183,8 @@ mono_gc_run_finalize (void *obj, void *data)
                        /* Don't finalize threadpool threads when
                           shutting down - they're finalized when the
                           threadpool shuts down. */
-                       add_thread_to_finalize (t);
+                       if (!add_thread_to_finalize (t, &error))
+                               goto unhandled_error;
                        return;
                }
        }
@@ -242,13 +245,15 @@ mono_gc_run_finalize (void *obj, void *data)
        if (!domain->finalize_runtime_invoke) {
                MonoMethod *invoke = mono_marshal_get_runtime_invoke (mono_class_get_method_from_name_flags (mono_defaults.object_class, "Finalize", 0, 0), TRUE);
 
-               domain->finalize_runtime_invoke = mono_compile_method (invoke);
+               domain->finalize_runtime_invoke = mono_compile_method_checked (invoke, &error);
+               mono_error_assert_ok (&error); /* expect this not to fail */
        }
 
        runtime_invoke = (RuntimeInvokeFunction)domain->finalize_runtime_invoke;
 
        mono_runtime_class_init_full (o->vtable, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       if (!is_ok (&error))
+               goto unhandled_error;
 
        if (G_UNLIKELY (MONO_GC_FINALIZE_INVOKE_ENABLED ())) {
                MONO_GC_FINALIZE_INVOKE ((unsigned long)o, mono_object_get_size (o),
@@ -263,6 +268,9 @@ mono_gc_run_finalize (void *obj, void *data)
        if (log_finalizers)
                g_log ("mono-gc-finalizers", G_LOG_LEVEL_MESSAGE, "<%s at %p> Returned from finalizer.", o->vtable->klass->name, o);
 
+unhandled_error:
+       if (!is_ok (&error))
+               exc = (MonoObject*)mono_error_convert_to_exception (&error);
        if (exc)
                mono_thread_internal_unhandled_exception (exc);
 
@@ -272,14 +280,12 @@ mono_gc_run_finalize (void *obj, void *data)
 void
 mono_gc_finalize_threadpool_threads (void)
 {
-       MonoError error;
        while (threads_to_finalize) {
                MonoInternalThread *thread = (MonoInternalThread*) mono_mlist_get_data (threads_to_finalize);
 
                /* Force finalization of the thread. */
                thread->threadpool_thread = FALSE;
-               mono_object_register_finalizer ((MonoObject*)thread, &error);
-               mono_error_assert_ok (&error); /* FIXME don't swallow the error */
+               mono_object_register_finalizer ((MonoObject*)thread);
 
                mono_gc_run_finalize (thread, NULL);
 
@@ -309,16 +315,11 @@ mono_gc_out_of_memory (size_t size)
  * since that, too, can cause the underlying pointer to be offset.
  */
 static void
-object_register_finalizer (MonoObject *obj, void (*callback)(void *, void*), MonoError *error)
+object_register_finalizer (MonoObject *obj, void (*callback)(void *, void*))
 {
        MonoDomain *domain;
 
-       mono_error_init (error);
-
-       if (obj == NULL) {
-               mono_error_set_argument_null (error, "obj", "");
-               return;
-       }
+       g_assert (obj != NULL);
 
        domain = obj->vtable->domain;
 
@@ -360,10 +361,10 @@ object_register_finalizer (MonoObject *obj, void (*callback)(void *, void*), Mon
  * 
  */
 void
-mono_object_register_finalizer (MonoObject *obj, MonoError *error)
+mono_object_register_finalizer (MonoObject *obj)
 {
        /* g_print ("Registered finalizer on %p %s.%s\n", obj, mono_object_class (obj)->name_space, mono_object_class (obj)->name); */
-       object_register_finalizer (obj, mono_gc_run_finalize, error);
+       object_register_finalizer (obj, mono_gc_run_finalize);
 }
 
 /**
@@ -483,19 +484,14 @@ ves_icall_System_GC_KeepAlive (MonoObject *obj)
 void
 ves_icall_System_GC_ReRegisterForFinalize (MonoObject *obj)
 {
-       MonoError error;
-
        MONO_CHECK_ARG_NULL (obj,);
 
-       object_register_finalizer (obj, mono_gc_run_finalize, &error);
-       mono_error_set_pending_exception (&error);
+       object_register_finalizer (obj, mono_gc_run_finalize);
 }
 
 void
 ves_icall_System_GC_SuppressFinalize (MonoObject *obj)
 {
-       MonoError error;
-
        MONO_CHECK_ARG_NULL (obj,);
 
        /* delegates have no finalizers, but we register them to deal with the
@@ -509,8 +505,7 @@ ves_icall_System_GC_SuppressFinalize (MonoObject *obj)
         * generated for it that needs cleaned up, but user wants to suppress
         * their derived object finalizer. */
 
-       object_register_finalizer (obj, NULL, &error);
-       mono_error_set_pending_exception (&error);
+       object_register_finalizer (obj, NULL);
 }
 
 void
@@ -876,14 +871,14 @@ mono_gc_cleanup (void)
                finished = TRUE;
                if (mono_thread_internal_current () != gc_thread) {
                        gboolean timed_out = FALSE;
-                       guint32 start_ticks = mono_msec_ticks ();
-                       guint32 end_ticks = start_ticks + 2000;
+                       gint64 start_ticks = mono_msec_ticks ();
+                       gint64 end_ticks = start_ticks + 2000;
 
                        mono_gc_finalize_notify ();
                        /* Finishing the finalizer thread, so wait a little bit... */
                        /* MS seems to wait for about 2 seconds */
                        while (!finalizer_thread_exited) {
-                               guint32 current_ticks = mono_msec_ticks ();
+                               gint64 current_ticks = mono_msec_ticks ();
                                guint32 timeout;
 
                                if (current_ticks >= end_ticks)
@@ -1119,18 +1114,18 @@ mono_gc_reference_queue_new (mono_reference_queue_callback callback)
 gboolean
 mono_gc_reference_queue_add (MonoReferenceQueue *queue, MonoObject *obj, void *user_data)
 {
-       MonoError error;
        RefQueueEntry *entry;
        if (queue->should_be_deleted)
                return FALSE;
 
+       g_assert (obj != NULL);
+
        entry = g_new0 (RefQueueEntry, 1);
        entry->user_data = user_data;
        entry->domain = mono_object_domain (obj);
 
        entry->gchandle = mono_gchandle_new_weakref (obj, TRUE);
-       mono_object_register_finalizer (obj, &error);
-       mono_error_assert_ok (&error);
+       mono_object_register_finalizer (obj);
 
        ref_list_push (&queue->queue, entry);
        return TRUE;
index 6c266259508ae6f251856794587f9967db5fd7b1..4b4239eb66f7cfbd3b08ac9da26439b27bf64993 100644 (file)
@@ -3,8 +3,10 @@
  *
  * Authors:
  *  - Ludovic Henry <ludovic@xamarin.com>
+ *  - Aleksey Klieger <aleksey.klieger@xamarin.com>
+ *  - Rodrigo Kumpera <kumpera@xamarin.com>
  *
- * Copyright 2015 Xamarin, Inc. (www.xamarin.com)
+ * Copyright 2016 Dot net foundation.
  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
  */
 
 #include <mono/utils/atomic.h>
 #include <mono/utils/mono-lazy-init.h>
 #include <mono/utils/mono-threads.h>
+/* TODO (missing pieces)
 
-#define HANDLES_PER_CHUNK (16 - 2)
+Add counters for:
+       number of stack marks
+       stack marks per icall
+       mix/max/avg size of stack marks
+       handle stack wastage
 
-typedef struct _MonoHandleArenaChunk MonoHandleArenaChunk;
-struct _MonoHandleArenaChunk {
-       /* if next is NULL, this is the first chunk.
-        *
-        * The first chunk is special - it was allocated together with
-        * its owning arena and must not be deallocated unless the
-        * arena is being deallocated.  N.B: Arenas are
-        * stack-allocated.
-        */
-       MonoHandleArenaChunk *next;
-       gsize handles_size;
-       MonoHandleStorage handles [HANDLES_PER_CHUNK];
-};
+Actually do something in mono_handle_verify
 
-struct _MonoHandleArena {
-       MonoHandleArenaChunk *chunk;
-       MonoHandleArena *prev;
-};
+Shrink the handles stack in mono_handle_stack_scan
+Properly report it to the profiler.
+Add a boehm implementation
 
-static mono_lazy_init_t arena_status = MONO_LAZY_INIT_STATUS_NOT_INITIALIZED;
+TODO (things to explore):
 
-static MonoGCDescriptor arena_desc = MONO_GC_DESCRIPTOR_NULL;
+There's no convenient way to wrap the object allocation function.
+Right now we do this:
+       MonoCultureInfoHandle culture = MONO_HANDLE_NEW (MonoCultureInfo, mono_object_new_checked (domain, klass, &error));
 
-static MonoHandleArenaChunk *chunk_free_list = NULL;
+Maybe what we need is a round of cleanup around all exposed types in the runtime to unify all helpers under the same hoof.
+Combine: MonoDefaults, GENERATE_GET_CLASS_WITH_CACHE, TYPED_HANDLE_DECL and friends.
+       This would solve the age old issue of making it clear which types are optional and tell that to the linker.
+       We could then generate neat type safe wrappers.
+*/
 
-static inline MonoHandleArenaChunk*
-chunk_alloc (void)
-{
-       MonoHandleArenaChunk *old, *new;
-
-       do {
-               old = chunk_free_list;
-               if (!old) {
-                       MonoHandleArenaChunk *chunk;
-
-                       chunk = g_malloc0 (sizeof (MonoHandleArenaChunk));
-                       g_assert (chunk);
+const MonoObject *null_cell = { NULL };
+const MonoObjectHandle mono_null_value_handle = { (MonoObject**)&null_cell };
 
-                       return chunk;
-               }
-
-               new = old->next;
-       } while (InterlockedCompareExchangePointer ((gpointer*) &chunk_free_list, new, old) != old);
-
-       memset (old, 0, sizeof (MonoHandleArenaChunk));
-       return old;
-}
+#define THIS_IS_AN_OK_NUMBER_OF_HANDLES 100
 
-static inline void
-chunk_free (MonoHandleArenaChunk *chunk)
+/* Actual handles implementation */
+MonoRawHandle
+mono_handle_new (MonoObject *object)
 {
-       if (chunk == NULL)
-               return;
-       while (chunk->next != NULL) {
-               MonoHandleArenaChunk *next = chunk->next;
-               chunk->next = NULL;
-               do {
-                       chunk->next = chunk_free_list;
-               } while (InterlockedCompareExchangePointer ((gpointer*) &chunk_free_list, chunk, chunk->next) != chunk->next);
-               chunk = next;
+       MonoThreadInfo *info = mono_thread_info_current ();
+       HandleStack *handles = (HandleStack *)info->handle_stack;
+       HandleChunk *top = handles->top;
+
+retry:
+       if (G_LIKELY (top->size < OBJECTS_PER_HANDLES_CHUNK)) {
+               MonoObject **h = &top->objects [top->size++];
+               *h = object;
+               return h;
        }
-}
-
-static MonoHandle
-handle_new (MonoHandleArena *arena, MonoObject *obj)
-{
-       MonoHandleArenaChunk *chunk;
-
-       g_assert (arena->chunk);
-
-       chunk = arena->chunk;
-
-       if (chunk->handles_size < HANDLES_PER_CHUNK) {
-               chunk->handles [chunk->handles_size].__private_obj = obj;
-               chunk->handles_size += 1;
-
-               return &chunk->handles [chunk->handles_size - 1];
-       } else {
-
-               MonoHandleArenaChunk *new_chunk = chunk_alloc ();
-               new_chunk->next = chunk;
-               arena->chunk = chunk = new_chunk;
-
-               chunk->handles [0].__private_obj = obj;
-               chunk->handles_size = 1;
-
-               return &chunk->handles [0];
+       if (G_LIKELY (top->next)) {
+               top = top->next;
+               top->size = 0;
+               handles->top = top;
+               goto retry;
        }
+       HandleChunk *new_chunk = g_new (HandleChunk, 1);
+       new_chunk->size = 0;
+       new_chunk->prev = top;
+       new_chunk->next = NULL;
+       top->next = new_chunk;
+       handles->top = new_chunk;
+       goto retry;
 }
 
-MonoHandle
-mono_handle_arena_new (MonoHandleArena *arena, MonoObject *obj)
-{
-       g_assert (arena);
-       return handle_new (arena, obj);
-}
-
-/*
- * Elevate the handle to the parent arena
- */
-MonoHandle
-mono_handle_arena_elevate (MonoHandleArena *arena, MonoHandle handle)
-{
-       g_assert (handle);
-       g_assert (arena);
-       g_assert (arena->prev);
 
-       return handle_new (arena->prev, handle->__private_obj);
-}
 
-gsize
-mono_handle_arena_size (void)
+HandleStack*
+mono_handle_stack_alloc (void)
 {
-       return sizeof (MonoHandleArena) + sizeof (MonoHandleArenaChunk);
+       HandleStack *stack = g_new (HandleStack, 1);
+       HandleChunk *chunk = g_new (HandleChunk, 1);
+
+       stack->top = stack->bottom = chunk;
+       chunk->size = 0;
+       chunk->prev = chunk->next = NULL;
+       return stack;
 }
 
 void
-mono_handle_arena_stack_push(MonoHandleArena **arena_stack, MonoHandleArena *arena)
+mono_handle_stack_free (HandleStack *stack)
 {
-       g_assert (arena_stack);
-       g_assert (arena);
-
-       arena->prev = *arena_stack;
-       arena->chunk = (MonoHandleArenaChunk*) (((char*) arena) + sizeof (MonoHandleArena));
-
-       arena->chunk->next = NULL;
-       arena->chunk->handles_size = 0;
-       memset (&arena->chunk->handles [0], 0, sizeof (MonoHandleStorage) * HANDLES_PER_CHUNK);
-
-       *arena_stack = arena;
+       if (!stack)
+               return;
+       HandleChunk *c = stack->bottom;
+       while (c) {
+               HandleChunk *next = c->next;
+               g_free (c);
+               c = next;
+       }
+       g_free (c);
 }
 
 void
-mono_handle_arena_stack_pop(MonoHandleArena **arena_stack, MonoHandleArena *arena)
+mono_handle_stack_scan (HandleStack *stack, GcScanFunc func, gpointer gc_data)
 {
-       MonoHandleArenaChunk *chunk, *next;
+       HandleChunk *cur = stack->bottom;
+       HandleChunk *last = stack->top;
 
-       g_assert (arena);
-       g_assert (arena->chunk);
-       g_assert (arena_stack);
-
-       *arena_stack = arena->prev;
+       if (!cur)
+               return;
 
-       for (chunk = arena->chunk; chunk; chunk = next) {
-               next = chunk->next;
-               memset (&chunk->handles [0], 0, sizeof (MonoHandleStorage) * HANDLES_PER_CHUNK);
-               if (next != NULL)
-                       chunk_free (chunk);
+       while (cur) {
+               int i;
+               for (i = 0; i < cur->size; ++i)
+                       func ((gpointer*)&cur->objects [i], gc_data);
+               if (cur == last)
+                       break;
+               cur = cur->next;
        }
 }
 
-static void
-arena_scan (gpointer addr, MonoGCMarkFunc mark_func, gpointer gc_data)
+void
+mono_stack_mark_record_size (MonoThreadInfo *info, HandleStackMark *stackmark, const char *func_name)
 {
-       MonoHandleArena *arena;
-       MonoHandleArenaChunk *chunk;
-       int i;
-
-       for (arena = *(MonoHandleArena**) addr; arena; arena = arena->prev) {
-               for (chunk = arena->chunk; chunk; chunk = chunk->next) {
-                       for (i = 0; i < chunk->handles_size; ++i) {
-                               if (chunk->handles [i].__private_obj != NULL)
-                                       mark_func (&chunk->handles [i].__private_obj, gc_data);
-                       }
-               }
+       HandleStack *handles = (HandleStack *)info->handle_stack;
+       HandleChunk *cur = stackmark->chunk;
+       int size = -stackmark->size; //discard the starting point of the stack
+       while (cur) {
+               size += cur->size;
+               if (cur == handles->top)
+                       break;
+               cur = cur->next;
        }
-}
 
-static void
-initialize (void)
-{
-       arena_desc = mono_gc_make_root_descr_user (arena_scan);
+       if (size > THIS_IS_AN_OK_NUMBER_OF_HANDLES)
+               printf ("%s USED %d handles\n", func_name, size);
 }
 
-void
-mono_handle_arena_init (MonoHandleArena **arena_stack)
+/*
+ * Pop the stack until @stackmark and make @value the top value.
+ *
+ * @return the new handle for what @value points to 
+ */
+MonoRawHandle
+mono_stack_mark_pop_value (MonoThreadInfo *info, HandleStackMark *stackmark, MonoRawHandle value)
 {
-       mono_lazy_initialize (&arena_status, initialize);
-       mono_gc_register_root ((char*) arena_stack, sizeof (MonoHandleArena*), arena_desc, MONO_ROOT_SOURCE_HANDLE, "runtime threads handle arena");
+       g_error ("impl me");
 }
 
-void
-mono_handle_arena_cleanup (MonoHandleArena **arena_stack)
+/* Temporary place for some of the handle enabled wrapper functions*/
+
+MonoStringHandle
+mono_string_new_handle (MonoDomain *domain, const char *data)
 {
-       mono_gc_deregister_root ((char*) arena_stack);
+       return MONO_HANDLE_NEW (MonoString, mono_string_new (domain, data));
 }
 
-MonoHandleArena*
-mono_handle_arena_current (void)
+MonoArrayHandle
+mono_array_new_handle (MonoDomain *domain, MonoClass *eclass, uintptr_t n, MonoError *error)
 {
-       return (MonoHandleArena*) mono_thread_info_current ()->handle_arena;
+       return MONO_HANDLE_NEW (MonoArray, mono_array_new_checked (domain, eclass, n, error));
 }
 
-MonoHandleArena**
-mono_handle_arena_current_addr (void)
+#ifdef ENABLE_CHECKED_BUILD
+/* Checked build helpers */
+void
+mono_handle_verify (MonoRawHandle raw_handle)
 {
-       return (MonoHandleArena**) &mono_thread_info_current ()->handle_arena;
+       
 }
+#endif
index 99a0428290355f98fad465166ced168e0b8f1c84..3d48c0648580442e50dde4272fa6b130f434f60c 100644 (file)
@@ -3,8 +3,10 @@
  *
  * Authors:
  *  - Ludovic Henry <ludovic@xamarin.com>
+ *  - Aleksey Klieger <aleksey.klieger@xamarin.com>
+ *  - Rodrigo Kumpera <kumpera@xamarin.com>
  *
- * Copyright 2015 Xamarin, Inc. (www.xamarin.com)
+ * Copyright 2016 Dot net foundation.
  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
  */
 
 
 #include <mono/metadata/object.h>
 #include <mono/metadata/class.h>
-#include <mono/utils/mono-error.h>
+#include <mono/utils/mono-error-internals.h>
+#include <mono/utils/mono-threads.h>
 #include <mono/utils/checked-build.h>
 
 G_BEGIN_DECLS
 
-/*
- * DO NOT ACCESS DIRECTLY
- * USE mono_handle_obj BELOW TO ACCESS OBJ
- *
- * The field obj is not private as there is no way to do that
- * in C, but using a C++ template would simplify that a lot
- */
-typedef struct {
-       MonoObject *__private_obj;
-} MonoHandleStorage;
-
-typedef MonoHandleStorage* MonoHandle;
 
-typedef struct _MonoHandleArena MonoHandleArena;
+/*
+Handle stack.
 
-gsize
-mono_handle_arena_size (void);
+The handle stack is designed so it's efficient to pop a large amount of entries at once.
+The stack is made out of a series of fixed size segments.
 
-MonoHandle
-mono_handle_arena_new (MonoHandleArena *arena, MonoObject *obj);
+To do bulk operations you use a stack mark.
+       
+*/
 
-MonoHandle
-mono_handle_arena_elevate (MonoHandleArena *arena, MonoHandle handle);
+/*
+3 is the number of fields besides the data in the struct;
+128 words makes each chunk 512 or 1024 bytes each
+*/
+#define OBJECTS_PER_HANDLES_CHUNK (128 - 3)
 
-void
-mono_handle_arena_stack_push (MonoHandleArena **arena_stack, MonoHandleArena *arena);
+/*
+Whether this config needs stack watermark recording to know where to start scanning from.
+*/
+#ifdef HOST_WATCHOS
+#define MONO_NEEDS_STACK_WATERMARK 1
+#endif
 
-void
-mono_handle_arena_stack_pop (MonoHandleArena **arena_stack, MonoHandleArena *arena);
+typedef struct _HandleChunk HandleChunk;
 
-void
-mono_handle_arena_init (MonoHandleArena **arena_stack);
+struct _HandleChunk {
+       int size; //number of bytes
+       HandleChunk *prev, *next;
+       MonoObject *objects [OBJECTS_PER_HANDLES_CHUNK];
+};
 
-void
-mono_handle_arena_cleanup (MonoHandleArena **arena_stack);
+typedef struct {
+       HandleChunk *top; //alloc from here
+       HandleChunk *bottom; //scan from here
+} HandleStack;
 
-MonoHandleArena*
-mono_handle_arena_current (void);
+typedef struct {
+       int size;
+       HandleChunk *chunk;
+} HandleStackMark;
 
-MonoHandleArena**
-mono_handle_arena_current_addr (void);
+typedef void *MonoRawHandle;
 
-#define MONO_HANDLE_ARENA_PUSH()       \
-       do {    \
-               MonoHandleArena **__arena_stack = mono_handle_arena_current_addr ();    \
-               MonoHandleArena *__arena = (MonoHandleArena*) g_alloca (mono_handle_arena_size ());     \
-               mono_handle_arena_stack_push (__arena_stack, __arena)
+typedef void (*GcScanFunc) (gpointer*, gpointer);
 
-#define MONO_HANDLE_ARENA_POP()        \
-               mono_handle_arena_stack_pop (__arena_stack, __arena);   \
-       } while (0)
 
-#define MONO_HANDLE_ARENA_POP_RETURN_UNSAFE(handle,ret)        \
-               (ret) = (handle)->__private_obj;        \
-               mono_handle_arena_stack_pop (__arena_stack, __arena);   \
-       } while (0)
+MonoRawHandle mono_handle_new (MonoObject *object);
 
-#define MONO_HANDLE_ARENA_POP_RETURN(handle,ret_handle)        \
-               *((MonoHandle**)(&(ret_handle))) = mono_handle_elevate ((MonoHandle*)(handle)); \
-               mono_handle_arena_stack_pop(__arena_stack, __arena);    \
-       } while (0)
+void mono_handle_stack_scan (HandleStack *stack, GcScanFunc func, gpointer gc_data);
+HandleStack* mono_handle_stack_alloc (void);
+void mono_handle_stack_free (HandleStack *handlestack);
+MonoRawHandle mono_stack_mark_pop_value (MonoThreadInfo *info, HandleStackMark *stackmark, MonoRawHandle value);
+void mono_stack_mark_record_size (MonoThreadInfo *info, HandleStackMark *stackmark, const char *func_name);
 
-static inline MonoHandle
-mono_handle_new (MonoObject *obj)
+static void
+mono_stack_mark_init (MonoThreadInfo *info, HandleStackMark *stackmark)
 {
-       return mono_handle_arena_new (mono_handle_arena_current (), obj);
+       HandleStack *handles = (HandleStack *)info->handle_stack;
+       stackmark->size = handles->top->size;
+       stackmark->chunk = handles->top;
 }
 
-static inline MonoHandle
-mono_handle_elevate (MonoHandle handle)
+static void
+mono_stack_mark_pop (MonoThreadInfo *info, HandleStackMark *stackmark)
 {
-       return mono_handle_arena_elevate (mono_handle_arena_current (), handle);
+       HandleStack *handles = (HandleStack *)info->handle_stack;
+       handles->top = stackmark->chunk;
+       handles->top->size = stackmark->size;
 }
 
-#ifndef ENABLE_CHECKED_BUILD
+/*
+Icall macros
+*/
+#define SETUP_ICALL_COMMON     \
+       do { \
+               MonoError error;        \
+               MonoThreadInfo *__info = mono_thread_info_current ();   \
+               error_init (&error);    \
 
-#define mono_handle_obj(handle) ((handle)->__private_obj)
+#define CLEAR_ICALL_COMMON     \
+       mono_error_set_pending_exception (&error);
 
-#define mono_handle_assign(handle,rawptr) do { (handle)->__private_obj = (rawptr); } while(0)
+#define SETUP_ICALL_FRAME      \
+       HandleStackMark __mark; \
+       mono_stack_mark_init (__info, &__mark);
 
-#else
+#define CLEAR_ICALL_FRAME      \
+       mono_stack_mark_record_size (__info, &__mark, __FUNCTION__);    \
+       mono_stack_mark_pop (__info, &__mark);
+
+#ifdef MONO_NEEDS_STACK_WATERMARK
 
-static inline void
-mono_handle_check_in_critical_section ()
+static void
+mono_thread_info_pop_stack_mark (MonoThreadInfo *info, void *old_mark)
 {
-       MONO_REQ_GC_CRITICAL;
+       info->stack_mark = old_mark;
 }
 
-#define mono_handle_obj(handle) (mono_handle_check_in_critical_section (), (handle)->__private_obj)
+static void*
+mono_thread_info_push_stack_mark (MonoThreadInfo *info, void *mark)
+{
+       void *old = info->stack_mark;
+       info->stack_mark = mark;
+       return old;
+}
 
-#define mono_handle_assign(handle,rawptr) do { mono_handle_check_in_critical_section (); (handle)->__private_obj = (rawptr); } while (0)
+#define SETUP_STACK_WATERMARK  \
+       int __dummy;    \
+       __builtin_unwind_init ();       \
+       void *__old_stack_mark = mono_thread_info_push_stack_mark (__info, &__dummy);
 
-#endif
+#define CLEAR_STACK_WATERMARK  \
+       mono_thread_info_pop_stack_mark (__info, __old_stack_mark);
 
-static inline MonoClass*
-mono_handle_class (MonoHandle handle)
-{
-       return mono_object_get_class (handle->__private_obj);
-}
+#else
+#define SETUP_STACK_WATERMARK
+#define CLEAR_STACK_WATERMARK
+#endif
 
-static inline MonoDomain*
-mono_handle_domain (MonoHandle handle)
-{
-       return mono_object_get_domain (handle->__private_obj);
-}
+#define ICALL_ENTRY()  \
+       SETUP_ICALL_COMMON      \
+       SETUP_ICALL_FRAME       \
+       SETUP_STACK_WATERMARK
 
-#define mono_handle_obj_is_null(handle) ((handle)->__private_obj == NULL)
+#define ICALL_RETURN() \
+       do {    \
+               CLEAR_STACK_WATERMARK   \
+               CLEAR_ICALL_COMMON      \
+               CLEAR_ICALL_FRAME       \
+               return; \
+       } while (0); } while (0)
 
-#define MONO_HANDLE_TYPE_DECL(type)      typedef struct { type *__private_obj; } type ## HandleStorage ; \
-       typedef type ## HandleStorage * type ## Handle
-#define MONO_HANDLE_TYPE(type)           type ## Handle
-#define MONO_HANDLE_NEW(type,obj)        ((type ## Handle) mono_handle_new ((MonoObject*) (obj)))
-#define MONO_HANDLE_ELEVATE(type,handle) ((type ## Handle) mono_handle_elevate ((MonoObject*) (handle)->__private_obj))
+#define ICALL_RETURN_VAL(VAL)  \
+       do {    \
+               CLEAR_STACK_WATERMARK   \
+               CLEAR_ICALL_COMMON      \
+               CLEAR_ICALL_FRAME       \
+               return VAL;     \
+       } while (0); } while (0)
 
-#define MONO_HANDLE_ASSIGN(handle,rawptr)      \
+#define ICALL_RETURN_OBJ(HANDLE)       \
        do {    \
-               mono_handle_assign ((handle), (rawptr));        \
-       } while (0)
+               CLEAR_STACK_WATERMARK   \
+               CLEAR_ICALL_COMMON      \
+               void* __ret = MONO_HANDLE_RAW (HANDLE); \
+               CLEAR_ICALL_FRAME       \
+               return __ret;   \
+       } while (0); } while (0)
 
-#define MONO_HANDLE_SETREF(handle,fieldname,value)                     \
-       do {                                                            \
-               MonoHandle __value = (MonoHandle) (value);              \
-               MONO_PREPARE_GC_CRITICAL_REGION;                                        \
-               MONO_OBJECT_SETREF (mono_handle_obj ((handle)), fieldname, mono_handle_obj (__value)); \
-               MONO_FINISH_GC_CRITICAL_REGION;                                 \
-       } while (0)
+/*
+Handle macros/functions
+*/
 
-#define MONO_HANDLE_SETREF_NULL(handle,fieldname)                      \
-       do {                                                            \
-               MONO_PREPARE_GC_CRITICAL_REGION;                        \
-               MONO_OBJECT_SETREF (mono_handle_obj ((handle)), fieldname, NULL); \
-               MONO_FINISH_GC_CRITICAL_REGION;                         \
-       } while (0)
+#ifdef ENABLE_CHECKED_BUILD
+void mono_handle_verify (MonoRawHandle handle);
+#define HANDLE_INVARIANTS(H) mono_handle_verify((void*)(H).__obj)
+#else
+#define HANDLE_INVARIANTS(H) (0)
+#endif
 
+#define TYPED_HANDLE_NAME(TYPE) TYPE ## Handle
+#define TYPED_HANDLE_DECL(TYPE) typedef struct { TYPE **__obj; } TYPED_HANDLE_NAME (TYPE) ;
 
-#define MONO_HANDLE_SET(handle,fieldname,value)        \
-       do {    \
-               MONO_PREPARE_GC_CRITICAL_REGION;        \
-               mono_handle_obj ((handle))->fieldname = (value);        \
-               MONO_FINISH_GC_CRITICAL_REGION; \
-       } while (0)
+#define MONO_HANDLE_INIT { (void*)mono_null_value_handle.__obj }
+#define NULL_HANDLE mono_null_value_handle
 
-#define MONO_HANDLE_ARRAY_SETREF(handle,index,value)                   \
-       do {                                                            \
-               MonoHandle __value = (MonoHandle) (value);              \
-               MONO_PREPARE_GC_CRITICAL_REGION;                                        \
-               mono_array_setref (mono_handle_obj ((handle)), (index), mono_handle_obj (__value)); \
-               MONO_FINISH_GC_CRITICAL_REGION;                                 \
-       } while (0)
+//XXX add functions to get/set raw, set field, set field to null, set array, set array to null
+#define MONO_HANDLE_RAW(HANDLE) (HANDLE_INVARIANTS (HANDLE), (*(HANDLE).__obj))
+#define MONO_HANDLE_DCL(TYPE, NAME) TYPED_HANDLE_NAME(TYPE) NAME = { mono_handle_new ((MonoObject*)(NAME ## _raw)) }
+#define MONO_HANDLE_NEW(TYPE, VALUE) (TYPED_HANDLE_NAME(TYPE)){ mono_handle_new ((MonoObject*)(VALUE)) }
+#define MONO_HANDLE_CAST(TYPE, VALUE) (TYPED_HANDLE_NAME(TYPE)){ (TYPE**)((VALUE).__obj) }
 
-#define MONO_HANDLE_ARRAY_SETREF_NULL(handle,index)                    \
-       do {                                                            \
-               MONO_PREPARE_GC_CRITICAL_REGION;                        \
-               mono_array_setref (mono_handle_obj ((handle)), (index), NULL); \
-               MONO_FINISH_GC_CRITICAL_REGION;                         \
+/*
+WARNING WARNING WARNING
+
+The following functions require a particular evaluation ordering to ensure correctness.
+We must not have exposed handles while any sort of evaluation is happening as that very evaluation might trigger
+a safepoint and break us.
+
+This is why we evaluate index and value before any call to MONO_HANDLE_RAW or other functions that deal with naked objects.
+*/
+#define MONO_HANDLE_SETRAW(HANDLE, FIELD, VALUE) do {  \
+               MonoObject *__val = (MonoObject*)(VALUE);       \
+               MONO_OBJECT_SETREF (MONO_HANDLE_RAW (HANDLE), FIELD, __val);    \
+       } while (0);
+
+#define MONO_HANDLE_SET(HANDLE, FIELD, VALUE) do {     \
+               MonoObjectHandle __val = MONO_HANDLE_CAST (MonoObject, VALUE);  \
+               MONO_OBJECT_SETREF (MONO_HANDLE_RAW (HANDLE), FIELD, MONO_HANDLE_RAW (__val));  \
+       } while (0);
+
+/* VS doesn't support typeof :( :( :( */
+#define MONO_HANDLE_SETVAL(HANDLE, FIELD, TYPE, VALUE) do {    \
+               TYPE __val = (VALUE);   \
+               MONO_HANDLE_RAW (HANDLE)->FIELD = __val;        \
+        } while (0)
+
+#define MONO_HANDLE_ARRAY_SETREF(HANDLE, IDX, VALUE) do {      \
+               int __idx = (IDX);      \
+               MonoObjectHandle __val = MONO_HANDLE_CAST (MonoObject, VALUE);          \
+               mono_array_setref_fast (MONO_HANDLE_RAW (HANDLE), __idx, MONO_HANDLE_RAW (__val));      \
        } while (0)
-       
 
-#define MONO_HANDLE_ARRAY_SET(handle,type,index,value) \
-       do {    \
-               MONO_PREPARE_GC_CRITICAL_REGION;        \
-               mono_array_set (mono_handle_obj ((handle)), type, (index), (value));    \
-               MONO_FINISH_GC_CRITICAL_REGION; \
+#define MONO_HANDLE_ARRAY_SETRAW(HANDLE, IDX, VALUE) do {      \
+               int __idx = (IDX);      \
+               MonoObject *__val = (MonoObject*)(VALUE);       \
+               mono_array_setref_fast (MONO_HANDLE_RAW (HANDLE), __idx, __val);        \
        } while (0)
 
 
+/* Baked typed handles we all want */
+TYPED_HANDLE_DECL (MonoString)
+TYPED_HANDLE_DECL (MonoArray)
+TYPED_HANDLE_DECL (MonoObject)
 
+/*
+This is the constant for a handle that points nowhere.
+Init values to it.
+*/
+extern const MonoObjectHandle mono_null_value_handle;
 
-/* Some common handle types */
 
-MONO_HANDLE_TYPE_DECL (MonoArray);
-MONO_HANDLE_TYPE_DECL (MonoString);
+//FIXME this should go somewhere else
+MonoStringHandle mono_string_new_handle (MonoDomain *domain, const char *data);
+MonoArrayHandle mono_array_new_handle (MonoDomain *domain, MonoClass *eclass, uintptr_t n, MonoError *error);
 
 G_END_DECLS
 
index 9c345a269cde4a0e5a36d7b234a9450695c4a004..d6012ab507175149f0239b2dd78039e4c2b84c50 100644 (file)
@@ -62,6 +62,9 @@ ICALL_TYPE(RUNTIME, "Mono.Runtime", RUNTIME_1)
 ICALL(RUNTIME_1, "GetDisplayName", ves_icall_Mono_Runtime_GetDisplayName)
 ICALL(RUNTIME_12, "GetNativeStackTrace", ves_icall_Mono_Runtime_GetNativeStackTrace)
 
+ICALL_TYPE(RTCLASS, "Mono.RuntimeClassHandle", RTCLASS_1)
+ICALL(RTCLASS_1, "GetTypeFromClass", ves_icall_Mono_RuntimeClassHandle_GetTypeFromClass)
+
 #ifndef PLATFORM_RO_FS
 ICALL_TYPE(KPAIR, "Mono.Security.Cryptography.KeyPairPersistence", KPAIR_1)
 ICALL(KPAIR_1, "_CanSecure", ves_icall_Mono_Security_Cryptography_KeyPairPersistence_CanSecure)
@@ -239,7 +242,7 @@ ICALL(ENV_10, "get_HasShutdownStarted", ves_icall_System_Environment_get_HasShut
 ICALL(ENV_11, "get_MachineName", ves_icall_System_Environment_get_MachineName)
 ICALL(ENV_13, "get_Platform", ves_icall_System_Environment_get_Platform)
 ICALL(ENV_14, "get_ProcessorCount", mono_cpu_count)
-ICALL(ENV_15, "get_TickCount", mono_msec_ticks)
+ICALL(ENV_15, "get_TickCount", ves_icall_System_Environment_get_TickCount)
 ICALL(ENV_16, "get_UserName", ves_icall_System_Environment_get_UserName)
 ICALL(ENV_16m, "internalBroadcastSettingChange", ves_icall_System_Environment_BroadcastSettingChange)
 ICALL(ENV_17, "internalGetEnvironmentVariable", ves_icall_System_Environment_GetEnvironmentVariable)
@@ -398,11 +401,6 @@ ICALL(MCATTR_1, "GetCustomAttributesDataInternal", ves_icall_MonoCustomAttrs_Get
 ICALL(MCATTR_2, "GetCustomAttributesInternal", custom_attrs_get_by_type)
 ICALL(MCATTR_3, "IsDefinedInternal", custom_attrs_defined_internal)
 
-ICALL_TYPE(MTYPE, "System.MonoType", MTYPE_1)
-ICALL(MTYPE_1, "GetCorrespondingInflatedConstructor", ves_icall_MonoType_GetCorrespondingInflatedMethod)
-ICALL(MTYPE_2, "GetCorrespondingInflatedMethod", ves_icall_MonoType_GetCorrespondingInflatedMethod)
-ICALL(MTYPE_3, "type_from_obj", ves_icall_MonoType_type_from_obj)
-
 #ifndef DISABLE_SOCKETS
 ICALL_TYPE(NDNS, "System.Net.Dns", NDNS_1)
 ICALL(NDNS_1, "GetHostByAddr_internal(string,string&,string[]&,string[]&)", ves_icall_System_Net_Dns_GetHostByAddr_internal)
@@ -711,9 +709,6 @@ ICALL(CONTEXT_2, "ReleaseContext", ves_icall_System_Runtime_Remoting_Contexts_Co
 ICALL_TYPE(ARES, "System.Runtime.Remoting.Messaging.AsyncResult", ARES_1)
 ICALL(ARES_1, "Invoke", ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke)
 
-ICALL_TYPE(MONOMM, "System.Runtime.Remoting.Messaging.MonoMethodMessage", MONOMM_1)
-ICALL(MONOMM_1, "InitMessage", ves_icall_MonoMethodMessage_InitMessage)
-
 #ifndef DISABLE_REMOTING
 ICALL_TYPE(REALP, "System.Runtime.Remoting.Proxies.RealProxy", REALP_1)
 ICALL(REALP_1, "InternalGetProxyType", ves_icall_Remoting_RealProxy_InternalGetProxyType)
@@ -737,32 +732,34 @@ ICALL(MHAN_1, "GetFunctionPointer", ves_icall_RuntimeMethodHandle_GetFunctionPoi
 
 ICALL_TYPE(RT, "System.RuntimeType", RT_1)
 ICALL(RT_1, "CreateInstanceInternal", ves_icall_System_Activator_CreateInstanceInternal)
-ICALL(RT_2, "GetConstructors_internal", ves_icall_Type_GetConstructors_internal)
-ICALL(RT_3, "GetEvents_internal", ves_icall_Type_GetEvents_internal)
-ICALL(RT_5, "GetFields_internal", ves_icall_Type_GetFields_internal)
-ICALL(RT_6, "GetGenericArgumentsInternal", ves_icall_MonoType_GetGenericArguments)
-ICALL(RT_7, "GetGenericParameterAttributes", ves_icall_Type_GetGenericParameterAttributes)
-ICALL(RT_8, "GetGenericParameterConstraints_impl", ves_icall_Type_GetGenericParameterConstraints)
-ICALL(RT_9, "GetGenericParameterPosition", ves_icall_Type_GetGenericParameterPosition)
-ICALL(RT_10, "GetInterfaceMapData", ves_icall_Type_GetInterfaceMapData)
-ICALL(RT_11, "GetInterfaces", ves_icall_Type_GetInterfaces)
-ICALL(RT_12, "GetMethodsByName", ves_icall_Type_GetMethodsByName)
-ICALL(RT_13, "GetNestedTypes_internal", ves_icall_Type_GetNestedTypes)
-ICALL(RT_14, "GetPacking", ves_icall_Type_GetPacking)
-ICALL(RT_15, "GetPropertiesByName", ves_icall_Type_GetPropertiesByName)
+ICALL(RT_2, "GetConstructors_internal", ves_icall_RuntimeType_GetConstructors_internal)
+ICALL(RT_30, "GetCorrespondingInflatedConstructor", ves_icall_RuntimeType_GetCorrespondingInflatedMethod)
+ICALL(RT_31, "GetCorrespondingInflatedMethod", ves_icall_RuntimeType_GetCorrespondingInflatedMethod)
+ICALL(RT_3, "GetEvents_internal", ves_icall_RuntimeType_GetEvents_internal)
+ICALL(RT_5, "GetFields_internal", ves_icall_RuntimeType_GetFields_internal)
+ICALL(RT_6, "GetGenericArgumentsInternal", ves_icall_RuntimeType_GetGenericArguments)
+ICALL(RT_7, "GetGenericParameterAttributes", ves_icall_RuntimeType_GetGenericParameterAttributes)
+ICALL(RT_8, "GetGenericParameterConstraints_impl", ves_icall_RuntimeType_GetGenericParameterConstraints)
+ICALL(RT_9, "GetGenericParameterPosition", ves_icall_RuntimeType_GetGenericParameterPosition)
+ICALL(RT_10, "GetInterfaceMapData", ves_icall_RuntimeType_GetInterfaceMapData)
+ICALL(RT_11, "GetInterfaces", ves_icall_RuntimeType_GetInterfaces)
+ICALL(RT_12, "GetMethodsByName", ves_icall_RuntimeType_GetMethodsByName)
+ICALL(RT_13, "GetNestedTypes_internal", ves_icall_RuntimeType_GetNestedTypes)
+ICALL(RT_14, "GetPacking", ves_icall_RuntimeType_GetPacking)
+ICALL(RT_15, "GetPropertiesByName", ves_icall_RuntimeType_GetPropertiesByName)
 ICALL(RT_16, "GetTypeCodeImplInternal", ves_icall_type_GetTypeCodeInternal)
 ICALL(RT_28, "IsTypeExportedToWindowsRuntime", ves_icall_System_RuntimeType_IsTypeExportedToWindowsRuntime)
 ICALL(RT_29, "IsWindowsRuntimeObjectType", ves_icall_System_RuntimeType_IsWindowsRuntimeObjectType)
-ICALL(RT_17, "MakeGenericType", ves_icall_Type_MakeGenericType)
-ICALL(RT_18, "MakePointerType", ves_icall_Type_MakePointerType)
+ICALL(RT_17, "MakeGenericType", ves_icall_RuntimeType_MakeGenericType)
+ICALL(RT_18, "MakePointerType", ves_icall_RuntimeType_MakePointerType)
 ICALL(RT_19, "getFullName", ves_icall_System_MonoType_getFullName)
-ICALL(RT_21, "get_DeclaringMethod", ves_icall_MonoType_get_DeclaringMethod)
-ICALL(RT_22, "get_DeclaringType", ves_icall_MonoType_get_DeclaringType)
-ICALL(RT_23, "get_Name", ves_icall_MonoType_get_Name)
-ICALL(RT_24, "get_Namespace", ves_icall_MonoType_get_Namespace)
-ICALL(RT_25, "get_core_clr_security_level", vell_icall_MonoType_get_core_clr_security_level)
-ICALL(RT_26, "make_array_type", ves_icall_Type_make_array_type)
-ICALL(RT_27, "make_byref_type", ves_icall_Type_make_byref_type)
+ICALL(RT_21, "get_DeclaringMethod", ves_icall_RuntimeType_get_DeclaringMethod)
+ICALL(RT_22, "get_DeclaringType", ves_icall_RuntimeType_get_DeclaringType)
+ICALL(RT_23, "get_Name", ves_icall_RuntimeType_get_Name)
+ICALL(RT_24, "get_Namespace", ves_icall_RuntimeType_get_Namespace)
+ICALL(RT_25, "get_core_clr_security_level", vell_icall_RuntimeType_get_core_clr_security_level)
+ICALL(RT_26, "make_array_type", ves_icall_RuntimeType_make_array_type)
+ICALL(RT_27, "make_byref_type", ves_icall_RuntimeType_make_byref_type)
 
 ICALL_TYPE(RTH, "System.RuntimeTypeHandle", RTH_1)
 ICALL(RTH_1, "GetArrayRank", ves_icall_RuntimeTypeHandle_GetArrayRank)
@@ -873,9 +870,7 @@ ICALL(MONIT_2, "Monitor_pulse", ves_icall_System_Threading_Monitor_Monitor_pulse
 ICALL(MONIT_3, "Monitor_pulse_all", ves_icall_System_Threading_Monitor_Monitor_pulse_all)
 ICALL(MONIT_4, "Monitor_test_owner", ves_icall_System_Threading_Monitor_Monitor_test_owner)
 ICALL(MONIT_5, "Monitor_test_synchronised", ves_icall_System_Threading_Monitor_Monitor_test_synchronised)
-ICALL(MONIT_6, "Monitor_try_enter", ves_icall_System_Threading_Monitor_Monitor_try_enter)
 ICALL(MONIT_7, "Monitor_wait", ves_icall_System_Threading_Monitor_Monitor_wait)
-ICALL(MONIT_10, "enter_with_atomic_var", mono_monitor_enter_v4)
 ICALL(MONIT_9, "try_enter_with_atomic_var", ves_icall_System_Threading_Monitor_Monitor_try_enter_with_atomic_var)
 
 ICALL_TYPE(MUTEX, "System.Threading.Mutex", MUTEX_1)
@@ -891,9 +886,9 @@ ICALL(NATIVEC_4, "ResetEvent_internal",  ves_icall_System_Threading_Events_Reset
 ICALL(NATIVEC_5, "SetEvent_internal",    ves_icall_System_Threading_Events_SetEvent_internal)
 
 ICALL_TYPE(SEMA, "System.Threading.Semaphore", SEMA_1)
-ICALL(SEMA_1, "CreateSemaphore_internal(int,int,string,bool&)", ves_icall_System_Threading_Semaphore_CreateSemaphore_internal)
-ICALL(SEMA_2, "OpenSemaphore_internal(string,System.Security.AccessControl.SemaphoreRights,System.IO.MonoIOError&)", ves_icall_System_Threading_Semaphore_OpenSemaphore_internal)
-ICALL(SEMA_3, "ReleaseSemaphore_internal(intptr,int,bool&)", ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal)
+ICALL(SEMA_1, "CreateSemaphore_internal(int,int,string,int&)", ves_icall_System_Threading_Semaphore_CreateSemaphore_internal)
+ICALL(SEMA_2, "OpenSemaphore_internal(string,System.Security.AccessControl.SemaphoreRights,int&)", ves_icall_System_Threading_Semaphore_OpenSemaphore_internal)
+ICALL(SEMA_3, "ReleaseSemaphore_internal(intptr,int,int&)", ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal)
 
 ICALL_TYPE(THREAD, "System.Threading.Thread", THREAD_1)
 ICALL(THREAD_1, "Abort_internal(System.Threading.InternalThread,object)", ves_icall_System_Threading_Thread_Abort)
index 285905fb9b8b8369f009526ea213975274c8ff3c..c294eb0a49d59df6c855071f52980de8a79537e6 100644 (file)
@@ -133,7 +133,7 @@ mono_class_init_checked (MonoClass *klass, MonoError *error)
        mono_error_init (error);
 
        if (!mono_class_init (klass))
-               mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+               mono_error_set_for_class_failure (error, klass);
 }
 
 ICALL_EXPORT MonoObject *
@@ -1210,13 +1210,6 @@ ves_icall_System_Object_GetType (MonoObject *obj)
        return ret;
 }
 
-ICALL_EXPORT void
-ves_icall_MonoType_type_from_obj (MonoReflectionType *mtype, MonoObject *obj)
-{
-       mtype->type = &obj->vtable->klass->byval_arg;
-       g_assert (mtype->type->type);
-}
-
 ICALL_EXPORT gint32
 ves_icall_ModuleBuilder_getToken (MonoReflectionModuleBuilder *mb, MonoObject *obj, gboolean create_open_instance)
 {
@@ -1477,31 +1470,41 @@ ves_icall_System_Type_internal_from_name (MonoString *name,
                                                                                  MonoBoolean ignoreCase)
 {
        MonoError error;
-       char *str = mono_string_to_utf8 (name);
        MonoTypeNameParse info;
-       MonoReflectionType *type;
+       MonoReflectionType *type = NULL;
        gboolean parsedOk;
 
+       char *str = mono_string_to_utf8_checked (name, &error);
+       if (!is_ok (&error))
+               goto leave;
+
        parsedOk = mono_reflection_parse_type (str, &info);
 
        /* mono_reflection_parse_type() mangles the string */
        if (!parsedOk) {
                mono_reflection_free_type_info (&info);
-               if (throwOnError) {
-                       mono_error_init (&error);
+               if (throwOnError)
                        mono_error_set_argument (&error, "typeName", "failed parse: %s", str);
-                       mono_error_set_pending_exception (&error);
-               }
-               g_free (str);
-               return NULL;
+               goto leave;
        }
 
        type = type_from_parsed_name (&info, ignoreCase, &error);
 
        mono_reflection_free_type_info (&info);
-       g_free (str);
 
-       if (!mono_error_ok (&error)) {
+       if (!is_ok (&error))
+               goto leave;
+
+       if (type == NULL){
+               if (throwOnError) {
+                       mono_error_set_type_load_name (&error, g_strdup (str), NULL, "");
+                       goto leave;
+               }
+       }
+       
+leave:
+       g_free (str);
+       if (!is_ok (&error)) {
                if (throwOnError)
                        mono_error_set_pending_exception (&error);
                else
@@ -1509,18 +1512,6 @@ ves_icall_System_Type_internal_from_name (MonoString *name,
                return NULL;
        }
 
-       if (type == NULL){
-               MonoException *e = NULL;
-               
-               if (throwOnError)
-                       e = mono_get_exception_type_load (name, NULL);
-
-               if (e) {
-                       mono_set_pending_exception (e);
-                       return NULL;
-               }
-       }
-       
        return type;
 }
 
@@ -1538,6 +1529,12 @@ ves_icall_System_Type_internal_from_handle (MonoType *handle)
        return ret;
 }
 
+ICALL_EXPORT MonoType*
+ves_icall_Mono_RuntimeClassHandle_GetTypeFromClass (MonoClass *klass)
+{
+       return mono_class_get_type (klass);
+}
+
 /* System.TypeCode */
 typedef enum {
        TYPECODE_EMPTY,
@@ -2152,12 +2149,16 @@ ves_icall_MonoField_GetRawConstantValue (MonoReflectionField *rfield)
                        return NULL;
                }
                v = ((gchar *) o) + sizeof (MonoObject);
-               mono_get_constant_value_from_blob (domain, def_type, def_value, v);
+               mono_get_constant_value_from_blob (domain, def_type, def_value, v, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
                break;
        }
        case MONO_TYPE_STRING:
        case MONO_TYPE_CLASS:
-               mono_get_constant_value_from_blob (domain, def_type, def_value, &o);
+               mono_get_constant_value_from_blob (domain, def_type, def_value, &o, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
                break;
        default:
                g_assert_not_reached ();
@@ -2397,7 +2398,7 @@ get_interfaces_hash (gconstpointer v1)
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetInterfaces (MonoReflectionType* type)
+ves_icall_RuntimeType_GetInterfaces (MonoReflectionType* type)
 {
        MonoError error;
        MonoClass *klass = mono_class_from_mono_type (type->type);
@@ -2428,14 +2429,14 @@ ves_icall_Type_GetInterfaces (MonoReflectionType* type)
        if (len == 0) {
                g_hash_table_destroy (iface_hash);
                if (!data.domain->empty_types) {
-                       data.domain->empty_types = mono_array_new_cached (data.domain, mono_defaults.monotype_class, 0, &error);
+                       data.domain->empty_types = mono_array_new_cached (data.domain, mono_defaults.runtimetype_class, 0, &error);
                        if (!is_ok (&error))
                                goto fail;
                }
                return data.domain->empty_types;
        }
 
-       data.iface_array = mono_array_new_cached (data.domain, mono_defaults.monotype_class, len, &error);
+       data.iface_array = mono_array_new_cached (data.domain, mono_defaults.runtimetype_class, len, &error);
        if (!is_ok (&error))
                goto fail;
        g_hash_table_foreach (iface_hash, fill_iface_array, &data);
@@ -2452,7 +2453,7 @@ fail:
 }
 
 ICALL_EXPORT void
-ves_icall_Type_GetInterfaceMapData (MonoReflectionType *type, MonoReflectionType *iface, MonoArray **targets, MonoArray **methods)
+ves_icall_RuntimeType_GetInterfaceMapData (MonoReflectionType *type, MonoReflectionType *iface, MonoArray **targets, MonoArray **methods)
 {
        gboolean variance_used;
        MonoClass *klass = mono_class_from_mono_type (type->type);
@@ -2503,7 +2504,7 @@ ves_icall_Type_GetInterfaceMapData (MonoReflectionType *type, MonoReflectionType
 }
 
 ICALL_EXPORT void
-ves_icall_Type_GetPacking (MonoReflectionType *type, guint32 *packing, guint32 *size)
+ves_icall_RuntimeType_GetPacking (MonoReflectionType *type, guint32 *packing, guint32 *size)
 {
        MonoError error;
        MonoClass *klass = mono_class_from_mono_type (type->type);
@@ -2637,7 +2638,7 @@ ves_icall_RuntimeTypeHandle_GetAssembly (MonoReflectionType *type)
 }
 
 ICALL_EXPORT MonoReflectionType*
-ves_icall_MonoType_get_DeclaringType (MonoReflectionType *type)
+ves_icall_RuntimeType_get_DeclaringType (MonoReflectionType *type)
 {
        MonoError error;
        MonoReflectionType *ret;
@@ -2666,7 +2667,7 @@ ves_icall_MonoType_get_DeclaringType (MonoReflectionType *type)
 }
 
 ICALL_EXPORT MonoString*
-ves_icall_MonoType_get_Name (MonoReflectionType *type)
+ves_icall_RuntimeType_get_Name (MonoReflectionType *type)
 {
        MonoDomain *domain = mono_domain_get (); 
        MonoClass *klass = mono_class_from_mono_type (type->type);
@@ -2684,7 +2685,7 @@ ves_icall_MonoType_get_Name (MonoReflectionType *type)
 }
 
 ICALL_EXPORT MonoString*
-ves_icall_MonoType_get_Namespace (MonoReflectionType *type)
+ves_icall_RuntimeType_get_Namespace (MonoReflectionType *type)
 {
        MonoDomain *domain = mono_domain_get (); 
        MonoClass *klass = mono_class_from_mono_type (type->type);
@@ -2720,7 +2721,7 @@ create_type_array (MonoDomain *domain, MonoBoolean runtimeTypeArray, int count,
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_MonoType_GetGenericArguments (MonoReflectionType *type, MonoBoolean runtimeTypeArray)
+ves_icall_RuntimeType_GetGenericArguments (MonoReflectionType *type, MonoBoolean runtimeTypeArray)
 {
        MonoError error;
        MonoReflectionType *rt;
@@ -2812,7 +2813,7 @@ ves_icall_RuntimeTypeHandle_GetGenericTypeDefinition_impl (MonoReflectionType *t
 }
 
 ICALL_EXPORT MonoReflectionType*
-ves_icall_Type_MakeGenericType (MonoReflectionType *type, MonoArray *type_array)
+ves_icall_RuntimeType_MakeGenericType (MonoReflectionType *type, MonoArray *type_array)
 {
        MonoError error;
        MonoReflectionType *ret;
@@ -2870,7 +2871,7 @@ ves_icall_RuntimeTypeHandle_HasInstantiation (MonoReflectionType *type)
 }
 
 ICALL_EXPORT gint32
-ves_icall_Type_GetGenericParameterPosition (MonoReflectionType *type)
+ves_icall_RuntimeType_GetGenericParameterPosition (MonoReflectionType *type)
 {
        if (!IS_MONOTYPE (type))
                return -1;
@@ -2881,7 +2882,7 @@ ves_icall_Type_GetGenericParameterPosition (MonoReflectionType *type)
 }
 
 ICALL_EXPORT GenericParameterAttributes
-ves_icall_Type_GetGenericParameterAttributes (MonoReflectionType *type)
+ves_icall_RuntimeType_GetGenericParameterAttributes (MonoReflectionType *type)
 {
        g_assert (IS_MONOTYPE (type));
        g_assert (is_generic_parameter (type->type));
@@ -2889,7 +2890,7 @@ ves_icall_Type_GetGenericParameterAttributes (MonoReflectionType *type)
 }
 
 ICALL_EXPORT MonoArray *
-ves_icall_Type_GetGenericParameterConstraints (MonoReflectionType *type)
+ves_icall_RuntimeType_GetGenericParameterConstraints (MonoReflectionType *type)
 {
        MonoError error;
        MonoReflectionType *rt;
@@ -2906,7 +2907,7 @@ ves_icall_Type_GetGenericParameterConstraints (MonoReflectionType *type)
        for (count = 0, ptr = param_info->constraints; ptr && *ptr; ptr++, count++)
                ;
 
-       res = mono_array_new_checked (domain, mono_defaults.monotype_class, count, &error);
+       res = mono_array_new_checked (domain, mono_defaults.runtimetype_class, count, &error);
        if (mono_error_set_pending_exception (&error))
                return NULL;
        for (i = 0; i < count; i++) {
@@ -2941,7 +2942,7 @@ ves_icall_EnumBuilder_setup_enum_type (MonoReflectionType *enumtype,
 }
 
 ICALL_EXPORT MonoReflectionMethod*
-ves_icall_MonoType_GetCorrespondingInflatedMethod (MonoReflectionType *type, 
+ves_icall_RuntimeType_GetCorrespondingInflatedMethod (MonoReflectionType *type, 
                                                    MonoReflectionMethod* generic)
 {
        MonoDomain *domain; 
@@ -2971,7 +2972,7 @@ ves_icall_MonoType_GetCorrespondingInflatedMethod (MonoReflectionType *type,
 }
 
 ICALL_EXPORT MonoReflectionMethod *
-ves_icall_MonoType_get_DeclaringMethod (MonoReflectionType *ref_type)
+ves_icall_RuntimeType_get_DeclaringMethod (MonoReflectionType *ref_type)
 {
        MonoMethod *method;
        MonoType *type = ref_type->type;
@@ -3309,7 +3310,9 @@ ves_icall_InternalInvoke (MonoReflectionMethod *method, MonoObject *this_arg, Mo
                        return (MonoObject*)arr;
                }
        }
-       return mono_runtime_invoke_array (m, obj, params, NULL);
+       MonoObject *result = mono_runtime_invoke_array_checked (m, obj, params, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 #ifndef DISABLE_REMOTING
@@ -3339,7 +3342,9 @@ ves_icall_InternalExecute (MonoReflectionMethod *method, MonoObject *this_arg, M
                        }
                        
                        name = mono_array_get (params, MonoString *, 1);
-                       str = mono_string_to_utf8 (name);
+                       str = mono_string_to_utf8_checked (name, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return NULL;
                
                        do {
                                MonoClassField* field = mono_class_get_field_from_name (k, str);
@@ -3382,7 +3387,9 @@ ves_icall_InternalExecute (MonoReflectionMethod *method, MonoObject *this_arg, M
                        }
                        
                        name = mono_array_get (params, MonoString *, 1);
-                       str = mono_string_to_utf8 (name);
+                       str = mono_string_to_utf8_checked (name, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return NULL;
                
                        do {
                                MonoClassField* field = mono_class_get_field_from_name (k, str);
@@ -3431,7 +3438,9 @@ ves_icall_InternalExecute (MonoReflectionMethod *method, MonoObject *this_arg, M
 
        /* This can be called only on MBR objects, so no need to unbox for valuetypes. */
        g_assert (!method->method->klass->valuetype);
-       result = mono_runtime_invoke_array (method->method, this_arg, params, NULL);
+       result = mono_runtime_invoke_array_checked (method->method, this_arg, params, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        for (i = 0, j = 0; i < mono_array_length (params); i++) {
                if (sig->params [i]->byref) {
@@ -3768,7 +3777,7 @@ enum {
 };
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetFields_internal (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoReflectionType *reftype)
+ves_icall_RuntimeType_GetFields_internal (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoReflectionType *reftype)
 {
        MonoError error;
        MonoDomain *domain; 
@@ -3832,7 +3841,9 @@ handle_parent:
 
                if (name != NULL) {
                        if (utf8_name == NULL) {
-                               utf8_name = mono_string_to_utf8 (name);
+                               utf8_name = mono_string_to_utf8_checked (name, &error);
+                               if (!is_ok (&error))
+                                       goto fail;
                                compare_func = (bflags & BFLAGS_IgnoreCase) ? mono_utf8_strcasecmp : strcmp;
                        }
 
@@ -3995,7 +4006,7 @@ loader_error:
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetMethodsByName (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoBoolean ignore_case, MonoReflectionType *reftype)
+ves_icall_RuntimeType_GetMethodsByName (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoBoolean ignore_case, MonoReflectionType *reftype)
 {
        static MonoClass *MethodInfo_array;
        MonoError error;
@@ -4031,8 +4042,11 @@ ves_icall_Type_GetMethodsByName (MonoReflectionType *type, MonoString *name, gui
                return res;
        }
 
-       if (name)
-               mname = mono_string_to_utf8 (name);
+       if (name) {
+               mname = mono_string_to_utf8_checked (name, &error);
+               if (mono_error_set_pending_exception (&error))
+                   return NULL;
+       }
 
        method_array = mono_class_get_methods_by_name (klass, mname, bflags, ignore_case, FALSE, &ex);
        g_free ((char*)mname);
@@ -4063,7 +4077,7 @@ failure:
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetConstructors_internal (MonoReflectionType *type, guint32 bflags, MonoReflectionType *reftype)
+ves_icall_RuntimeType_GetConstructors_internal (MonoReflectionType *type, guint32 bflags, MonoReflectionType *reftype)
 {
        MonoDomain *domain; 
        MonoClass *startklass, *klass, *refklass;
@@ -4149,12 +4163,17 @@ property_hash (gconstpointer data)
 }
 
 static gboolean
-method_declaring_signatures_equal (MonoMethod *method1, MonoMethod *method2)
+property_accessor_override (MonoMethod *method1, MonoMethod *method2)
 {
-       if (method1->is_inflated)
-               method1 = ((MonoMethodInflated*) method1)->declaring;
-       if (method2->is_inflated)
-               method2 = ((MonoMethodInflated*) method2)->declaring;
+       if (method1->slot != -1 && method1->slot == method2->slot)
+               return TRUE;
+
+       if (mono_class_get_generic_type_definition (method1->klass) == mono_class_get_generic_type_definition (method2->klass)) {
+               if (method1->is_inflated)
+                       method1 = ((MonoMethodInflated*) method1)->declaring;
+               if (method2->is_inflated)
+                       method2 = ((MonoMethodInflated*) method2)->declaring;
+       }
 
        return mono_metadata_signature_equal (mono_method_signature (method1), mono_method_signature (method2));
 }
@@ -4180,10 +4199,10 @@ property_equal (MonoProperty *prop1, MonoProperty *prop2)
           the indexer came from method 1 or from method 2, and we
           shouldn't conflate them.   (Bugzilla 36283)
        */
-       if (prop1->get && prop2->get && !method_declaring_signatures_equal (prop1->get, prop2->get))
+       if (prop1->get && prop2->get && !property_accessor_override (prop1->get, prop2->get))
                return FALSE;
 
-       if (prop1->set && prop2->set && !method_declaring_signatures_equal (prop1->set, prop2->set))
+       if (prop1->set && prop2->set && !property_accessor_override (prop1->set, prop2->set))
                return FALSE;
 
        return TRUE;
@@ -4199,7 +4218,7 @@ property_accessor_nonpublic (MonoMethod* accessor, gboolean start_klass)
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetPropertiesByName (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoBoolean ignore_case, MonoReflectionType *reftype)
+ves_icall_RuntimeType_GetPropertiesByName (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoBoolean ignore_case, MonoReflectionType *reftype)
 {
        MonoError error;
        MonoDomain *domain; 
@@ -4229,7 +4248,9 @@ ves_icall_Type_GetPropertiesByName (MonoReflectionType *type, MonoString *name,
        klass = startklass = mono_class_from_mono_type (type->type);
 
        if (name != NULL) {
-               propname = mono_string_to_utf8 (name);
+               propname = mono_string_to_utf8_checked (name, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
                compare_func = (ignore_case) ? mono_utf8_strcasecmp : strcmp;
        }
 
@@ -4310,9 +4331,8 @@ handle_parent:
 
 
 loader_error:
-       if (mono_class_has_failure (klass)) {
-               mono_error_set_exception_instance (&error, mono_class_get_exception_for_failure (klass));
-       }
+       if (mono_class_has_failure (klass))
+               mono_error_set_for_class_failure (&error, klass);
 
 failure:
        if (properties)
@@ -4342,7 +4362,7 @@ event_equal (MonoEvent *event1, MonoEvent *event2)
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetEvents_internal (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoReflectionType *reftype)
+ves_icall_RuntimeType_GetEvents_internal (MonoReflectionType *type, MonoString *name, guint32 bflags, MonoReflectionType *reftype)
 {
        MonoError error;
        MonoDomain *domain; 
@@ -4418,7 +4438,9 @@ handle_parent:
 
                if (name != NULL) {
                        if (utf8_name == NULL) {
-                               utf8_name = mono_string_to_utf8 (name);
+                               utf8_name = mono_string_to_utf8_checked (name, &error);
+                               if (!is_ok (&error))
+                                       goto failure;
                                compare_func = (bflags & BFLAGS_IgnoreCase) ? mono_utf8_strcasecmp : strcmp;
                        }
 
@@ -4457,9 +4479,8 @@ handle_parent:
        return res;
 
 loader_error:
-       if (mono_class_has_failure (klass)) {
-               mono_error_set_exception_instance (&error, mono_class_get_exception_for_failure (klass));
-       }
+       if (mono_class_has_failure (klass))
+               mono_error_set_for_class_failure (&error, klass);
 
 failure:
        
@@ -4475,7 +4496,7 @@ failure:
 }
 
 ICALL_EXPORT MonoArray*
-ves_icall_Type_GetNestedTypes (MonoReflectionType *type, MonoString *name, guint32 bflags)
+ves_icall_RuntimeType_GetNestedTypes (MonoReflectionType *type, MonoString *name, guint32 bflags)
 {
        MonoError error;
        MonoReflectionType *rt;
@@ -4492,7 +4513,7 @@ ves_icall_Type_GetNestedTypes (MonoReflectionType *type, MonoString *name, guint
 
        domain = ((MonoObject *)type)->vtable->domain;
        if (type->type->byref) {
-               MonoArray *result = mono_array_new_cached (domain, mono_defaults.monotype_class, 0, &error);
+               MonoArray *result = mono_array_new_cached (domain, mono_defaults.runtimetype_class, 0, &error);
                mono_error_set_pending_exception (&error);
                return result;
        }
@@ -4526,7 +4547,9 @@ ves_icall_Type_GetNestedTypes (MonoReflectionType *type, MonoString *name, guint
 
                if (name != NULL) {
                        if (str == NULL) {
-                               str = mono_string_to_utf8 (name);
+                               str = mono_string_to_utf8_checked (name, &error);
+                               if (!is_ok (&error))
+                                       goto leave;
                                mono_identifier_unescape_type_name_chars (str);
                        }
 
@@ -4541,7 +4564,7 @@ ves_icall_Type_GetNestedTypes (MonoReflectionType *type, MonoString *name, guint
                mono_ptr_array_append (tmp_array, (MonoObject*) rt);
        }
 
-       res = mono_array_new_cached (domain, mono_defaults.monotype_class, mono_ptr_array_size (tmp_array), &error);
+       res = mono_array_new_cached (domain, mono_defaults.runtimetype_class, mono_ptr_array_size (tmp_array), &error);
        if (!is_ok (&error))
                goto leave;
 
@@ -4569,7 +4592,9 @@ ves_icall_System_Reflection_Assembly_InternalGetType (MonoReflectionAssembly *as
 
        /* On MS.NET, this does not fire a TypeResolve event */
        type_resolve = TRUE;
-       str = mono_string_to_utf8 (name);
+       str = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        /*g_print ("requested type %s in %s\n", str, assembly->assembly->aname.name);*/
        if (!mono_reflection_parse_type (str, &info)) {
                g_free (str);
@@ -4782,7 +4807,9 @@ ves_icall_System_Reflection_Assembly_load_with_partial_name (MonoString *mname,
        MonoImageOpenStatus status;
        MonoReflectionAssembly* result = NULL;
        
-       name = mono_string_to_utf8 (mname);
+       name = mono_string_to_utf8_checked (mname, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        res = mono_assembly_load_with_partial_name (name, &status);
 
        g_free (name);
@@ -5029,7 +5056,6 @@ ICALL_EXPORT void *
 ves_icall_System_Reflection_Assembly_GetManifestResourceInternal (MonoReflectionAssembly *assembly, MonoString *name, gint32 *size, MonoReflectionModule **ref_module) 
 {
        MonoError error;
-       char *n = mono_string_to_utf8 (name);
        MonoTableInfo *table = &assembly->assembly->image->tables [MONO_TABLE_MANIFESTRESOURCE];
        guint32 i;
        guint32 cols [MONO_MANIFEST_SIZE];
@@ -5037,6 +5063,10 @@ ves_icall_System_Reflection_Assembly_GetManifestResourceInternal (MonoReflection
        const char *val;
        MonoImage *module;
 
+       char *n = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
+
        for (i = 0; i < table->rows; ++i) {
                mono_metadata_decode_row (table, i, cols, MONO_MANIFEST_SIZE);
                val = mono_metadata_string_heap (assembly->assembly->image, cols [MONO_MANIFEST_NAME]);
@@ -5083,7 +5113,9 @@ ves_icall_System_Reflection_Assembly_GetManifestResourceInfoInternal (MonoReflec
        const char *val;
        char *n;
 
-       n = mono_string_to_utf8 (name);
+       n = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
        for (i = 0; i < table->rows; ++i) {
                mono_metadata_decode_row (table, i, cols, MONO_MANIFEST_SIZE);
                val = mono_metadata_string_heap (assembly->assembly->image, cols [MONO_MANIFEST_NAME]);
@@ -5155,7 +5187,10 @@ ves_icall_System_Reflection_Assembly_GetFilesInternal (MonoReflectionAssembly *a
 
        /* check hash if needed */
        if (name) {
-               n = mono_string_to_utf8 (name);
+               n = mono_string_to_utf8_checked (name, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
+
                for (i = 0; i < table->rows; ++i) {
                        val = mono_metadata_string_heap (assembly->assembly->image, mono_metadata_decode_row_col (table, i, MONO_FILE_NAME));
                        if (strcmp (val, n) == 0) {
@@ -5446,7 +5481,7 @@ ves_icall_System_MonoType_getFullName (MonoReflectionType *object, gboolean full
 }
 
 ICALL_EXPORT int
-vell_icall_MonoType_get_core_clr_security_level (MonoReflectionType *rfield)
+vell_icall_RuntimeType_get_core_clr_security_level (MonoReflectionType *rfield)
 {
        MonoError error;
        MonoClass *klass = mono_class_from_mono_type (rfield->type);
@@ -5608,15 +5643,20 @@ ICALL_EXPORT void
 ves_icall_System_Reflection_Assembly_FillName (MonoReflectionAssembly *assembly, MonoReflectionAssemblyName *aname)
 {
        MonoError error;
-       gchar *absolute;
+       gchar *absolute, *dirname;
        MonoAssembly *mass = assembly->assembly;
 
+       /* XXX this is duplicated code to compute the codebase URI, unify it */
        if (g_path_is_absolute (mass->image->name)) {
-               fill_reflection_assembly_name (mono_object_domain (assembly), aname, &mass->aname, mass->image->name, TRUE, TRUE, TRUE, &error);
-               mono_error_set_pending_exception (&error);
-               return;
+               absolute = g_strdup (mass->image->name);
+               dirname = g_path_get_dirname (absolute);
+       } else {
+               absolute = g_build_filename (mass->basedir, mass->image->name, NULL);
+               dirname = g_strdup (mass->basedir);
        }
-       absolute = g_build_filename (mass->basedir, mass->image->name, NULL);
+
+       replace_shadow_path (mono_object_domain (assembly), dirname, &absolute);
+       g_free (dirname);
 
        fill_reflection_assembly_name (mono_object_domain (assembly), aname, &mass->aname, absolute, TRUE, TRUE, TRUE, &error);
        mono_error_set_pending_exception (&error);
@@ -5635,7 +5675,9 @@ ves_icall_System_Reflection_Assembly_InternalGetAssemblyName (MonoString *fname,
        MonoAssemblyName name;
        char *dirname;
 
-       filename = mono_string_to_utf8 (fname);
+       filename = mono_string_to_utf8_checked (fname, &error);
+       if (mono_error_set_pending_exception (&error))
+               return;
 
        dirname = g_path_get_dirname (filename);
        replace_shadow_path (mono_domain_get (), dirname, &filename);
@@ -5735,7 +5777,7 @@ mono_module_get_types (MonoDomain *domain, MonoImage *image, MonoArray **excepti
        } else {
                count = tdef->rows - 1;
        }
-       res = mono_array_new_checked (domain, mono_defaults.monotype_class, count, error);
+       res = mono_array_new_checked (domain, mono_defaults.runtimetype_class, count, error);
        return_val_if_nok (error, NULL);
        *exceptions = mono_array_new_checked (domain, mono_defaults.exception_class, count, error);
        return_val_if_nok (error, NULL);
@@ -5802,14 +5844,14 @@ ves_icall_System_Reflection_Assembly_GetTypes (MonoReflectionAssembly *assembly,
                                        len1 = mono_array_length (res);
                                        len2 = mono_array_length (res2);
 
-                                       res3 = mono_array_new_checked (domain, mono_defaults.monotype_class, len1 + len2, &error);
+                                       res3 = mono_array_new_checked (domain, mono_defaults.runtimetype_class, len1 + len2, &error);
                                        if (mono_error_set_pending_exception (&error))
                                                return NULL;
                                        mono_array_memcpy_refs (res3, 0, res, 0, len1);
                                        mono_array_memcpy_refs (res3, len1, res2, 0, len2);
                                        res = res3;
 
-                                       ex3 = mono_array_new_checked (domain, mono_defaults.monotype_class, len1 + len2, &error);
+                                       ex3 = mono_array_new_checked (domain, mono_defaults.runtimetype_class, len1 + len2, &error);
                                        if (mono_error_set_pending_exception (&error))
                                                return NULL;
                                        mono_array_memcpy_refs (ex3, 0, exceptions, 0, len1);
@@ -5896,7 +5938,10 @@ ves_icall_System_Reflection_AssemblyName_ParseName (MonoReflectionAssemblyName *
        gboolean is_token_defined;
 
        aname.public_key = NULL;
-       val = mono_string_to_utf8 (assname);
+       val = mono_string_to_utf8_checked (assname, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
+
        if (!mono_assembly_name_parse_full (val, &aname, TRUE, &is_version_defined, &is_token_defined)) {
                g_free ((guint8*) aname.public_key);
                g_free (val);
@@ -5997,7 +6042,7 @@ ves_icall_System_Reflection_Module_InternalGetTypes (MonoReflectionModule *modul
        int i;
 
        if (!module->image) {
-               MonoArray *arr = mono_array_new_checked (mono_object_domain (module), mono_defaults.monotype_class, 0, &error);
+               MonoArray *arr = mono_array_new_checked (mono_object_domain (module), mono_defaults.runtimetype_class, 0, &error);
                mono_error_set_pending_exception (&error);
                return arr;
        } else {
@@ -6186,7 +6231,9 @@ ves_icall_System_Reflection_Module_ResolveStringToken (MonoImage *image, guint32
 
        /* FIXME: What to do if the index points into the middle of a string ? */
 
-       return mono_ldstr (mono_domain_get (), image, index);
+       MonoString *result = mono_ldstr_checked (mono_domain_get (), image, index, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 ICALL_EXPORT MonoClassField*
@@ -6358,8 +6405,10 @@ ves_icall_ModuleBuilder_create_modified_type (MonoReflectionTypeBuilder *tb, Mon
        MonoReflectionType *ret;
        MonoClass *klass;
        int isbyref = 0, rank;
-       char *str = mono_string_to_utf8 (smodifiers);
        char *p;
+       char *str = mono_string_to_utf8_checked (smodifiers, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        klass = mono_class_from_mono_type (tb->type.type);
        p = str;
@@ -6450,7 +6499,7 @@ check_for_invalid_type (MonoClass *klass, MonoError *error)
 
 }
 ICALL_EXPORT MonoReflectionType *
-ves_icall_Type_make_array_type (MonoReflectionType *type, int rank)
+ves_icall_RuntimeType_make_array_type (MonoReflectionType *type, int rank)
 {
        MonoError error;
        MonoReflectionType *ret;
@@ -6472,7 +6521,7 @@ ves_icall_Type_make_array_type (MonoReflectionType *type, int rank)
 }
 
 ICALL_EXPORT MonoReflectionType *
-ves_icall_Type_make_byref_type (MonoReflectionType *type)
+ves_icall_RuntimeType_make_byref_type (MonoReflectionType *type)
 {
        MonoError error;
        MonoReflectionType *ret;
@@ -6494,7 +6543,7 @@ ves_icall_Type_make_byref_type (MonoReflectionType *type)
 }
 
 ICALL_EXPORT MonoReflectionType *
-ves_icall_Type_MakePointerType (MonoReflectionType *type)
+ves_icall_RuntimeType_MakePointerType (MonoReflectionType *type)
 {
        MonoError error;
        MonoReflectionType *ret;
@@ -6555,7 +6604,9 @@ ves_icall_System_Delegate_CreateDelegate_internal (MonoReflectionType *type, Mon
 
        if (method_is_dynamic (method)) {
                /* Creating a trampoline would leak memory */
-               func = mono_compile_method (method);
+               func = mono_compile_method_checked (method, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
        } else {
                if (target && method->flags & METHOD_ATTRIBUTE_VIRTUAL && method->klass != mono_object_class (target))
                        method = mono_object_get_virtual_method (target, method);
@@ -6565,8 +6616,9 @@ ves_icall_System_Delegate_CreateDelegate_internal (MonoReflectionType *type, Mon
                func = mono_create_ftnptr (mono_domain_get (), trampoline);
        }
 
-       mono_delegate_ctor_with_method (delegate, target, func, method);
-
+       mono_delegate_ctor_with_method (delegate, target, func, method, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        return delegate;
 }
 
@@ -6720,17 +6772,15 @@ ves_icall_Remoting_RealProxy_GetTransparentProxy (MonoObject *this_obj, MonoStri
        }
 
        tp->custom_type_info = (mono_object_isinst_checked (this_obj, mono_defaults.iremotingtypeinfo_class, &error) != NULL);
-       if (!is_ok (&error)) {
-               mono_error_set_pending_exception (&error);
+       if (mono_error_set_pending_exception (&error))
                return NULL;
-       }
        tp->remote_class = mono_remote_class (domain, class_name, klass, &error);
-       if (!is_ok (&error)) {
-               mono_error_set_pending_exception (&error);
+       if (mono_error_set_pending_exception (&error))
                return NULL;
-       }
 
-       res->vtable = (MonoVTable *)mono_remote_class_vtable (domain, tp->remote_class, rp);
+       res->vtable = (MonoVTable *)mono_remote_class_vtable (domain, tp->remote_class, rp, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        return res;
 }
 
@@ -6856,13 +6906,16 @@ ves_icall_System_Environment_GetIs64BitOperatingSystem (void)
 ICALL_EXPORT MonoString *
 ves_icall_System_Environment_GetEnvironmentVariable (MonoString *name)
 {
+       MonoError error;
        const gchar *value;
        gchar *utf8_name;
 
        if (name == NULL)
                return NULL;
 
-       utf8_name = mono_string_to_utf8 (name); /* FIXME: this should be ascii */
+       utf8_name = mono_string_to_utf8_checked (name, &error); /* FIXME: this should be ascii */
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        value = g_getenv (utf8_name);
 
        g_free (utf8_name);
@@ -6998,14 +7051,6 @@ ves_icall_System_Environment_GetEnvironmentVariableNames (void)
 #endif
 }
 
-/*
- * If your platform lacks setenv/unsetenv, you must upgrade your glib.
- */
-#if !GLIB_CHECK_VERSION(2,4,0)
-#define g_setenv(a,b,c)   setenv(a,b,c)
-#define g_unsetenv(a) unsetenv(a)
-#endif
-
 ICALL_EXPORT void
 ves_icall_System_Environment_InternalSetEnvironmentVariable (MonoString *name, MonoString *value)
 {
@@ -7031,7 +7076,9 @@ ves_icall_System_Environment_InternalSetEnvironmentVariable (MonoString *name, M
        g_free (utf16_name);
        g_free (utf16_value);
 #else
-       utf8_name = mono_string_to_utf8 (name); /* FIXME: this should be ascii */
+       utf8_name = mono_string_to_utf8_checked (name, &error); /* FIXME: this should be ascii */
+       if (mono_error_set_pending_exception (&error))
+               return;
 
        if ((value == NULL) || (mono_string_length (value) == 0) || (mono_string_chars (value)[0] == 0)) {
                g_unsetenv (utf8_name);
@@ -7169,11 +7216,14 @@ leave:
 ICALL_EXPORT MonoString *
 ves_icall_System_IO_DriveInfo_GetDriveFormat (MonoString *path)
 {
+       MonoError error;
        gunichar2 volume_name [MAX_PATH + 1];
        
        if (GetVolumeInformation (mono_string_chars (path), NULL, 0, NULL, NULL, NULL, volume_name, MAX_PATH + 1) == FALSE)
                return NULL;
-       return mono_string_from_utf16 (volume_name);
+       MonoString *result = mono_string_from_utf16_checked (volume_name, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 ICALL_EXPORT MonoString *
@@ -7278,18 +7328,18 @@ ves_icall_System_Environment_BroadcastSettingChange (void)
 #endif
 }
 
-ICALL_EXPORT gint32
-ves_icall_System_Runtime_Versioning_VersioningHelper_GetRuntimeId (void)
+ICALL_EXPORT
+gint32
+ves_icall_System_Environment_get_TickCount (void)
 {
-       return 9;
+       /* this will overflow after ~24 days */
+       return (gint32) (mono_msec_boottime () & 0xffffffff);
 }
 
-ICALL_EXPORT void
-ves_icall_MonoMethodMessage_InitMessage (MonoMethodMessage *this_obj, 
-                                        MonoReflectionMethod *method,
-                                        MonoArray *out_args)
+ICALL_EXPORT gint32
+ves_icall_System_Runtime_Versioning_VersioningHelper_GetRuntimeId (void)
 {
-       mono_message_init (mono_object_domain (this_obj), this_obj, method, out_args);
+       return 9;
 }
 
 #ifndef DISABLE_REMOTING
@@ -7474,7 +7524,10 @@ ves_icall_System_IO_DriveInfo_GetDriveType (MonoString *root_path_name)
 ICALL_EXPORT gpointer
 ves_icall_RuntimeMethodHandle_GetFunctionPointer (MonoMethod *method)
 {
-       return mono_compile_method (method);
+       MonoError error;
+       gpointer result = mono_compile_method_checked (method, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 ICALL_EXPORT MonoString *
@@ -7500,9 +7553,11 @@ ves_icall_System_Configuration_DefaultConfig_get_machine_config_path (void)
        return mcpath;
 }
 
+/* this is an icall */
 static MonoString *
 get_bundled_app_config (void)
 {
+       MonoError error;
        const gchar *app_config;
        MonoDomain *domain;
        MonoString *file;
@@ -7516,7 +7571,9 @@ get_bundled_app_config (void)
                return NULL;
 
        // Retrieve config file and remove the extension
-       config_file_name = mono_string_to_utf8 (file);
+       config_file_name = mono_string_to_utf8_checked (file, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        config_file_path = mono_portability_find_file (config_file_name, TRUE);
        if (!config_file_path)
                config_file_path = config_file_name;
index 7b1b4278315a2eddd8463dd5b6e86039efa3ed65..161bd0031a37893599330767c38280d1b288328b 100644 (file)
@@ -1300,6 +1300,7 @@ mono_image_open_from_data_internal (char *data, guint32 data_len, gboolean need_
        image->image_info = iinfo;
        image->ref_only = refonly;
        image->metadata_only = metadata_only;
+       image->ref_count = 1;
 
        image = do_mono_image_load (image, status, TRUE, TRUE);
        if (image == NULL)
@@ -1801,6 +1802,7 @@ mono_image_close_except_pools (MonoImage *image)
        free_hash (image->stfld_wrapper_cache);
        free_hash (image->isinst_cache);
        free_hash (image->castclass_cache);
+       free_hash (image->icall_wrapper_cache);
        free_hash (image->proxy_isinst_cache);
        free_hash (image->var_cache_slow);
        free_hash (image->mvar_cache_slow);
index e01f8be31d67a836e5f8c9e0b7bcffb725de557f..bcb0dc3c0146748719a55c6a9002fc609a2c61b4 100644 (file)
@@ -177,7 +177,9 @@ ves_icall_System_Globalization_CalendarData_fill_calendar_data (MonoCalendarData
        const CultureInfoEntry *ci;
        char *n;
 
-       n = mono_string_to_utf8 (name);
+       n = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
        ne = (const CultureInfoNameEntry *)mono_binary_search (n, culture_name_entries, NUM_CULTURE_ENTRIES,
                        sizeof (CultureInfoNameEntry), culture_name_locator);
        g_free (n);
@@ -574,7 +576,9 @@ ves_icall_System_Globalization_CultureInfo_construct_internal_locale_from_name (
        const CultureInfoNameEntry *ne;
        char *n;
        
-       n = mono_string_to_utf8 (name);
+       n = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
        ne = (const CultureInfoNameEntry *)mono_binary_search (n, culture_name_entries, NUM_CULTURE_ENTRIES,
                        sizeof (CultureInfoNameEntry), culture_name_locator);
 
@@ -623,10 +627,13 @@ MonoBoolean
 ves_icall_System_Globalization_RegionInfo_construct_internal_region_from_name (MonoRegionInfo *this_obj,
                MonoString *name)
 {
+       MonoError error;
        const RegionInfoNameEntry *ne;
        char *n;
        
-       n = mono_string_to_utf8 (name);
+       n = mono_string_to_utf8_checked (name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
        ne = (const RegionInfoNameEntry *)mono_binary_search (n, region_name_entries, NUM_REGION_ENTRIES,
                sizeof (RegionInfoNameEntry), region_name_locator);
 
index 13ef2b4c486a68e9b8ca8be2303d851b22aebcf2..6dbf07f79414184cba5de202f48ecdc4484bd312 100644 (file)
@@ -45,6 +45,7 @@
 #include "mono/utils/mono-memory-model.h"
 #include "mono/utils/atomic.h"
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/mono-error-internals.h>
 
 #include <string.h>
@@ -79,9 +80,16 @@ static MonoNativeTlsKey load_type_info_tls_id;
 
 static gboolean use_aot_wrappers;
 
+static void ftnptr_eh_callback_default (guint32 gchandle);
+
+static MonoFtnPtrEHCallback ftnptr_eh_callback = ftnptr_eh_callback_default;
+
 static void
 delegate_hash_table_add (MonoDelegate *d);
 
+static void
+delegate_hash_table_remove (MonoDelegate *d);
+
 static void
 emit_struct_conv (MonoMethodBuilder *mb, MonoClass *klass, gboolean to_object);
 
@@ -192,6 +200,9 @@ mono_array_to_lparray (MonoArray *array);
 void
 mono_free_lparray (MonoArray *array, gpointer* nativeArray);
 
+static void
+mono_marshal_ftnptr_eh_callback (guint32 gchandle);
+
 /* Lazy class loading functions */
 static GENERATE_GET_CLASS_WITH_CACHE (string_builder, System.Text, StringBuilder)
 static GENERATE_GET_CLASS_WITH_CACHE (date_time, System, DateTime)
@@ -247,6 +258,24 @@ mono_object_isinst_icall (MonoObject *obj, MonoClass *klass)
        return result;
 }
 
+static MonoString*
+ves_icall_mono_string_from_utf16 (gunichar2 *data)
+{
+       MonoError error;
+       MonoString *result = mono_string_from_utf16_checked (data, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
+static char*
+ves_icall_mono_string_to_utf8 (MonoString *str)
+{
+       MonoError error;
+       char *result = mono_string_to_utf8_checked (str, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
 void
 mono_marshal_init (void)
 {
@@ -261,12 +290,12 @@ mono_marshal_init (void)
                register_icall (mono_marshal_string_to_utf16, "mono_marshal_string_to_utf16", "ptr obj", FALSE);
                register_icall (mono_marshal_string_to_utf16_copy, "mono_marshal_string_to_utf16_copy", "ptr obj", FALSE);
                register_icall (mono_string_to_utf16, "mono_string_to_utf16", "ptr obj", FALSE);
-               register_icall (mono_string_from_utf16, "mono_string_from_utf16", "obj ptr", FALSE);
+               register_icall (ves_icall_mono_string_from_utf16, "ves_icall_mono_string_from_utf16", "obj ptr", FALSE);
                register_icall (mono_string_from_byvalstr, "mono_string_from_byvalstr", "obj ptr int", FALSE);
                register_icall (mono_string_from_byvalwstr, "mono_string_from_byvalwstr", "obj ptr int", FALSE);
                register_icall (mono_string_new_wrapper, "mono_string_new_wrapper", "obj ptr", FALSE);
                register_icall (mono_string_new_len_wrapper, "mono_string_new_len_wrapper", "obj ptr int", FALSE);
-               register_icall (mono_string_to_utf8, "mono_string_to_utf8", "ptr obj", FALSE);
+               register_icall (ves_icall_mono_string_to_utf8, "ves_icall_mono_string_to_utf8", "ptr obj", FALSE);
                register_icall (mono_string_to_lpstr, "mono_string_to_lpstr", "ptr obj", FALSE);
                register_icall (mono_string_to_ansibstr, "mono_string_to_ansibstr", "ptr object", FALSE);
                register_icall (mono_string_builder_to_utf8, "mono_string_builder_to_utf8", "ptr object", FALSE);
@@ -298,22 +327,20 @@ mono_marshal_init (void)
                register_icall (mono_struct_delete_old, "mono_struct_delete_old", "void ptr ptr", FALSE);
                register_icall (mono_delegate_begin_invoke, "mono_delegate_begin_invoke", "object object ptr", FALSE);
                register_icall (mono_delegate_end_invoke, "mono_delegate_end_invoke", "object object ptr", FALSE);
-               register_icall (mono_compile_method, "mono_compile_method", "ptr ptr", FALSE);
                register_icall (mono_context_get, "mono_context_get", "object", FALSE);
                register_icall (mono_context_set, "mono_context_set", "void object", FALSE);
                register_icall (mono_gc_wbarrier_generic_nostore, "wb_generic", "void ptr", FALSE);
                register_icall (mono_gchandle_get_target, "mono_gchandle_get_target", "object int32", TRUE);
+               register_icall (mono_gchandle_new, "mono_gchandle_new", "uint32 object bool", TRUE);
                register_icall (mono_marshal_isinst_with_cache, "mono_marshal_isinst_with_cache", "object object ptr ptr", FALSE);
+               register_icall (mono_marshal_ftnptr_eh_callback, "mono_marshal_ftnptr_eh_callback", "void uint32", TRUE);
+               register_icall (mono_threads_enter_gc_safe_region_unbalanced, "mono_threads_enter_gc_safe_region_unbalanced", "ptr ptr", TRUE);
+               register_icall (mono_threads_exit_gc_safe_region_unbalanced, "mono_threads_exit_gc_safe_region_unbalanced", "void ptr ptr", TRUE);
+               register_icall (mono_threads_attach_coop, "mono_threads_attach_coop", "ptr ptr ptr", TRUE);
+               register_icall (mono_threads_detach_coop, "mono_threads_detach_coop", "void ptr ptr", TRUE);
 
                mono_cominterop_init ();
                mono_remoting_init ();
-
-               if (mono_threads_is_coop_enabled ()) {
-                       register_icall (mono_threads_prepare_blocking, "mono_threads_prepare_blocking", "ptr ptr", FALSE);
-                       register_icall (mono_threads_finish_blocking, "mono_threads_finish_blocking", "void ptr ptr", FALSE);
-                       register_icall (mono_threads_reset_blocking_start, "mono_threads_reset_blocking_start","ptr ptr", TRUE);
-                       register_icall (mono_threads_reset_blocking_end, "mono_threads_reset_blocking_end","void ptr ptr", TRUE);
-               }
        }
 }
 
@@ -382,19 +409,22 @@ mono_delegate_to_ftnptr (MonoDelegate *delegate)
 
        wrapper = mono_marshal_get_managed_wrapper (method, klass, target_handle);
 
-       delegate->delegate_trampoline = mono_compile_method (wrapper);
+       delegate->delegate_trampoline = mono_compile_method_checked (wrapper, &error);
+       if (!is_ok (&error))
+               goto fail;
 
        // Add the delegate to the delegate hash table
        delegate_hash_table_add (delegate);
 
        /* when the object is collected, collect the dynamic method, too */
-       mono_object_register_finalizer ((MonoObject*)delegate, &error);
-       if (!mono_error_ok (&error)) {
-               mono_error_set_pending_exception (&error);
-               return NULL;
-       }
+       mono_object_register_finalizer ((MonoObject*)delegate);
 
        return delegate->delegate_trampoline;
+
+fail:
+       mono_gchandle_free (target_handle);
+       mono_error_set_pending_exception (&error);
+       return NULL;
 }
 
 /* 
@@ -559,7 +589,12 @@ mono_ftnptr_to_delegate (MonoClass *klass, gpointer ftn)
                        mono_error_set_pending_exception (&error);
                        return NULL;
                }
-               mono_delegate_ctor_with_method ((MonoObject*)d, this_obj, mono_compile_method (wrapper), wrapper);
+               gpointer compiled_ptr = mono_compile_method_checked (wrapper, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
+               mono_delegate_ctor_with_method ((MonoObject*)d, this_obj, compiled_ptr, wrapper, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
        }
 
        if (d->object.vtable->domain != mono_domain_get ()) {
@@ -927,7 +962,7 @@ mono_string_utf16_to_builder (MonoStringBuilder *sb, gunichar2 *text)
  *
  * Returns: a utf8 string with the contents of the StringBuilder.
  *
- * The return value must be released with g_free.
+ * The return value must be released with mono_marshal_free.
  *
  * This is a JIT icall, it sets the pending exception and returns NULL on error.
  */
@@ -948,14 +983,14 @@ mono_string_builder_to_utf8 (MonoStringBuilder *sb)
 
        if (gerror) {
                g_error_free (gerror);
-               g_free (str_utf16);
+               mono_marshal_free (str_utf16);
                mono_set_pending_exception (mono_get_exception_execution_engine ("Failed to convert StringBuilder from utf16 to utf8"));
                return NULL;
        } else {
                guint len = mono_string_builder_capacity (sb) + 1;
                gchar *res = (gchar *)mono_marshal_alloc (len * sizeof (gchar), &error);
                if (!mono_error_ok (&error)) {
-                       g_free (str_utf16);
+                       mono_marshal_free (str_utf16);
                        g_free (tmp);
                        mono_error_set_pending_exception (&error);
                        return NULL;
@@ -965,7 +1000,7 @@ mono_string_builder_to_utf8 (MonoStringBuilder *sb)
                memcpy (res, tmp, str_len * sizeof (gchar));
                res[str_len] = '\0';
 
-               g_free (str_utf16);
+               mono_marshal_free (str_utf16);
                g_free (tmp);
                return res;
        }
@@ -979,7 +1014,8 @@ mono_string_builder_to_utf8 (MonoStringBuilder *sb)
  *
  * Returns: a utf16 string with the contents of the StringBuilder.
  *
- * The return value must not be freed.
+ * The return value must be released with mono_marshal_free.
+ *
  * This is a JIT icall, it sets the pending exception and returns NULL on error.
  */
 gunichar2*
@@ -1059,7 +1095,10 @@ mono_string_to_lpstr (MonoString *s)
                return as;
        }
 #else
-       return mono_string_to_utf8 (s);
+       MonoError error;
+       char *result = mono_string_to_utf8_checked (s, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 #endif
 }      
 
@@ -1082,6 +1121,7 @@ mono_string_to_ansibstr (MonoString *string_obj)
 void
 mono_string_to_byvalstr (gpointer dst, MonoString *src, int size)
 {
+       MonoError error;
        char *s;
        int len;
 
@@ -1092,7 +1132,9 @@ mono_string_to_byvalstr (gpointer dst, MonoString *src, int size)
        if (!src)
                return;
 
-       s = mono_string_to_utf8 (src);
+       s = mono_string_to_utf8_checked (src, &error);
+       if (mono_error_set_pending_exception (&error))
+               return;
        len = MIN (size, strlen (s));
        if (len >= size)
                len--;
@@ -1431,7 +1473,7 @@ emit_ptr_to_object_conv (MonoMethodBuilder *mb, MonoType *type, MonoMarshalConv
                } else {
                        mono_mb_emit_ldloc (mb, 1);
                        mono_mb_emit_ldloc (mb, 0);
-                       mono_mb_emit_icall (mb, mono_string_from_utf16);
+                       mono_mb_emit_icall (mb, ves_icall_mono_string_from_utf16);
                }
                mono_mb_emit_byte (mb, CEE_STIND_REF);          
                break;          
@@ -1440,7 +1482,7 @@ emit_ptr_to_object_conv (MonoMethodBuilder *mb, MonoType *type, MonoMarshalConv
                mono_mb_emit_ldloc (mb, 0);
                mono_mb_emit_byte (mb, CEE_LDIND_I);
 #ifdef TARGET_WIN32
-               mono_mb_emit_icall (mb, mono_string_from_utf16);
+               mono_mb_emit_icall (mb, ves_icall_mono_string_from_utf16);
 #else
                mono_mb_emit_icall (mb, mono_string_new_wrapper);
 #endif
@@ -1457,7 +1499,7 @@ emit_ptr_to_object_conv (MonoMethodBuilder *mb, MonoType *type, MonoMarshalConv
                mono_mb_emit_ldloc (mb, 1);
                mono_mb_emit_ldloc (mb, 0);
                mono_mb_emit_byte (mb, CEE_LDIND_I);
-               mono_mb_emit_icall (mb, mono_string_from_utf16);
+               mono_mb_emit_icall (mb, ves_icall_mono_string_from_utf16);
                mono_mb_emit_byte (mb, CEE_STIND_REF);
                break;
        case MONO_MARSHAL_CONV_OBJECT_STRUCT: {
@@ -1570,7 +1612,7 @@ conv_to_icall (MonoMarshalConv conv, int *ind_store_type)
                return mono_marshal_string_to_utf16;            
        case MONO_MARSHAL_CONV_LPWSTR_STR:
                *ind_store_type = CEE_STIND_REF;
-               return mono_string_from_utf16;
+               return ves_icall_mono_string_from_utf16;
        case MONO_MARSHAL_CONV_LPTSTR_STR:
                *ind_store_type = CEE_STIND_REF;
                return mono_string_new_wrapper;
@@ -1589,7 +1631,7 @@ conv_to_icall (MonoMarshalConv conv, int *ind_store_type)
                return mono_string_to_bstr;
        case MONO_MARSHAL_CONV_BSTR_STR:
                *ind_store_type = CEE_STIND_REF;
-               return mono_string_from_bstr;
+               return mono_string_from_bstr_icall;
        case MONO_MARSHAL_CONV_STR_TBSTR:
        case MONO_MARSHAL_CONV_STR_ANSIBSTR:
                return mono_string_to_ansibstr;
@@ -2211,8 +2253,12 @@ mono_delegate_begin_invoke (MonoDelegate *delegate, gpointer *params)
                        MonoArray *out_args;
                        method = delegate->method;
 
-                       msg = mono_method_call_message_new (mono_marshal_method_from_wrapper (method), params, NULL, &async_callback, &state);
-                       ares = mono_async_result_new (mono_domain_get (), NULL, state, NULL, NULL);
+                       msg = mono_method_call_message_new (mono_marshal_method_from_wrapper (method), params, NULL, &async_callback, &state, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return NULL;
+                       ares = mono_async_result_new (mono_domain_get (), NULL, state, NULL, NULL, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return NULL;
                        MONO_OBJECT_SETREF (ares, async_delegate, (MonoObject *)delegate);
                        MONO_OBJECT_SETREF (ares, async_callback, (MonoObject *)async_callback);
                        MONO_OBJECT_SETREF (msg, async_result, ares);
@@ -2939,7 +2985,9 @@ mono_delegate_end_invoke (MonoDelegate *delegate, gpointer *params)
 
        sig = mono_signature_no_pinvoke (method);
 
-       msg = mono_method_call_message_new (method, params, NULL, NULL, NULL);
+       msg = mono_method_call_message_new (method, params, NULL, NULL, NULL, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        ares = (MonoAsyncResult *)mono_array_get (msg->args, gpointer, sig->param_count - 1);
        if (ares == NULL) {
@@ -2961,7 +3009,9 @@ mono_delegate_end_invoke (MonoDelegate *delegate, gpointer *params)
                        mono_error_set_pending_exception (&error);
                        return NULL;
                }
-               mono_message_init (domain, msg, delegate->method_info, NULL);
+               mono_message_init (domain, msg, delegate->method_info, NULL, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
                msg->call_type = CallType_EndInvoke;
                MONO_OBJECT_SETREF (msg, async_result, ares);
                res = mono_remoting_invoke ((MonoObject *)tp->rp, msg, &exc, &out_args, &error);
@@ -2972,17 +3022,23 @@ mono_delegate_end_invoke (MonoDelegate *delegate, gpointer *params)
        } else
 #endif
        {
-               res = mono_threadpool_ms_end_invoke (ares, &out_args, &exc);
+               res = mono_threadpool_ms_end_invoke (ares, &out_args, &exc, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
        }
 
        if (exc) {
                if (((MonoException*)exc)->stack_trace) {
-                       char *strace = mono_string_to_utf8 (((MonoException*)exc)->stack_trace);
-                       char  *tmp;
-                       tmp = g_strdup_printf ("%s\nException Rethrown at:\n", strace);
-                       g_free (strace);        
-                       MONO_OBJECT_SETREF (((MonoException*)exc), stack_trace, mono_string_new (domain, tmp));
-                       g_free (tmp);
+                       MonoError inner_error;
+                       char *strace = mono_string_to_utf8_checked (((MonoException*)exc)->stack_trace, &inner_error);
+                       if (is_ok (&inner_error)) {
+                               char  *tmp;
+                               tmp = g_strdup_printf ("%s\nException Rethrown at:\n", strace);
+                               g_free (strace);        
+                               MONO_OBJECT_SETREF (((MonoException*)exc), stack_trace, mono_string_new (domain, tmp));
+                               g_free (tmp);
+                       } else
+                               mono_error_cleanup (&inner_error); /* no stack trace, but at least throw the original exception */
                }
                mono_set_pending_exception ((MonoException*)exc);
        }
@@ -4402,6 +4458,10 @@ mono_marshal_get_icall_wrapper (MonoMethodSignature *sig, const char *name, gcon
        int i;
        WrapperInfo *info;
        
+       GHashTable *cache = get_cache (&mono_defaults.object_class->image->icall_wrapper_cache, mono_aligned_addr_hash, NULL);
+       if ((res = mono_marshal_find_in_cache (cache, (gpointer) func)))
+               return res;
+
        g_assert (sig->pinvoke);
 
        mb = mono_mb_new (mono_defaults.object_class, name, MONO_WRAPPER_MANAGED_TO_NATIVE);
@@ -4436,7 +4496,7 @@ mono_marshal_get_icall_wrapper (MonoMethodSignature *sig, const char *name, gcon
 
        info = mono_wrapper_info_create (mb, WRAPPER_SUBTYPE_ICALL_WRAPPER);
        info->d.icall.func = (gpointer)func;
-       res = mono_mb_create (mb, csig, csig->param_count + 16, info);
+       res = mono_mb_create_and_cache_full (cache, (gpointer) func, mb, csig, csig->param_count + 16, info, NULL);
        mono_mb_free (mb);
 
        return res;
@@ -7267,12 +7327,9 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
        EmitMarshalContext m;
        MonoMethodSignature *csig;
        MonoClass *klass;
-       MonoExceptionClause *clause;
        int i, argnum, *tmp_locals;
        int type, param_shift = 0;
-       static MonoMethodSignature *get_last_error_sig = NULL;
-       int coop_gc_stack_dummy, coop_gc_var, coop_unblocked_var;
-       int leave_pos;
+       int coop_gc_stack_dummy, coop_gc_var;
 
        memset (&m, 0, sizeof (m));
        m.mb = mb;
@@ -7315,12 +7372,20 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
                coop_gc_stack_dummy = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
                /* local 5, the local to be used when calling the suspend funcs */
                coop_gc_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-               coop_unblocked_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-
-               clause = (MonoExceptionClause *)mono_image_alloc0 (image, sizeof (MonoExceptionClause));
-               clause->flags = MONO_EXCEPTION_CLAUSE_FINALLY;
        }
 
+       /*
+        * cookie = mono_threads_enter_gc_safe_region_unbalanced (ref dummy);
+        *
+        * ret = method (...);
+        *
+        * mono_threads_exit_gc_safe_region_unbalanced (cookie, ref dummy);
+        *
+        * <interrupt check>
+        *
+        * return ret;
+        */
+
        if (MONO_TYPE_ISSTRUCT (sig->ret))
                m.vtaddr_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
 
@@ -7352,10 +7417,8 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
                        mono_mb_emit_byte (mb, CEE_POP); // Result not needed yet
                }
 
-               clause->try_offset = mono_mb_get_label (mb);
-
                mono_mb_emit_ldloc_addr (mb, coop_gc_stack_dummy);
-               mono_mb_emit_icall (mb, mono_threads_prepare_blocking);
+               mono_mb_emit_icall (mb, mono_threads_enter_gc_safe_region_unbalanced);
                mono_mb_emit_stloc (mb, coop_gc_var);
        }
 
@@ -7380,8 +7443,7 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
 #else
                g_assert_not_reached ();
 #endif
-       }
-       else {
+       } else {
                if (aot) {
                        /* Reuse the ICALL_ADDR opcode for pinvokes too */
                        mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
@@ -7394,14 +7456,15 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
 
        /* Set LastError if needed */
        if (piinfo->piflags & PINVOKE_ATTRIBUTE_SUPPORTS_LAST_ERROR) {
+#ifdef TARGET_WIN32
+               static MonoMethodSignature *get_last_error_sig = NULL;
                if (!get_last_error_sig) {
                        get_last_error_sig = mono_metadata_signature_alloc (mono_defaults.corlib, 0);
                        get_last_error_sig->ret = &mono_defaults.int_class->byval_arg;
                        get_last_error_sig->pinvoke = 1;
                }
 
-#ifdef TARGET_WIN32
-               /* 
+               /*
                 * Have to call GetLastError () early and without a wrapper, since various runtime components could
                 * clobber its value.
                 */
@@ -7410,7 +7473,7 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
 #else
                mono_mb_emit_icall (mb, mono_marshal_set_last_error);
 #endif
-       }               
+       }
 
        if (MONO_TYPE_ISSTRUCT (sig->ret)) {
                MonoClass *klass = mono_class_from_mono_type (sig->ret);
@@ -7427,9 +7490,7 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
        if (mono_threads_is_coop_enabled ()) {
                mono_mb_emit_ldloc (mb, coop_gc_var);
                mono_mb_emit_ldloc_addr (mb, coop_gc_stack_dummy);
-               mono_mb_emit_icall (mb, mono_threads_finish_blocking);
-               mono_mb_emit_icon (mb, 1);
-               mono_mb_emit_stloc (mb, coop_unblocked_var);
+               mono_mb_emit_icall (mb, mono_threads_exit_gc_safe_region_unbalanced);
        }
 
        /* convert the result */
@@ -7486,31 +7547,6 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
                mono_mb_emit_stloc (mb, 3);
        }
 
-       if (mono_threads_is_coop_enabled ()) {
-               int pos;
-
-               leave_pos = mono_mb_emit_branch (mb, CEE_LEAVE);
-
-               clause->try_len = mono_mb_get_label (mb) - clause->try_offset;
-               clause->handler_offset = mono_mb_get_label (mb);
-
-               mono_mb_emit_ldloc (mb, coop_unblocked_var);
-               mono_mb_emit_icon (mb, 1);
-               pos = mono_mb_emit_branch (mb, CEE_BEQ);
-
-               mono_mb_emit_ldloc (mb, coop_gc_var);
-               mono_mb_emit_ldloc_addr (mb, coop_gc_stack_dummy);
-               mono_mb_emit_icall (mb, mono_threads_finish_blocking);
-
-               mono_mb_patch_branch (mb, pos);
-
-               mono_mb_emit_byte (mb, CEE_ENDFINALLY);
-
-               clause->handler_len = mono_mb_get_pos (mb) - clause->handler_offset;
-
-               mono_mb_patch_branch (mb, leave_pos);
-       }
-
        /* 
         * Need to call this after converting the result since MONO_VTADDR needs 
         * to be adjacent to the call instruction.
@@ -7548,10 +7584,6 @@ mono_marshal_emit_native_wrapper (MonoImage *image, MonoMethodBuilder *mb, MonoM
                mono_mb_emit_ldloc (mb, 3);
 
        mono_mb_emit_byte (mb, CEE_RET);
-
-       if (mono_threads_is_coop_enabled ()) {
-               mono_mb_set_clauses (mb, 1, clause);
-       }
 }
 #endif /* DISABLE_JIT */
 
@@ -7957,9 +7989,9 @@ mono_marshal_emit_managed_wrapper (MonoMethodBuilder *mb, MonoMethodSignature *i
        }
 #else
        MonoMethodSignature *sig, *csig;
-       MonoExceptionClause *clause;
-       int i, *tmp_locals;
-       int leave_pos;
+       MonoExceptionClause *clauses, *clause_finally, *clause_catch;
+       int i, *tmp_locals, ex_local, e_local, attach_cookie_local, attach_dummy_local;
+       int leave_try_pos, leave_catch_pos, ex_m1_pos;
        gboolean closed = FALSE;
 
        sig = m->sig;
@@ -7990,43 +8022,64 @@ mono_marshal_emit_managed_wrapper (MonoMethodBuilder *mb, MonoMethodSignature *i
        if (MONO_TYPE_ISSTRUCT (sig->ret))
                m->vtaddr_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
 
+       ex_local = mono_mb_add_local (mb, &mono_defaults.uint32_class->byval_arg);
+       e_local = mono_mb_add_local (mb, &mono_defaults.exception_class->byval_arg);
+
+       attach_cookie_local = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
+       attach_dummy_local = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
+
        /*
+        * guint32 ex = -1;
         * try {
-        *   mono_jit_attach ();
+        *   // does (STARTING|RUNNING|BLOCKING) -> RUNNING + set/switch domain
+        *   mono_threads_attach_coop ();
         *
         *   <interrupt check>
         *
         *   ret = method (...);
+        * } catch (Exception e) {
+        *   ex = mono_gchandle_new (e, false);
         * } finally {
-        *   mono_jit_detach ();
+        *   // does RUNNING -> (RUNNING|BLOCKING) + unset/switch domain
+        *   mono_threads_detach_coop ();
+        *
+        *   if (ex != -1)
+        *     mono_marshal_ftnptr_eh_callback (ex);
         * }
         *
         * return ret;
         */
 
-       if (mono_threads_is_coop_enabled ()) {
-               clause = g_new0 (MonoExceptionClause, 1);
-               clause->flags = MONO_EXCEPTION_CLAUSE_FINALLY;
-       }
+       clauses = g_new0 (MonoExceptionClause, 2);
+
+       clause_catch = &clauses [0];
+       clause_catch->flags = MONO_EXCEPTION_CLAUSE_NONE;
+       clause_catch->data.catch_class = mono_defaults.exception_class;
+
+       clause_finally = &clauses [1];
+       clause_finally->flags = MONO_EXCEPTION_CLAUSE_FINALLY;
 
        mono_mb_emit_icon (mb, 0);
        mono_mb_emit_stloc (mb, 2);
 
-       if (mono_threads_is_coop_enabled ()) {
-               /* try { */
-               clause->try_offset = mono_mb_get_label (mb);
-       }
+       mono_mb_emit_icon (mb, -1);
+       mono_mb_emit_byte (mb, CEE_CONV_U4);
+       mono_mb_emit_stloc (mb, ex_local);
 
-       /*
-        * Might need to attach the thread to the JIT or change the
-        * domain for the callback.
-        *
-        * Also does the (STARTING|BLOCKING|RUNNING) -> RUNNING thread state transtion
-        *
-        * mono_jit_attach ();
-        */
-       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
-       mono_mb_emit_byte (mb, CEE_MONO_JIT_ATTACH);
+       /* try { */
+       clause_catch->try_offset = clause_finally->try_offset = mono_mb_get_label (mb);
+
+       if (!mono_threads_is_coop_enabled ()) {
+               mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+               mono_mb_emit_byte (mb, CEE_MONO_JIT_ATTACH);
+       } else {
+               /* mono_threads_attach_coop (); */
+               mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+               mono_mb_emit_byte (mb, CEE_MONO_LDDOMAIN);
+               mono_mb_emit_ldloc_addr (mb, attach_dummy_local);
+               mono_mb_emit_icall (mb, mono_threads_attach_coop);
+               mono_mb_emit_stloc (mb, attach_cookie_local);
+       }
 
        /* <interrupt check> */
        emit_thread_interrupt_checkpoint (mb);
@@ -8169,31 +8222,62 @@ mono_marshal_emit_managed_wrapper (MonoMethodBuilder *mb, MonoMethodSignature *i
                }
        }
 
-       if (mono_threads_is_coop_enabled ()) {
-               leave_pos = mono_mb_emit_branch (mb, CEE_LEAVE);
+       leave_try_pos = mono_mb_emit_branch (mb, CEE_LEAVE);
 
-               /* } finally { */
-               clause->try_len = mono_mb_get_label (mb) - clause->try_offset;
-               clause->handler_offset = mono_mb_get_label (mb);
-       }
+       /* } [endtry] */
 
-       /*
-        * Also does the RUNNING -> (BLOCKING|RUNNING) thread state transition
-        *
-        * mono_jit_detach ();
-        */
-       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
-       mono_mb_emit_byte (mb, CEE_MONO_JIT_DETACH);
+       /* catch (Exception e) { */
+       clause_catch->try_len = mono_mb_get_label (mb) - clause_catch->try_offset;
+       clause_catch->handler_offset = mono_mb_get_label (mb);
 
-       if (mono_threads_is_coop_enabled ()) {
-               mono_mb_emit_byte (mb, CEE_ENDFINALLY);
+       mono_mb_emit_stloc (mb, e_local);
 
-               /* } [endfinally] */
-               clause->handler_len = mono_mb_get_pos (mb) - clause->handler_offset;
+       /* ex = mono_gchandle_new (e, false); */
+       mono_mb_emit_ldloc (mb, e_local);
+       mono_mb_emit_icon (mb, 0);
+       mono_mb_emit_icall (mb, mono_gchandle_new);
+       mono_mb_emit_stloc (mb, ex_local);
+
+       leave_catch_pos = mono_mb_emit_branch (mb, CEE_LEAVE);
+
+       /* } [endcatch] */
+       clause_catch->handler_len = mono_mb_get_pos (mb) - clause_catch->handler_offset;
 
-               mono_mb_patch_branch (mb, leave_pos);
+       /* finally { */
+       clause_finally->try_len = mono_mb_get_label (mb) - clause_finally->try_offset;
+       clause_finally->handler_offset = mono_mb_get_label (mb);
+
+       if (!mono_threads_is_coop_enabled ()) {
+               mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+               mono_mb_emit_byte (mb, CEE_MONO_JIT_DETACH);
+       } else {
+               /* mono_threads_detach_coop (); */
+               mono_mb_emit_ldloc (mb, attach_cookie_local);
+               mono_mb_emit_ldloc_addr (mb, attach_dummy_local);
+               mono_mb_emit_icall (mb, mono_threads_detach_coop);
        }
 
+       /* if (ex != -1) */
+       mono_mb_emit_ldloc (mb, ex_local);
+       mono_mb_emit_icon (mb, -1);
+       mono_mb_emit_byte (mb, CEE_CONV_U4);
+       ex_m1_pos = mono_mb_emit_branch (mb, CEE_BEQ);
+
+       /* mono_marshal_ftnptr_eh_callback (ex) */
+       mono_mb_emit_ldloc (mb, ex_local);
+       mono_mb_emit_icall (mb, mono_marshal_ftnptr_eh_callback);
+
+       /* [ex == -1] */
+       mono_mb_patch_branch (mb, ex_m1_pos);
+
+       mono_mb_emit_byte (mb, CEE_ENDFINALLY);
+
+       /* } [endfinally] */
+       clause_finally->handler_len = mono_mb_get_pos (mb) - clause_finally->handler_offset;
+
+       mono_mb_patch_branch (mb, leave_try_pos);
+       mono_mb_patch_branch (mb, leave_catch_pos);
+
        /* return ret; */
        if (m->retobj_var) {
                mono_mb_emit_ldloc (mb, m->retobj_var);
@@ -8206,9 +8290,7 @@ mono_marshal_emit_managed_wrapper (MonoMethodBuilder *mb, MonoMethodSignature *i
                mono_mb_emit_byte (mb, CEE_RET);
        }
 
-       if (mono_threads_is_coop_enabled ()) {
-               mono_mb_set_clauses (mb, 1, clause);
-       }
+       mono_mb_set_clauses (mb, 2, clauses);
 
        if (closed)
                g_free (sig);
@@ -8474,7 +8556,9 @@ mono_marshal_get_vtfixup_ftnptr (MonoImage *image, guint32 token, guint16 type)
                                mono_metadata_free_marshal_spec (mspecs [i]);
                g_free (mspecs);
 
-               return mono_compile_method (method);
+               gpointer compiled_ptr = mono_compile_method_checked (method, &error);
+               mono_error_assert_ok (&error);
+               return compiled_ptr;
        }
 
        sig = mono_method_signature (method);
@@ -8497,7 +8581,9 @@ mono_marshal_get_vtfixup_ftnptr (MonoImage *image, guint32 token, guint16 type)
        method = mono_mb_create (mb, sig, param_count, NULL);
        mono_mb_free (mb);
 
-       return mono_compile_method (method);
+       gpointer compiled_ptr = mono_compile_method_checked (method, &error);
+       mono_error_assert_ok (&error);
+       return compiled_ptr;
 }
 
 #ifndef DISABLE_JIT
@@ -8628,12 +8714,14 @@ mono_marshal_get_castclass_with_cache (void)
        return cached;
 }
 
+/* this is an icall */
 static MonoObject *
 mono_marshal_isinst_with_cache (MonoObject *obj, MonoClass *klass, uintptr_t *cache)
 {
        MonoError error;
        MonoObject *isinst = mono_object_isinst_checked (obj, klass, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
 #ifndef DISABLE_REMOTING
        if (obj->vtable->klass == mono_defaults.transparent_proxy_class)
@@ -9202,7 +9290,7 @@ mono_marshal_get_synchronized_wrapper (MonoMethod *method)
        if (!enter_method) {
                MonoMethodDesc *desc;
 
-               desc = mono_method_desc_new ("Monitor:enter_with_atomic_var(object,bool&)", FALSE);
+               desc = mono_method_desc_new ("Monitor:Enter(object,bool&)", FALSE);
                enter_method = mono_method_desc_search_in_class (desc, mono_defaults.monitor_class);
                g_assert (enter_method);
                mono_method_desc_free (desc);
@@ -10711,6 +10799,7 @@ ves_icall_System_Runtime_InteropServices_Marshal_PtrToStructure_type (gpointer s
 int
 ves_icall_System_Runtime_InteropServices_Marshal_OffsetOf (MonoReflectionType *type, MonoString *field_name)
 {
+       MonoError error;
        MonoMarshalType *info;
        MonoClass *klass;
        char *fname;
@@ -10719,7 +10808,9 @@ ves_icall_System_Runtime_InteropServices_Marshal_OffsetOf (MonoReflectionType *t
        MONO_CHECK_ARG_NULL (type, 0);
        MONO_CHECK_ARG_NULL (field_name, 0);
 
-       fname = mono_string_to_utf8 (field_name);
+       fname = mono_string_to_utf8_checked (field_name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return 0;
        klass = mono_class_from_mono_type (type->type);
        if (!mono_class_init (klass)) {
                mono_set_pending_exception (mono_class_get_exception_for_failure (klass));
@@ -10768,10 +10859,13 @@ ves_icall_System_Runtime_InteropServices_Marshal_OffsetOf (MonoReflectionType *t
 gpointer
 ves_icall_System_Runtime_InteropServices_Marshal_StringToHGlobalAnsi (MonoString *string)
 {
+       MonoError error;
 #ifdef HOST_WIN32
        char* tres, *ret;
        size_t len;
-       tres = mono_string_to_utf8 (string);
+       tres = mono_string_to_utf8_checked (string, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        if (!tres)
                return tres;
 
@@ -10782,7 +10876,9 @@ ves_icall_System_Runtime_InteropServices_Marshal_StringToHGlobalAnsi (MonoString
        return ret;
 
 #else
-       return mono_string_to_utf8 (string);
+       char *ret = mono_string_to_utf8_checked (string, &error);
+       mono_error_set_pending_exception (&error);
+       return ret;
 #endif
 }
 
@@ -11629,10 +11725,12 @@ mono_marshal_get_thunk_invoke_wrapper (MonoMethod *method)
        GHashTable *cache;
        MonoMethod *res;
        int i, param_count, sig_size, pos_leave;
-       int coop_gc_var, coop_gc_dummy_local;
 
        g_assert (method);
 
+       // FIXME: we need to store the exception into a MonoHandle
+       g_assert (!mono_threads_is_coop_enabled ());
+
        klass = method->klass;
        image = method->klass->image;
 
@@ -11682,26 +11780,11 @@ mono_marshal_get_thunk_invoke_wrapper (MonoMethod *method)
        if (!MONO_TYPE_IS_VOID (sig->ret))
                mono_mb_add_local (mb, sig->ret);
 
-       if (mono_threads_is_coop_enabled ()) {
-               /* local 4, the local to be used when calling the reset_blocking funcs */
-               /* tons of code hardcode 3 to be the return var */
-               coop_gc_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-               /* local 5, the local used to get a stack address for suspend funcs */
-               coop_gc_dummy_local = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-       }
-
        /* clear exception arg */
        mono_mb_emit_ldarg (mb, param_count - 1);
        mono_mb_emit_byte (mb, CEE_LDNULL);
        mono_mb_emit_byte (mb, CEE_STIND_REF);
 
-       if (mono_threads_is_coop_enabled ()) {
-               /* FIXME this is technically wrong as the callback itself must be executed in gc unsafe context. */
-               mono_mb_emit_ldloc_addr (mb, coop_gc_dummy_local);
-               mono_mb_emit_icall (mb, mono_threads_reset_blocking_start);
-               mono_mb_emit_stloc (mb, coop_gc_var);
-       }
-
        /* try */
        clause = (MonoExceptionClause *)mono_image_alloc0 (image, sizeof (MonoExceptionClause));
        clause->try_offset = mono_mb_get_label (mb);
@@ -11771,13 +11854,6 @@ mono_marshal_get_thunk_invoke_wrapper (MonoMethod *method)
                        mono_mb_emit_op (mb, CEE_BOX, mono_class_from_mono_type (sig->ret));
        }
 
-       if (mono_threads_is_coop_enabled ()) {
-               /* XXX merge reset_blocking_end with detach */
-               mono_mb_emit_ldloc (mb, coop_gc_var);
-               mono_mb_emit_ldloc_addr (mb, coop_gc_dummy_local);
-               mono_mb_emit_icall (mb, mono_threads_reset_blocking_end);
-       }
-
        mono_mb_emit_byte (mb, CEE_RET);
 #endif
 
@@ -11817,3 +11893,42 @@ mono_marshal_free_dynamic_wrappers (MonoMethod *method)
        if (marshal_mutex_initialized)
                mono_marshal_unlock ();
 }
+
+static void
+mono_marshal_ftnptr_eh_callback (guint32 gchandle)
+{
+       g_assert (ftnptr_eh_callback);
+       ftnptr_eh_callback (gchandle);
+}
+
+static void
+ftnptr_eh_callback_default (guint32 gchandle)
+{
+       MonoException *exc;
+       gpointer stackdata;
+
+       g_assert (gchandle >= 0);
+
+       mono_threads_enter_gc_unsafe_region_unbalanced (&stackdata);
+
+       exc = (MonoException*) mono_gchandle_get_target (gchandle);
+
+       mono_gchandle_free (gchandle);
+
+       mono_raise_exception (exc);
+}
+
+/*
+ * mono_install_ftnptr_eh_callback:
+ *
+ *   Install a callback that should be called when there is a managed exception
+ *   in a native-to-managed wrapper. This is mainly used by iOS to convert a
+ *   managed exception to a native exception, to properly unwind the native
+ *   stack; this native exception will then be converted back to a managed
+ *   exception in their managed-to-native wrapper.
+ */
+void
+mono_install_ftnptr_eh_callback (MonoFtnPtrEHCallback callback)
+{
+       ftnptr_eh_callback = callback;
+}
index 818aea36d2ae5485c3f6332b0d0fd8aa27be77a6..d3c0a2b051762f2ec82b4f7b8095a053f78c9e9b 100644 (file)
@@ -593,7 +593,10 @@ void
 mono_marshal_use_aot_wrappers (gboolean use);
 
 MonoObject *
-mono_marshal_xdomain_copy_value (MonoObject *val);
+mono_marshal_xdomain_copy_value (MonoObject *val, MonoError *error);
+
+MonoObject *
+ves_icall_mono_marshal_xdomain_copy_value (MonoObject *val);
 
 int
 mono_mb_emit_save_args (MonoMethodBuilder *mb, MonoMethodSignature *sig, gboolean save_this);
@@ -610,6 +613,11 @@ mono_mb_create_and_cache_full (GHashTable *cache, gpointer key,
                                                           MonoMethodBuilder *mb, MonoMethodSignature *sig,
                                                           int max_stack, WrapperInfo *info, gboolean *out_found);
 
+typedef void (*MonoFtnPtrEHCallback) (guint32 gchandle);
+
+MONO_API void
+mono_install_ftnptr_eh_callback (MonoFtnPtrEHCallback callback);
+
 G_END_DECLS
 
 #endif /* __MONO_MARSHAL_H__ */
index 6b8fdcb44ca396a788f220bac28c4795f2bd4752..96f6a5da7c90f3c924b02fe338f3a3eb4f728f95 100644 (file)
@@ -334,6 +334,8 @@ struct _MonoImage {
        GHashTable *ldflda_wrapper_cache;
        GHashTable *stfld_wrapper_cache;
        GHashTable *isinst_cache;
+
+       GHashTable *icall_wrapper_cache;
        GHashTable *castclass_cache;
        GHashTable *proxy_isinst_cache;
        GHashTable *rgctx_template_hash; /* LOCKING: templates lock */
@@ -735,6 +737,10 @@ mono_metadata_parse_mh_full                 (MonoImage             *image,
                                             const char            *ptr,
                                                 MonoError *error);
 
+MonoMethodSignature  *mono_metadata_parse_signature_checked (MonoImage *image, 
+                                                            uint32_t    token,
+                                                            MonoError *error);
+
 gboolean
 mono_method_get_header_summary (MonoMethod *method, MonoMethodHeaderSummary *summary);
 
index d278a7487ee68a8d59dce5902675362b2200dd39..ab0911bc677f89e1459c8f7476aff317c5e4eccf 100644 (file)
@@ -1822,7 +1822,7 @@ mono_metadata_get_param_attrs (MonoImage *m, int def, int param_count)
 /*
  * mono_metadata_parse_signature:
  * @image: metadata context
- * @toke: metadata token
+ * @token: metadata token
  *
  * Decode a method signature stored in the STANDALONESIG table
  *
@@ -1833,15 +1833,34 @@ mono_metadata_parse_signature (MonoImage *image, guint32 token)
 {
        MonoError error;
        MonoMethodSignature *ret;
+       ret = mono_metadata_parse_signature_checked (image, token, &error);
+       mono_error_cleanup (&error);
+       return ret;
+}
+
+/*
+ * mono_metadata_parse_signature_checked:
+ * @image: metadata context
+ * @token: metadata token
+ * @error: set on error
+ *
+ * Decode a method signature stored in the STANDALONESIG table
+ *
+ * Returns: a MonoMethodSignature describing the signature. On failure
+ * returns NULL and sets @error.
+ */
+MonoMethodSignature*
+mono_metadata_parse_signature_checked (MonoImage *image, guint32 token, MonoError *error)
+{
+
+       mono_error_init (error);
        MonoTableInfo *tables = image->tables;
        guint32 idx = mono_metadata_token_index (token);
        guint32 sig;
        const char *ptr;
 
        if (image_is_dynamic (image)) {
-               ret = (MonoMethodSignature *)mono_lookup_dynamic_token (image, token, NULL, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
-               return ret;
+               return (MonoMethodSignature *)mono_lookup_dynamic_token (image, token, NULL, error);
        }
 
        g_assert (mono_metadata_token_table(token) == MONO_TABLE_STANDALONESIG);
@@ -1851,9 +1870,7 @@ mono_metadata_parse_signature (MonoImage *image, guint32 token)
        ptr = mono_metadata_blob_heap (image, sig);
        mono_metadata_decode_blob_size (ptr, &ptr);
 
-       ret = mono_metadata_parse_method_signature_full (image, NULL, 0, ptr, NULL, &error);
-       mono_error_cleanup (&error); /*FIXME don't swallow the error message*/
-       return ret;
+       return mono_metadata_parse_method_signature_full (image, NULL, 0, ptr, NULL, error);
 }
 
 /*
index 35afec7e3eac6f0a4eea92c57f7aededa9b4c917..542f9e108e4c9d4eea8ff0a5fa5ccb556a48a2ca 100644 (file)
@@ -422,6 +422,7 @@ MONO_API MonoMethodSignature  *mono_metadata_signature_alloc (MonoImage *image,
 
 MONO_API MonoMethodSignature  *mono_metadata_signature_dup (MonoMethodSignature *sig);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoMethodSignature  *mono_metadata_parse_signature (MonoImage *image, 
                                                     uint32_t    token);
 
index 45c13be4e0f780ed511c327c5c9925ff97626e36..3dfd3c4e08f720871d564e55926e9009fa568e7a 100644 (file)
@@ -743,7 +743,7 @@ mono_monitor_try_enter_inflated (MonoObject *obj, guint32 ms, gboolean allow_int
        LockWord lw;
        MonoThreadsSync *mon;
        HANDLE sem;
-       guint32 then = 0, now, delta;
+       gint64 then = 0, now, delta;
        guint32 waitms;
        guint32 ret;
        guint32 new_status, old_status, tmp_status;
@@ -881,9 +881,9 @@ retry_contended:
         * We pass TRUE instead of allow_interruption since we have to check for the
         * StopRequested case below.
         */
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret = WaitForSingleObjectEx (mon->entry_sem, waitms, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_clr_state (thread, ThreadState_WaitSleepJoin);
        
@@ -900,14 +900,9 @@ retry_contended:
                if (!mono_thread_test_state (mono_thread_internal_current (), (MonoThreadState)(ThreadState_StopRequested | ThreadState_SuspendRequested | ThreadState_AbortRequested))) {
                        if (ms != INFINITE) {
                                now = mono_msec_ticks ();
-                               if (now < then) {
-                                       LOCK_DEBUG (g_message ("%s: wrapped around! now=0x%x then=0x%x", __func__, now, then));
 
-                                       now += (0xffffffff - then);
-                                       then = 0;
-
-                                       LOCK_DEBUG (g_message ("%s: wrap rejig: now=0x%x then=0x%x delta=0x%x", __func__, now, then, now-then));
-                               }
+                               /* it should not overflow before ~30k years */
+                               g_assert (now >= then);
 
                                delta = now - then;
                                if (delta >= ms) {
@@ -956,11 +951,6 @@ mono_monitor_try_enter_internal (MonoObject *obj, guint32 ms, gboolean allow_int
 
        LOCK_DEBUG (g_message("%s: (%d) Trying to lock object %p (%d ms)", __func__, id, obj, ms));
 
-       if (G_UNLIKELY (!obj)) {
-               mono_set_pending_exception (mono_get_exception_argument_null ("obj"));
-               return FALSE;
-       }
-
        lw.sync = obj->synchronisation;
 
        if (G_LIKELY (lock_word_is_free (lw))) {
@@ -1006,18 +996,31 @@ mono_monitor_try_enter_internal (MonoObject *obj, guint32 ms, gboolean allow_int
 gboolean 
 mono_monitor_enter (MonoObject *obj)
 {
+       if (G_UNLIKELY (!obj)) {
+               mono_set_pending_exception (mono_get_exception_argument_null ("obj"));
+               return FALSE;
+       }
        return mono_monitor_try_enter_internal (obj, INFINITE, FALSE) == 1;
 }
 
 gboolean 
 mono_monitor_enter_fast (MonoObject *obj)
 {
+       if (G_UNLIKELY (!obj)) {
+               /* don't set pending exn on the fast path, just return
+                * FALSE and let the slow path take care of it. */
+               return FALSE;
+       }
        return mono_monitor_try_enter_internal (obj, 0, FALSE) == 1;
 }
 
 gboolean
 mono_monitor_try_enter (MonoObject *obj, guint32 ms)
 {
+       if (G_UNLIKELY (!obj)) {
+               mono_set_pending_exception (mono_get_exception_argument_null ("obj"));
+               return FALSE;
+       }
        return mono_monitor_try_enter_internal (obj, ms, FALSE) == 1;
 }
 
@@ -1076,29 +1079,14 @@ mono_monitor_threads_sync_members_offset (int *status_offset, int *nest_offset)
        *nest_offset = ENCODE_OFF_SIZE (MONO_STRUCT_OFFSET (MonoThreadsSync, nest), sizeof (ts.nest));
 }
 
-gboolean 
-ves_icall_System_Threading_Monitor_Monitor_try_enter (MonoObject *obj, guint32 ms)
-{
-       gint32 res;
-
-       do {
-               res = mono_monitor_try_enter_internal (obj, ms, TRUE);
-               if (res == -1) {
-                       MonoException *exc = mono_thread_interruption_checkpoint ();
-                       if (exc) {
-                               mono_set_pending_exception (exc);
-                               return FALSE;
-                       }
-               }
-       } while (res == -1);
-       
-       return res == 1;
-}
-
 void
 ves_icall_System_Threading_Monitor_Monitor_try_enter_with_atomic_var (MonoObject *obj, guint32 ms, char *lockTaken)
 {
        gint32 res;
+       if (G_UNLIKELY (!obj)) {
+               mono_set_pending_exception (mono_get_exception_argument_null ("obj"));
+               return;
+       }
        do {
                res = mono_monitor_try_enter_internal (obj, ms, TRUE);
                /*This means we got interrupted during the wait and didn't got the monitor.*/
@@ -1137,6 +1125,8 @@ mono_monitor_enter_v4_fast (MonoObject *obj, char *lock_taken)
 {
        if (*lock_taken == 1)
                return FALSE;
+       if (G_UNLIKELY (!obj))
+               return FALSE;
        gint32 res = mono_monitor_try_enter_internal (obj, 0, TRUE);
        *lock_taken = res == 1;
        return res == 1;
@@ -1272,7 +1262,8 @@ ves_icall_System_Threading_Monitor_Monitor_wait (MonoObject *obj, guint32 ms)
        mon = lock_word_get_inflated_lock (lw);
 
        /* Do this WaitSleepJoin check before creating the event handle */
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return FALSE;
        
        event = CreateEvent (NULL, FALSE, FALSE, NULL);
        if (event == NULL) {
@@ -1282,7 +1273,11 @@ ves_icall_System_Threading_Monitor_Monitor_wait (MonoObject *obj, guint32 ms)
        
        LOCK_DEBUG (g_message ("%s: (%d) queuing handle %p", __func__, mono_thread_info_get_small_id (), event));
 
-       mono_thread_current_check_pending_interrupt ();
+       /* This looks superfluous */
+       if (mono_thread_current_check_pending_interrupt ()) {
+               CloseHandle (event);
+               return FALSE;
+       }
        
        mono_thread_set_state (thread, ThreadState_WaitSleepJoin);
 
@@ -1301,9 +1296,9 @@ ves_icall_System_Threading_Monitor_Monitor_wait (MonoObject *obj, guint32 ms)
         * is private to this thread.  Therefore even if the event was
         * signalled before we wait, we still succeed.
         */
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret = WaitForSingleObjectEx (event, ms, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        /* Reset the thread state fairly early, so we don't have to worry
         * about the monitor error checking
@@ -1326,9 +1321,9 @@ ves_icall_System_Threading_Monitor_Monitor_wait (MonoObject *obj, guint32 ms)
                /* Poll the event again, just in case it was signalled
                 * while we were trying to regain the monitor lock
                 */
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
                ret = WaitForSingleObjectEx (event, 0, FALSE);
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
        }
 
        /* Pulse will have popped our event from the queue if it signalled
index f8e89936ba93067e658532d75e2e05e042321e0b..f43e08caece432d1aba4a7bedd81d8e063138ff1 100644 (file)
@@ -115,7 +115,6 @@ void mono_monitor_threads_sync_members_offset (int *status_offset, int *nest_off
 #define MONO_THREADS_SYNC_MEMBER_OFFSET(o)     ((o)>>8)
 #define MONO_THREADS_SYNC_MEMBER_SIZE(o)       ((o)&0xff)
 
-extern gboolean ves_icall_System_Threading_Monitor_Monitor_try_enter(MonoObject *obj, guint32 ms);
 extern gboolean ves_icall_System_Threading_Monitor_Monitor_test_owner(MonoObject *obj);
 extern gboolean ves_icall_System_Threading_Monitor_Monitor_test_synchronised(MonoObject *obj);
 extern void ves_icall_System_Threading_Monitor_Monitor_pulse(MonoObject *obj);
index aaff73db581ffa249deeab394dfb93737e5b34e8..075c62f129bbd06f19442241c2ee0777aca36c8b 100644 (file)
@@ -32,6 +32,7 @@
 #include "mono-hash.h"
 #include "metadata/gc-internals.h"
 #include <mono/utils/checked-build.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #ifdef HAVE_BOEHM_GC
 #define mg_new0(type,n)  ((type *) GC_MALLOC(sizeof(type) * (n)))
index 657800afbe35e70255efb0f3588a9a41f7ef0225..42d646444b136658a5a5fc76a87ebf5a89d8828d 100644 (file)
 #include "mono/metadata/class-internals.h"
 #include "mono/metadata/object-internals.h"
 
+
+static
+MonoMList*  mono_mlist_alloc_checked       (MonoObject *data, MonoError *error);
+
+
 /* matches the System.MonoListItem object*/
 struct _MonoMList {
        MonoObject object;
@@ -40,14 +45,35 @@ MonoMList*
 mono_mlist_alloc (MonoObject *data)
 {
        MonoError error;
+       MonoMList *result = mono_mlist_alloc_checked (data, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_mlist_alloc_checked:
+ * @data: object to use as data
+ * @error: set on error
+ *
+ * Allocates a new managed list node with @data as the contents.  A
+ * managed list node also represents a singly-linked list.  Managed
+ * lists are garbage collected, so there is no free routine and the
+ * user is required to keep references to the managed list to prevent
+ * it from being garbage collected. On failure returns NULL and sets
+ * @error.
+ */
+MonoMList*
+mono_mlist_alloc_checked (MonoObject *data, MonoError *error)
+{
+       mono_error_init (error);
        MonoMList* res;
        if (!monolist_item_vtable) {
                MonoClass *klass = mono_class_load_from_name (mono_defaults.corlib, "System", "MonoListItem");
                monolist_item_vtable = mono_class_vtable (mono_get_root_domain (), klass);
                g_assert (monolist_item_vtable);
        }
-       res = (MonoMList*)mono_object_new_fast_checked (monolist_item_vtable, &error);
-       mono_error_raise_exception (&error);
+       res = (MonoMList*)mono_object_new_fast_checked (monolist_item_vtable, error);
+       return_val_if_nok (error, NULL);
        MONO_OBJECT_SETREF (res, data, data);
        return res;
 }
@@ -152,7 +178,29 @@ mono_mlist_last (MonoMList* list)
 MonoMList*
 mono_mlist_prepend (MonoMList* list, MonoObject *data)
 {
-       MonoMList* res = mono_mlist_alloc (data);
+       MonoError error;
+       MonoMList *result = mono_mlist_prepend_checked (list, data, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_mlist_prepend_checked:
+ * @list: the managed list
+ * @data: the object to add to the list
+ * @error: set on error
+ *
+ * Allocate a new list node with @data as content and prepend it to
+ * the list @list. @list can be NULL. On failure returns NULL and sets
+ * @error.
+ */
+MonoMList*
+mono_mlist_prepend_checked (MonoMList* list, MonoObject *data, MonoError *error)
+{
+       mono_error_init (error);
+       MonoMList* res = mono_mlist_alloc_checked (data, error);
+       return_val_if_nok (error, NULL);
+
        if (list)
                MONO_OBJECT_SETREF (res, next, list);
        return res;
@@ -170,7 +218,30 @@ mono_mlist_prepend (MonoMList* list, MonoObject *data)
 MonoMList*
 mono_mlist_append (MonoMList* list, MonoObject *data)
 {
-       MonoMList* res = mono_mlist_alloc (data);
+       MonoError error;
+       MonoMList *result = mono_mlist_append_checked (list, data, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_mlist_append_checked:
+ * @list: the managed list
+ * @data: the object to add to the list
+ * @error: set on error
+ *
+ * Allocate a new list node with @data as content and append it
+ * to the list @list. @list can be NULL.
+ * Since managed lists are singly-linked, this operation takes O(n) time.
+ * On failure returns NULL and sets @error.
+ */
+MonoMList*
+mono_mlist_append_checked (MonoMList* list, MonoObject *data, MonoError *error)
+{
+       mono_error_init (error);
+       MonoMList* res = mono_mlist_alloc_checked (data, error);
+       return_val_if_nok (error, NULL);
+
        if (list) {
                MonoMList* last = mono_mlist_last (list);
                MONO_OBJECT_SETREF (last, next, res);
index 199496a42eeee2dfa64e709910f73c9e7be8804e..c625ecacc84aa1cece647e2084760c8cee2c08f7 100644 (file)
@@ -8,6 +8,7 @@
 #include <mono/metadata/object.h>
 
 typedef struct _MonoMList MonoMList;
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoMList*  mono_mlist_alloc       (MonoObject *data);
 MONO_API MonoObject* mono_mlist_get_data    (MonoMList* list);
 MONO_API void        mono_mlist_set_data    (MonoMList* list, MonoObject *data);
@@ -15,8 +16,14 @@ MONO_API MonoMList*  mono_mlist_set_next    (MonoMList* list, MonoMList *next);
 MONO_API int         mono_mlist_length      (MonoMList* list);
 MONO_API MonoMList*  mono_mlist_next        (MonoMList* list);
 MONO_API MonoMList*  mono_mlist_last        (MonoMList* list);
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoMList*  mono_mlist_prepend     (MonoMList* list, MonoObject *data);
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoMList*  mono_mlist_append      (MonoMList* list, MonoObject *data);
+
+MonoMList*  mono_mlist_prepend_checked      (MonoMList* list, MonoObject *data, MonoError *error);
+MonoMList*  mono_mlist_append_checked       (MonoMList* list, MonoObject *data, MonoError *error);
+
 MONO_API MonoMList*  mono_mlist_remove_item (MonoMList* list, MonoMList *item);
 
 #endif /* __MONO_METADATA_MONO_MLIST_H__ */
index fb205e80eaff2781966cdb448262ac85e9bac19f..dbd443d7328d4a77a92ecfb7fa22120516686886 100644 (file)
@@ -802,16 +802,14 @@ fill_sample (MonoCounterSample *sample)
 }
 
 static int
-id_from_string (MonoString *instance, gboolean is_process)
+id_from_string (const gchar *id_str, gboolean is_process)
 {
        int id = -1;
-       if (mono_string_length (instance)) {
-               char *id_str = mono_string_to_utf8 (instance);
+       if (strcmp("", id_str) != 0) {
                char *end;
                id = strtol (id_str, &end, 0);
                if (end == id_str && !is_process)
                        id = -1;
-               g_free (id_str);
        }
        return id;
 }
@@ -849,7 +847,7 @@ get_cpu_counter (ImplVtable *vtable, MonoBoolean only_value, MonoCounterSample *
 }
 
 static void*
-cpu_get_impl (MonoString* counter, MonoString* instance, int *type, MonoBoolean *custom)
+cpu_get_impl (MonoString* counter, const gchar* instance, int *type, MonoBoolean *custom)
 {
        int id = id_from_string (instance, FALSE) << 5;
        const CounterDesc *cdesc;
@@ -910,7 +908,7 @@ network_cleanup (ImplVtable *vtable)
 }
 
 static void*
-network_get_impl (MonoString* counter, MonoString* instance, int *type, MonoBoolean *custom)
+network_get_impl (MonoString* counter, const gchar* instance, int *type, MonoBoolean *custom)
 {
        const CounterDesc *cdesc;
        NetworkVtableArg *narg;
@@ -919,7 +917,7 @@ network_get_impl (MonoString* counter, MonoString* instance, int *type, MonoBool
 
        *custom = FALSE;
        if ((cdesc = get_counter_in_category (&predef_categories [CATEGORY_NETWORK], counter))) {
-               instance_name = mono_string_to_utf8 (instance);
+               instance_name = g_strdup (instance);
                narg = g_new0 (NetworkVtableArg, 1);
                narg->id = cdesc->id;
                narg->name = instance_name;
@@ -971,7 +969,7 @@ get_process_counter (ImplVtable *vtable, MonoBoolean only_value, MonoCounterSamp
 }
 
 static void*
-process_get_impl (MonoString* counter, MonoString* instance, int *type, MonoBoolean *custom)
+process_get_impl (MonoString* counter, const gchar* instance, int *type, MonoBoolean *custom)
 {
        int id = id_from_string (instance, TRUE) << 5;
        const CounterDesc *cdesc;
@@ -1009,7 +1007,7 @@ mono_mem_counter (ImplVtable *vtable, MonoBoolean only_value, MonoCounterSample
 }
 
 static void*
-mono_mem_get_impl (MonoString* counter, MonoString* instance, int *type, MonoBoolean *custom)
+mono_mem_get_impl (MonoString* counter, const gchar* instance, int *type, MonoBoolean *custom)
 {
        const CounterDesc *cdesc;
        *custom = FALSE;
@@ -1041,15 +1039,13 @@ predef_readonly_counter (ImplVtable *vtable, MonoBoolean only_value, MonoCounter
 }
 
 static ImplVtable*
-predef_vtable (void *arg, MonoString *instance)
+predef_vtable (void *arg, const gchar *pids)
 {
        MonoSharedArea *area;
        PredefVtable *vtable;
-       char *pids = mono_string_to_utf8 (instance);
        int pid;
 
        pid = atoi (pids);
-       g_free (pids);
        area = load_sarea_for_pid (pid);
        if (!area)
                return NULL;
@@ -1194,13 +1190,13 @@ predef_writable_update (ImplVtable *vtable, MonoBoolean do_incr, gint64 value)
 }
 
 static void*
-predef_writable_get_impl (int cat, MonoString* counter, MonoString* instance, int *type, MonoBoolean *custom)
+predef_writable_get_impl (int cat, MonoString* counter, const gchar *instance, int *type, MonoBoolean *custom)
 {
        const CounterDesc *cdesc;
        *custom = TRUE;
        if ((cdesc = get_counter_in_category (&predef_categories [cat], counter))) {
                *type = cdesc->type;
-               if (instance == NULL || mono_string_compare_ascii (instance, "") == 0)
+               if (instance == NULL || strcmp (instance, "") == 0)
                        return create_vtable (GINT_TO_POINTER ((cdesc->id << 16) | cat), predef_writable_counter, predef_writable_update);
                else
                        return predef_vtable (GINT_TO_POINTER ((cdesc->id << 16) | cat), instance);
@@ -1298,17 +1294,19 @@ custom_get_value_address (SharedCounter *scounter, SharedInstance* sinst)
 }
 
 static void*
-custom_get_impl (SharedCategory *cat, MonoString* counter, MonoString* instance, int *type)
+custom_get_impl (SharedCategory *cat, MonoString *counter, MonoString* instance, int *type, MonoError *error)
 {
        SharedCounter *scounter;
        SharedInstance* inst;
        char *name;
 
+       mono_error_init (error);
        scounter = find_custom_counter (cat, counter);
        if (!scounter)
                return NULL;
+       name = mono_string_to_utf8_checked (counter, error);
+       return_val_if_nok (error, NULL);
        *type = simple_type_to_type [scounter->type];
-       name = mono_string_to_utf8 (counter);
        inst = custom_get_instance (cat, scounter, name);
        g_free (name);
        if (!inst)
@@ -1331,7 +1329,9 @@ void*
 mono_perfcounter_get_impl (MonoString* category, MonoString* counter, MonoString* instance,
                MonoString* machine, int *type, MonoBoolean *custom)
 {
+       MonoError error;
        const CategoryDesc *cdesc;
+       void *result = NULL;
        /* no support for counters on other machines */
        if (mono_string_compare_ascii (machine, "."))
                return NULL;
@@ -1341,17 +1341,27 @@ mono_perfcounter_get_impl (MonoString* category, MonoString* counter, MonoString
                if (!scat)
                        return NULL;
                *custom = TRUE;
-               return custom_get_impl (scat, counter, instance, type);
+               result = custom_get_impl (scat, counter, instance, type, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
+               return result;
        }
+       gchar *c_instance = mono_string_to_utf8_checked (instance, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        switch (cdesc->id) {
        case CATEGORY_CPU:
-               return cpu_get_impl (counter, instance, type, custom);
+               result = cpu_get_impl (counter, c_instance, type, custom);
+               break;
        case CATEGORY_PROC:
-               return process_get_impl (counter, instance, type, custom);
+               result = process_get_impl (counter, c_instance, type, custom);
+               break;
        case CATEGORY_MONO_MEM:
-               return mono_mem_get_impl (counter, instance, type, custom);
+               result = mono_mem_get_impl (counter, c_instance, type, custom);
+               break;
        case CATEGORY_NETWORK:
-               return network_get_impl (counter, instance, type, custom);
+               result = network_get_impl (counter, c_instance, type, custom);
+               break;
        case CATEGORY_JIT:
        case CATEGORY_EXC:
        case CATEGORY_GC:
@@ -1362,9 +1372,11 @@ mono_perfcounter_get_impl (MonoString* category, MonoString* counter, MonoString
        case CATEGORY_SECURITY:
        case CATEGORY_ASPNET:
        case CATEGORY_THREADPOOL:
-               return predef_writable_get_impl (cdesc->id, counter, instance, type, custom);
+               result = predef_writable_get_impl (cdesc->id, counter, c_instance, type, custom);
+               break;
        }
-       return NULL;
+       g_free (c_instance);
+       return result;
 }
 
 MonoBoolean
@@ -1490,7 +1502,6 @@ mono_perfcounter_create (MonoString *category, MonoString *help, int type, MonoA
        SharedCategory *cat;
 
        /* FIXME: ensure there isn't a category created already */
-       mono_error_init (&error);
        name = mono_string_to_utf8_checked (category, &error);
        if (!mono_error_ok (&error))
                goto failure;
@@ -1563,6 +1574,7 @@ failure:
 int
 mono_perfcounter_instance_exists (MonoString *instance, MonoString *category, MonoString *machine)
 {
+       MonoError error;
        const CategoryDesc *cdesc;
        SharedInstance *sinst;
        char *name;
@@ -1576,7 +1588,9 @@ mono_perfcounter_instance_exists (MonoString *instance, MonoString *category, Mo
                scat = find_custom_category (category);
                if (!scat)
                        return FALSE;
-               name = mono_string_to_utf8 (instance);
+               name = mono_string_to_utf8_checked (instance, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return FALSE;
                sinst = find_custom_instance (scat, name);
                g_free (name);
                if (sinst)
index 4b5ca588056df60fcb60404b58fee9d8bd18fd79..d651b0e5b08387b9b4829e0ce74b612e1fc3cc54 100644 (file)
@@ -21,6 +21,7 @@
 
 extern MonoBoolean ves_icall_System_Net_NetworkInformation_MacOsIPInterfaceProperties_ParseRouteInfo_internal(MonoString *iface, MonoArray **gw_addr_list)
 {
+       MonoError error;
        size_t needed;
        in_addr_t in;
        int mib[6];
@@ -31,7 +32,10 @@ extern MonoBoolean ves_icall_System_Net_NetworkInformation_MacOsIPInterfacePrope
 
        MonoDomain *domain = mono_domain_get ();
 
-       ifacename = mono_string_to_utf8(iface);
+       ifacename = mono_string_to_utf8_checked(iface, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
+
        if ((ifindex = if_nametoindex(ifacename)) == 0)
                return FALSE;
        g_free(ifacename);
index 7f904f3dec7b08970d31c3b3f6161c8489aed3b7..f987e6c34837248b7368e0e19dda783615a0a3bd 100644 (file)
@@ -321,7 +321,7 @@ mono_gc_get_managed_array_allocator (MonoClass *klass)
 }
 
 MonoMethod*
-mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath)
+mono_gc_get_managed_allocator_by_type (int atype, ManagedAllocatorVariant variant)
 {
        return NULL;
 }
index e6fca9fba94f2d7e2762b7aae438b38705c00b62..a6e5ab526995458a00bcb978b4ec7f08543b4431 100644 (file)
@@ -7,7 +7,6 @@
 #include <mono/metadata/mempool.h>
 #include <mono/metadata/class-internals.h>
 #include <mono/metadata/threads-types.h>
-#include <mono/metadata/handle.h>
 #include <mono/io-layer/io-layer.h>
 #include "mono/utils/mono-compiler.h"
 #include "mono/utils/mono-error.h"
@@ -263,6 +262,7 @@ struct _MonoReflectionType {
        MonoType  *type;
 };
 
+/* This corresponds to System.RuntimeType */
 typedef struct {
        MonoReflectionType type;
        MonoObject *type_info;
@@ -391,6 +391,7 @@ struct _MonoThread {
        struct _MonoInternalThread *internal_thread;
        MonoObject *start_obj;
        MonoException *pending_exception;
+       gint32 priority;
 };
 
 typedef struct {
@@ -594,7 +595,7 @@ MONO_COLD void mono_set_pending_exception (MonoException *exc);
 
 MonoAsyncResult *
 mono_async_result_new      (MonoDomain *domain, HANDLE handle, 
-                            MonoObject *state, gpointer data, MonoObject *object_data);
+                            MonoObject *state, gpointer data, MonoObject *object_data, MonoError *error);
 
 MonoObject *
 ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke (MonoAsyncResult *ares);
@@ -605,26 +606,26 @@ mono_wait_handle_new          (MonoDomain *domain, HANDLE handle, MonoError *error);
 HANDLE
 mono_wait_handle_get_handle (MonoWaitHandle *handle);
 
-void
+gboolean
 mono_message_init          (MonoDomain *domain, MonoMethodMessage *this_obj, 
-                            MonoReflectionMethod *method, MonoArray *out_args);
+                            MonoReflectionMethod *method, MonoArray *out_args, MonoError *error);
 
 MonoObject *
 mono_message_invoke        (MonoObject *target, MonoMethodMessage *msg, 
-                            MonoObject **exc, MonoArray **out_args);
+                            MonoObject **exc, MonoArray **out_args, MonoError *error);
 
 MonoMethodMessage *
 mono_method_call_message_new (MonoMethod *method, gpointer *params, MonoMethod *invoke, 
-                             MonoDelegate **cb, MonoObject **state);
+                             MonoDelegate **cb, MonoObject **state, MonoError *error);
 
 void
 mono_method_return_message_restore (MonoMethod *method, gpointer *params, MonoArray *out_args, MonoError *error);
 
-void
-mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoMethod *method);
+gboolean
+mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoMethod *method, MonoError *error);
 
-void
-mono_delegate_ctor         (MonoObject *this_obj, MonoObject *target, gpointer addr);
+gboolean
+mono_delegate_ctor         (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoError *error);
 
 void*
 mono_class_get_allocation_ftn (MonoVTable *vtable, gboolean for_box, gboolean *pass_size_in_words);
@@ -1403,7 +1404,7 @@ gboolean
 mono_image_build_metadata (MonoReflectionModuleBuilder *module, MonoError *error);
 
 int
-mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const char *blob, void *value);
+mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const char *blob, void *value, MonoError *error);
 
 void
 mono_release_type_locks (MonoInternalThread *thread);
@@ -1447,17 +1448,14 @@ MonoObject *
 mono_remoting_invoke (MonoObject *real_proxy, MonoMethodMessage *msg, MonoObject **exc, MonoArray **out_args, MonoError *error);
 
 gpointer
-mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRealProxy *real_proxy);
+mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRealProxy *real_proxy, MonoError *error);
 
-void
-mono_upgrade_remote_class (MonoDomain *domain, MonoObject *tproxy, MonoClass *klass);
+gboolean
+mono_upgrade_remote_class (MonoDomain *domain, MonoObject *tproxy, MonoClass *klass, MonoError *error);
 
 void*
 mono_load_remote_field_checked (MonoObject *this_obj, MonoClass *klass, MonoClassField *field, void **res, MonoError *error);
 
-MonoObject *
-mono_load_remote_field_new_icall (MonoObject *this_obj, MonoClass *klass, MonoClassField *field);
-
 MonoObject *
 mono_load_remote_field_new_checked (MonoObject *this_obj, MonoClass *klass, MonoClassField *field, MonoError *error);
 
@@ -1604,7 +1602,10 @@ MonoObject *
 mono_object_new_alloc_specific_checked (MonoVTable *vtable, MonoError *error);
 
 void
-mono_field_static_get_value_for_thread (MonoInternalThread *thread, MonoVTable *vt, MonoClassField *field, void *value);
+mono_field_static_get_value_checked (MonoVTable *vt, MonoClassField *field, void *value, MonoError *error);
+
+void
+mono_field_static_get_value_for_thread (MonoInternalThread *thread, MonoVTable *vt, MonoClassField *field, void *value, MonoError *error);
 
 /* exported, used by the debugger */
 MONO_API void *
@@ -1619,6 +1620,12 @@ mono_property_set_value_checked (MonoProperty *prop, void *obj, void **params, M
 MonoObject*
 mono_property_get_value_checked (MonoProperty *prop, void *obj, void **params, MonoError *error);
 
+MonoString*
+mono_object_to_string_checked (MonoObject *obj, MonoError *error);
+
+MonoString*
+mono_object_try_to_string (MonoObject *obj, MonoObject **exc, MonoError *error);
+
 char *
 mono_string_to_utf8_ignore (MonoString *s);
 
@@ -1679,6 +1686,9 @@ mono_object_isinst_mbyref_checked   (MonoObject *obj, MonoClass *klass, MonoErro
 MonoString *
 mono_string_new_size_checked (MonoDomain *domain, gint32 len, MonoError *error);
 
+MonoString*
+mono_ldstr_checked (MonoDomain *domain, MonoImage *image, uint32_t str_index, MonoError *error);
+
 MonoString*
 mono_string_new_len_checked (MonoDomain *domain, const char *text, guint length, MonoError *error);
 
@@ -1688,6 +1698,15 @@ mono_string_new_checked (MonoDomain *domain, const char *text, MonoError *merror
 MonoString *
 mono_string_new_utf16_checked (MonoDomain *domain, const guint16 *text, gint32 len, MonoError *error);
 
+MonoString *
+mono_string_from_utf16_checked (mono_unichar2 *data, MonoError *error);
+
+MonoString *
+mono_string_from_utf32_checked (mono_unichar4 *data, MonoError *error);
+
+char*
+mono_ldstr_utf8 (MonoImage *image, guint32 idx, MonoError *error);
+
 gboolean
 mono_runtime_object_init_checked (MonoObject *this_obj, MonoError *error);
 
@@ -1697,10 +1716,43 @@ mono_runtime_try_invoke (MonoMethod *method, void *obj, void **params, MonoObjec
 MonoObject*
 mono_runtime_invoke_checked (MonoMethod *method, void *obj, void **params, MonoError *error);
 
+MonoObject*
+mono_runtime_try_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
+                              MonoObject **exc, MonoError *error);
+
+MonoObject*
+mono_runtime_invoke_array_checked (MonoMethod *method, void *obj, MonoArray *params,
+                                  MonoError *error);
+
+void* 
+mono_compile_method_checked (MonoMethod *method, MonoError *error);
+
+MonoObject*
+mono_runtime_delegate_try_invoke (MonoObject *delegate, void **params,
+                                 MonoObject **exc, MonoError *error);
+
+MonoObject*
+mono_runtime_delegate_invoke_checked (MonoObject *delegate, void **params,
+                                     MonoError *error);
 
 MonoArray*
 mono_runtime_get_main_args_checked (MonoError *error);
 
+int
+mono_runtime_run_main_checked (MonoMethod *method, int argc, char* argv[],
+                              MonoError *error);
+
+int
+mono_runtime_try_run_main (MonoMethod *method, int argc, char* argv[],
+                          MonoObject **exc);
+
+int
+mono_runtime_exec_main_checked (MonoMethod *method, MonoArray *args, MonoError *error);
+
+int
+mono_runtime_try_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc);
+
+
 #endif /* __MONO_OBJECT_INTERNALS_H__ */
 
 
index c032bc0ff585868f3c67cfb9e3512dea1728b2ad..34d9ffc1df1dcc9f41f066323529c6666403981b 100644 (file)
@@ -129,10 +129,13 @@ DECL_OFFSET(MonoTypedRef, value)
 DECL_OFFSET(MonoThreadsSync, status)
 DECL_OFFSET(MonoThreadsSync, nest)
 
-#if defined (HAVE_SGEN_GC) && !defined (HAVE_KW_THREAD)
+#ifdef HAVE_SGEN_GC
+DECL_OFFSET(SgenClientThreadInfo, in_critical_region)
+#ifndef HAVE_KW_THREAD
 DECL_OFFSET(SgenThreadInfo, tlab_next_addr)
 DECL_OFFSET(SgenThreadInfo, tlab_temp_end)
 #endif
+#endif
 
 #endif //DISABLE METADATA OFFSETS
 
index cc73d75896fe1a4d77b172366922ee2f01ee47e3..5abeed72821c95d91b536b504d0dab39dad94c8f 100644 (file)
 #include <mono/utils/mono-memory-model.h>
 #include <mono/utils/checked-build.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include "cominterop.h"
 
 static void
-get_default_field_value (MonoDomain* domain, MonoClassField *field, void *value);
+get_default_field_value (MonoDomain* domain, MonoClassField *field, void *value, MonoError *error);
 
 static MonoString*
 mono_ldstr_metadata_sig (MonoDomain *domain, const char* sig, MonoError *error);
@@ -457,6 +458,7 @@ mono_runtime_class_init_full (MonoVTable *vtable, MonoError *error)
                        MonoException *exc_to_store = mono_error_convert_to_exception (error);
                        /* What we really want to do here is clone the error object and store one copy in the
                         * domain's exception hash and use the other one to error out here. */
+                       mono_error_init (error);
                        mono_error_set_exception_instance (error, exc_to_store);
                        /*
                         * Store the exception object so it could be thrown on subsequent
@@ -541,7 +543,7 @@ mono_release_type_locks (MonoInternalThread *thread)
 #ifndef DISABLE_REMOTING
 
 static gpointer
-default_remoting_trampoline (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target)
+default_remoting_trampoline (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target, MonoError *error)
 {
        g_error ("remoting not installed");
        return NULL;
@@ -612,18 +614,34 @@ mono_set_always_build_imt_thunks (gboolean value)
 gpointer 
 mono_compile_method (MonoMethod *method)
 {
-       gpointer res;
        MonoError error;
+       gpointer result = mono_compile_method_checked (method, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_compile_method:
+ * @method: The method to compile.
+ * @error: set on error.
+ *
+ * This JIT-compiles the method, and returns the pointer to the native code
+ * produced.  On failure returns NULL and sets @error.
+ */
+gpointer
+mono_compile_method_checked (MonoMethod *method, MonoError *error)
+{
+       gpointer res;
 
        MONO_REQ_GC_NEUTRAL_MODE
 
+       mono_error_init (error);
+
        if (!callbacks.compile_method) {
                g_error ("compile method called on uninitialized runtime");
                return NULL;
        }
-       res = callbacks.compile_method (method, &error);
-       if (!mono_error_ok (&error))
-               mono_error_raise_exception (&error);
+       res = callbacks.compile_method (method, error);
        return res;
 }
 
@@ -1887,7 +1905,7 @@ mono_class_vtable_full (MonoDomain *domain, MonoClass *klass, MonoError *error)
        g_assert (klass);
 
        if (mono_class_has_failure (klass)) {
-               mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+               mono_error_set_for_class_failure (error, klass);
                return NULL;
        }
 
@@ -1974,7 +1992,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
                if (!mono_class_init (klass) || mono_class_has_failure (klass)) {
                        mono_domain_unlock (domain);
                        mono_loader_unlock ();
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+                       mono_error_set_for_class_failure (error, klass);
                        return NULL;
                }
        }
@@ -1995,7 +2013,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
                                mono_class_set_failure (klass, MONO_EXCEPTION_TYPE_LOAD, NULL);
                        mono_domain_unlock (domain);
                        mono_loader_unlock ();
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+                       mono_error_set_for_class_failure (error, klass);
                        return NULL;
                }
        }
@@ -2016,7 +2034,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
        if (mono_class_has_failure (klass)) {
                mono_domain_unlock (domain);
                mono_loader_unlock ();
-               mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+               mono_error_set_for_class_failure (error, klass);
                return NULL;
        }
 
@@ -2199,7 +2217,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
         * re-acquire them and check if another thread has created the vtable in the meantime.
         */
        /* Special case System.MonoType to avoid infinite recursion */
-       if (klass != mono_defaults.monotype_class) {
+       if (klass != mono_defaults.runtimetype_class) {
                vt->type = mono_type_get_object_checked (domain, &klass->byval_arg, error);
                if (!is_ok (error)) {
                        mono_domain_unlock (domain);
@@ -2207,7 +2225,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
                        return NULL;
                }
 
-               if (mono_object_get_class ((MonoObject *)vt->type) != mono_defaults.monotype_class)
+               if (mono_object_get_class ((MonoObject *)vt->type) != mono_defaults.runtimetype_class)
                        /* This is unregistered in
                           unregister_vtable_reflection_type() in
                           domain.c. */
@@ -2258,7 +2276,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
                klass->runtime_info = runtime_info;
        }
 
-       if (klass == mono_defaults.monotype_class) {
+       if (klass == mono_defaults.runtimetype_class) {
                vt->type = mono_type_get_object_checked (domain, &klass->byval_arg, error);
                if (!is_ok (error)) {
                        mono_domain_unlock (domain);
@@ -2266,7 +2284,7 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
                        return NULL;
                }
 
-               if (mono_object_get_class ((MonoObject *)vt->type) != mono_defaults.monotype_class)
+               if (mono_object_get_class ((MonoObject *)vt->type) != mono_defaults.runtimetype_class)
                        /* This is unregistered in
                           unregister_vtable_reflection_type() in
                           domain.c. */
@@ -2289,25 +2307,27 @@ mono_class_create_runtime_vtable (MonoDomain *domain, MonoClass *klass, MonoErro
  * mono_class_proxy_vtable:
  * @domain: the application domain
  * @remove_class: the remote class
+ * @error: set on error
  *
  * Creates a vtable for transparent proxies. It is basically
  * a copy of the real vtable of the class wrapped in @remote_class,
  * but all function pointers invoke the remoting functions, and
  * vtable->klass points to the transparent proxy class, and not to @class.
+ *
+ * On failure returns NULL and sets @error
  */
 static MonoVTable *
-mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRemotingTarget target_type)
+mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRemotingTarget target_type, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
        MonoVTable *vt, *pvt;
        int i, j, vtsize, max_interface_id, extra_interface_vtsize = 0;
        MonoClass *k;
        GSList *extra_interfaces = NULL;
        MonoClass *klass = remote_class->proxy_class;
        gpointer *interface_offsets;
-       uint8_t *bitmap;
+       uint8_t *bitmap = NULL;
        int bsize;
        size_t imt_table_bytes;
        
@@ -2315,6 +2335,8 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
        int bcsize;
 #endif
 
+       mono_error_init (error);
+
        vt = mono_class_vtable (domain, klass);
        g_assert (vt); /*FIXME property handle failure*/
        max_interface_id = vt->max_interface_id;
@@ -2335,8 +2357,9 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
                
                method_count = mono_class_num_methods (iclass);
        
-               ifaces = mono_class_get_implemented_interfaces (iclass, &error);
-               g_assert (mono_error_ok (&error)); /*FIXME do proper error handling*/
+               ifaces = mono_class_get_implemented_interfaces (iclass, error);
+               if (!is_ok (error))
+                       goto failure;
                if (ifaces) {
                        for (i = 0; i < ifaces->len; ++i) {
                                MonoClass *ic = (MonoClass *)g_ptr_array_index (ifaces, i);
@@ -2349,6 +2372,7 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
                                method_count += mono_class_num_methods (ic);
                        }
                        g_ptr_array_free (ifaces, TRUE);
+                       ifaces = NULL;
                }
 
                extra_interface_vtsize += method_count * sizeof (gpointer);
@@ -2378,9 +2402,11 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
        for (i = 0; i < klass->vtable_size; ++i) {
                MonoMethod *cm;
                    
-               if ((cm = klass->vtable [i]))
-                       pvt->vtable [i] = arch_create_remoting_trampoline (domain, cm, target_type);
-               else
+               if ((cm = klass->vtable [i])) {
+                       pvt->vtable [i] = arch_create_remoting_trampoline (domain, cm, target_type, error);
+                       if (!is_ok (error))
+                               goto failure;
+               } else
                        pvt->vtable [i] = NULL;
        }
 
@@ -2390,8 +2416,11 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
                        MonoMethod* m;
                        gpointer iter = NULL;
                        while ((m = mono_class_get_methods (k, &iter)))
-                               if (!pvt->vtable [m->slot])
-                                       pvt->vtable [m->slot] = arch_create_remoting_trampoline (domain, m, target_type);
+                               if (!pvt->vtable [m->slot]) {
+                                       pvt->vtable [m->slot] = arch_create_remoting_trampoline (domain, m, target_type, error);
+                                       if (!is_ok (error))
+                                               goto failure;
+                               }
                }
        }
 
@@ -2423,8 +2452,11 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
 
                        iter = NULL;
                        j = 0;
-                       while ((cm = mono_class_get_methods (interf, &iter)))
-                               pvt->vtable [slot + j++] = arch_create_remoting_trampoline (domain, cm, target_type);
+                       while ((cm = mono_class_get_methods (interf, &iter))) {
+                               pvt->vtable [slot + j++] = arch_create_remoting_trampoline (domain, cm, target_type, error);
+                               if (!is_ok (error))
+                                       goto failure;
+                       }
                        
                        slot += mono_class_num_methods (interf);
                }
@@ -2445,6 +2477,13 @@ mono_class_proxy_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mono
        pvt->interface_bitmap = bitmap;
 #endif
        return pvt;
+failure:
+       if (extra_interfaces)
+               g_slist_free (extra_interfaces);
+#ifdef COMPRESSED_INTERFACE_BITMAP
+       g_free (bitmap);
+#endif
+       return NULL;
 }
 
 #endif /* DISABLE_REMOTING */
@@ -2710,17 +2749,20 @@ clone_remote_class (MonoDomain *domain, MonoRemoteClass* remote_class, MonoClass
 }
 
 gpointer
-mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRealProxy *rp)
+mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, MonoRealProxy *rp, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
+       mono_error_init (error);
+
        mono_loader_lock (); /*FIXME mono_class_from_mono_type and mono_class_proxy_vtable take it*/
        mono_domain_lock (domain);
        if (rp->target_domain_id != -1) {
                if (remote_class->xdomain_vtable == NULL)
-                       remote_class->xdomain_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_APPDOMAIN);
+                       remote_class->xdomain_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_APPDOMAIN, error);
                mono_domain_unlock (domain);
                mono_loader_unlock ();
+               return_val_if_nok (error, NULL);
                return remote_class->xdomain_vtable;
        }
        if (remote_class->default_vtable == NULL) {
@@ -2730,10 +2772,16 @@ mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mon
                klass = mono_class_from_mono_type (type);
 #ifndef DISABLE_COM
                if ((mono_class_is_com_object (klass) || (mono_class_get_com_object_class () && klass == mono_class_get_com_object_class ())) && !mono_vtable_is_remote (mono_class_vtable (mono_domain_get (), klass)))
-                       remote_class->default_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_COMINTEROP);
+                       remote_class->default_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_COMINTEROP, error);
                else
 #endif
-                       remote_class->default_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_UNKNOWN);
+                       remote_class->default_vtable = mono_class_proxy_vtable (domain, remote_class, MONO_REMOTING_TARGET_UNKNOWN, error);
+               /* N.B. both branches of the if modify error */
+               if (!is_ok (error)) {
+                       mono_domain_unlock (domain);
+                       mono_loader_unlock ();
+                       return NULL;
+               }
        }
        
        mono_domain_unlock (domain);
@@ -2746,13 +2794,14 @@ mono_remote_class_vtable (MonoDomain *domain, MonoRemoteClass *remote_class, Mon
  * @domain: the application domain
  * @tproxy: the proxy whose remote class has to be upgraded.
  * @klass: class to which the remote class can be casted.
+ * @error: set on error
  *
  * Updates the vtable of the remote class by adding the necessary method slots
  * and interface offsets so it can be safely casted to klass. klass can be a
- * class or an interface.
+ * class or an interface.  On success returns TRUE, on failure returns FALSE and sets @error.
  */
-void
-mono_upgrade_remote_class (MonoDomain *domain, MonoObject *proxy_object, MonoClass *klass)
+gboolean
+mono_upgrade_remote_class (MonoDomain *domain, MonoObject *proxy_object, MonoClass *klass, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
@@ -2760,6 +2809,7 @@ mono_upgrade_remote_class (MonoDomain *domain, MonoObject *proxy_object, MonoCla
        MonoRemoteClass *remote_class;
        gboolean redo_vtable;
 
+       mono_error_init (error);
        mono_loader_lock (); /*FIXME mono_remote_class_vtable requires it.*/
        mono_domain_lock (domain);
 
@@ -2779,11 +2829,15 @@ mono_upgrade_remote_class (MonoDomain *domain, MonoObject *proxy_object, MonoCla
 
        if (redo_vtable) {
                tproxy->remote_class = clone_remote_class (domain, remote_class, klass);
-               proxy_object->vtable = (MonoVTable *)mono_remote_class_vtable (domain, tproxy->remote_class, tproxy->rp);
+               proxy_object->vtable = (MonoVTable *)mono_remote_class_vtable (domain, tproxy->remote_class, tproxy->rp, error);
+               if (!is_ok (error))
+                       goto leave;
        }
        
+leave:
        mono_domain_unlock (domain);
        mono_loader_unlock ();
+       return is_ok (error);
 }
 #endif /* DISABLE_REMOTING */
 
@@ -2892,12 +2946,8 @@ do_runtime_invoke (MonoMethod *method, void *obj, void **params, MonoObject **ex
        if (mono_profiler_get_events () & MONO_PROFILE_METHOD_EVENTS)
                mono_profiler_method_start_invoke (method);
 
-       MONO_PREPARE_RESET_BLOCKING;
-
        result = callbacks.runtime_invoke (method, obj, params, exc, error);
 
-       MONO_FINISH_RESET_BLOCKING;
-
        if (mono_profiler_get_events () & MONO_PROFILE_METHOD_EVENTS)
                mono_profiler_method_end_invoke (method);
 
@@ -2954,7 +3004,7 @@ mono_runtime_invoke (MonoMethod *method, void *obj, void **params, MonoObject **
                        mono_error_cleanup (&error);
        } else {
                res = mono_runtime_invoke_checked (method, obj, params, &error);
-               mono_error_raise_exception (&error);
+               mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
        }
        return res;
 }
@@ -3113,12 +3163,16 @@ mono_method_get_unmanaged_thunk (MonoMethod *method)
        MONO_REQ_GC_NEUTRAL_MODE;
        MONO_REQ_API_ENTRYPOINT;
 
+       MonoError error;
        gpointer res;
 
-       MONO_PREPARE_RESET_BLOCKING;
+       g_assert (!mono_threads_is_coop_enabled ());
+
+       MONO_ENTER_GC_UNSAFE;
        method = mono_marshal_get_thunk_invoke_wrapper (method);
-       res = mono_compile_method (method);
-       MONO_FINISH_RESET_BLOCKING;
+       res = mono_compile_method_checked (method, &error);
+       mono_error_cleanup (&error);
+       MONO_EXIT_GC_UNSAFE;
 
        return res;
 }
@@ -3460,9 +3514,11 @@ mono_field_get_value_object_checked (MonoDomain *domain, MonoClassField *field,
        
        if (is_ref) {
                if (is_literal) {
-                       get_default_field_value (domain, field, &o);
+                       get_default_field_value (domain, field, &o, error);
+                       return_val_if_nok (error, NULL);
                } else if (is_static) {
-                       mono_field_static_get_value (vtable, field, &o);
+                       mono_field_static_get_value_checked (vtable, field, &o, error);
+                       return_val_if_nok (error, NULL);
                } else {
                        mono_field_get_value (obj, field, &o);
                }
@@ -3483,9 +3539,11 @@ mono_field_get_value_object_checked (MonoDomain *domain, MonoClassField *field,
 
                v = &ptr;
                if (is_literal) {
-                       get_default_field_value (domain, field, v);
+                       get_default_field_value (domain, field, v, error);
+                       return_val_if_nok (error, NULL);
                } else if (is_static) {
-                       mono_field_static_get_value (vtable, field, v);
+                       mono_field_static_get_value_checked (vtable, field, v, error);
+                       return_val_if_nok (error, NULL);
                } else {
                        mono_field_get_value (obj, field, v);
                }
@@ -3512,9 +3570,11 @@ mono_field_get_value_object_checked (MonoDomain *domain, MonoClassField *field,
        v = ((gchar *) o) + sizeof (MonoObject);
 
        if (is_literal) {
-               get_default_field_value (domain, field, v);
+               get_default_field_value (domain, field, v, error);
+               return_val_if_nok (error, NULL);
        } else if (is_static) {
-               mono_field_static_get_value (vtable, field, v);
+               mono_field_static_get_value_checked (vtable, field, v, error);
+               return_val_if_nok (error, NULL);
        } else {
                mono_field_get_value (obj, field, v);
        }
@@ -3523,11 +3583,11 @@ mono_field_get_value_object_checked (MonoDomain *domain, MonoClassField *field,
 }
 
 int
-mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const char *blob, void *value)
+mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const char *blob, void *value, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
+       mono_error_init (error);
        int retval = 0;
        const char *p = blob;
        mono_metadata_decode_blob_size (p, &p);
@@ -3558,8 +3618,7 @@ mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const
                readr8 (p, (double*) value);
                break;
        case MONO_TYPE_STRING:
-               *(gpointer*) value = mono_ldstr_metadata_sig (domain, blob, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               *(gpointer*) value = mono_ldstr_metadata_sig (domain, blob, error);
                break;
        case MONO_TYPE_CLASS:
                *(gpointer*) value = NULL;
@@ -3572,28 +3631,32 @@ mono_get_constant_value_from_blob (MonoDomain* domain, MonoTypeEnum type, const
 }
 
 static void
-get_default_field_value (MonoDomain* domain, MonoClassField *field, void *value)
+get_default_field_value (MonoDomain* domain, MonoClassField *field, void *value, MonoError *error)
 {
        MONO_REQ_GC_NEUTRAL_MODE;
 
        MonoTypeEnum def_type;
        const char* data;
+
+       mono_error_init (error);
        
        data = mono_class_get_field_default_value (field, &def_type);
-       mono_get_constant_value_from_blob (domain, def_type, data, value);
+       mono_get_constant_value_from_blob (domain, def_type, data, value, error);
 }
 
 void
-mono_field_static_get_value_for_thread (MonoInternalThread *thread, MonoVTable *vt, MonoClassField *field, void *value)
+mono_field_static_get_value_for_thread (MonoInternalThread *thread, MonoVTable *vt, MonoClassField *field, void *value, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
        void *src;
 
+       mono_error_init (error);
+
        g_return_if_fail (field->type->attrs & FIELD_ATTRIBUTE_STATIC);
        
        if (field->type->attrs & FIELD_ATTRIBUTE_LITERAL) {
-               get_default_field_value (vt->domain, field, value);
+               get_default_field_value (vt->domain, field, value, error);
                return;
        }
 
@@ -3628,7 +3691,37 @@ mono_field_static_get_value (MonoVTable *vt, MonoClassField *field, void *value)
 {
        MONO_REQ_GC_NEUTRAL_MODE;
 
-       mono_field_static_get_value_for_thread (mono_thread_internal_current (), vt, field, value);
+       MonoError error;
+       mono_field_static_get_value_checked (vt, field, value, &error);
+       mono_error_cleanup (&error);
+}
+
+/**
+ * mono_field_static_get_value_checked:
+ * @vt: vtable to the object
+ * @field: MonoClassField describing the field to fetch information from
+ * @value: where the value is returned
+ * @error: set on error
+ *
+ * Use this routine to get the value of the static field @field value.
+ *
+ * The pointer provided by value must be of the field type, for reference
+ * types this is a MonoObject*, for value types its the actual pointer to
+ * the value type.
+ *
+ * For example:
+ *     int i;
+ *     mono_field_static_get_value_checked (vt, int_field, &i, error);
+ *     if (!is_ok (error)) { ... }
+ *
+ * On failure sets @error.
+ */
+void
+mono_field_static_get_value_checked (MonoVTable *vt, MonoClassField *field, void *value, MonoError *error)
+{
+       MONO_REQ_GC_NEUTRAL_MODE;
+
+       mono_field_static_get_value_for_thread (mono_thread_internal_current (), vt, field, value, error);
 }
 
 /**
@@ -3907,6 +4000,44 @@ mono_runtime_delegate_invoke (MonoObject *delegate, void **params, MonoObject **
        MONO_REQ_GC_UNSAFE_MODE;
 
        MonoError error;
+       if (exc) {
+               MonoObject *result = mono_runtime_delegate_try_invoke (delegate, params, exc, &error);
+               if (*exc) {
+                       mono_error_cleanup (&error);
+                       return NULL;
+               } else {
+                       if (!is_ok (&error))
+                               *exc = (MonoObject*)mono_error_convert_to_exception (&error);
+                       return result;
+               }
+       } else {
+               MonoObject *result = mono_runtime_delegate_invoke_checked (delegate, params, &error);
+               mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
+               return result;
+       }
+}
+
+/**
+ * mono_runtime_delegate_try_invoke:
+ * @delegate: pointer to a delegate object.
+ * @params: parameters for the delegate.
+ * @exc: Pointer to the exception result.
+ * @error: set on error
+ *
+ * Invokes the delegate method @delegate with the parameters provided.
+ *
+ * You can pass NULL as the exc argument if you don't want to
+ * catch exceptions, otherwise, *exc will be set to the exception
+ * thrown, if any.  On failure to execute, @error will be set.
+ * if an exception is thrown, you can't use the
+ * MonoObject* result from the function.
+ */
+MonoObject*
+mono_runtime_delegate_try_invoke (MonoObject *delegate, void **params, MonoObject **exc, MonoError *error)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+
+       mono_error_init (error);
        MonoMethod *im;
        MonoClass *klass = delegate->vtable->klass;
        MonoObject *o;
@@ -3916,19 +4047,32 @@ mono_runtime_delegate_invoke (MonoObject *delegate, void **params, MonoObject **
                g_error ("Could not lookup delegate invoke method for delegate %s", mono_type_get_full_name (klass));
 
        if (exc) {
-               o = mono_runtime_try_invoke (im, delegate, params, exc, &error);
-               if (*exc == NULL && !mono_error_ok (&error))
-                       *exc = (MonoObject*) mono_error_convert_to_exception (&error);
-               else
-                       mono_error_cleanup (&error);
+               o = mono_runtime_try_invoke (im, delegate, params, exc, error);
        } else {
-               o = mono_runtime_invoke_checked (im, delegate, params, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               o = mono_runtime_invoke_checked (im, delegate, params, error);
        }
 
        return o;
 }
 
+/**
+ * mono_runtime_delegate_invoke_checked:
+ * @delegate: pointer to a delegate object.
+ * @params: parameters for the delegate.
+ * @error: set on error
+ *
+ * Invokes the delegate method @delegate with the parameters provided.
+ *
+ * On failure @error will be set and you can't use the MonoObject*
+ * result from the function.
+ */
+MonoObject*
+mono_runtime_delegate_invoke_checked (MonoObject *delegate, void **params, MonoError *error)
+{
+       mono_error_init (error);
+       return mono_runtime_delegate_try_invoke (delegate, params, NULL, error);
+}
+
 static char **main_args = NULL;
 static int num_main_args = 0;
 
@@ -4021,22 +4165,14 @@ mono_runtime_set_main_args (int argc, char* argv[])
        return 0;
 }
 
-/**
- * mono_runtime_run_main:
- * @method: the method to start the application with (usually Main)
- * @argc: number of arguments from the command line
- * @argv: array of strings from the command line
- * @exc: excetption results
- *
- * Execute a standard Main() method (argc/argv contains the
- * executable name). This method also sets the command line argument value
- * needed by System.Environment.
- *
+/*
+ * Prepare an array of arguments in order to execute a standard Main()
+ * method (argc/argv contains the executable name). This method also
+ * sets the command line argument value needed by System.Environment.
  * 
  */
-int
-mono_runtime_run_main (MonoMethod *method, int argc, char* argv[],
-                      MonoObject **exc)
+static MonoArray*
+prepare_run_main (MonoMethod *method, int argc, char *argv[])
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
@@ -4127,9 +4263,87 @@ mono_runtime_run_main (MonoMethod *method, int argc, char* argv[],
        
        mono_assembly_set_main (method->klass->image->assembly);
 
-       return mono_runtime_exec_main (method, args, exc);
+       return args;
+}
+
+/**
+ * mono_runtime_run_main:
+ * @method: the method to start the application with (usually Main)
+ * @argc: number of arguments from the command line
+ * @argv: array of strings from the command line
+ * @exc: excetption results
+ *
+ * Execute a standard Main() method (argc/argv contains the
+ * executable name). This method also sets the command line argument value
+ * needed by System.Environment.
+ *
+ * 
+ */
+int
+mono_runtime_run_main (MonoMethod *method, int argc, char* argv[],
+                      MonoObject **exc)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+
+       MonoError error;
+       MonoArray *args = prepare_run_main (method, argc, argv);
+       int res;
+       if (exc) {
+               res = mono_runtime_try_exec_main (method, args, exc);
+       } else {
+               res = mono_runtime_exec_main_checked (method, args, &error);
+               mono_error_raise_exception (&error); /* OK to throw, external only without a better alternative */
+       }
+       return res;
+}
+
+/**
+ * mono_runtime_run_main_checked:
+ * @method: the method to start the application with (usually Main)
+ * @argc: number of arguments from the command line
+ * @argv: array of strings from the command line
+ * @error: set on error
+ *
+ * Execute a standard Main() method (argc/argv contains the
+ * executable name). This method also sets the command line argument value
+ * needed by System.Environment.  On failure sets @error.
+ *
+ * 
+ */
+int
+mono_runtime_run_main_checked (MonoMethod *method, int argc, char* argv[],
+                              MonoError *error)
+{
+       mono_error_init (error);
+       MonoArray *args = prepare_run_main (method, argc, argv);
+       return mono_runtime_exec_main_checked (method, args, error);
+}
+
+/**
+ * mono_runtime_try_run_main:
+ * @method: the method to start the application with (usually Main)
+ * @argc: number of arguments from the command line
+ * @argv: array of strings from the command line
+ * @exc: set if Main throws an exception
+ * @error: set if Main can't be executed
+ *
+ * Execute a standard Main() method (argc/argv contains the executable
+ * name). This method also sets the command line argument value needed
+ * by System.Environment.  On failure sets @error if Main can't be
+ * executed or @exc if it threw and exception.
+ *
+ * 
+ */
+int
+mono_runtime_try_run_main (MonoMethod *method, int argc, char* argv[],
+                          MonoObject **exc)
+{
+       g_assert (exc);
+       MonoArray *args = prepare_run_main (method, argc, argv);
+       return mono_runtime_try_exec_main (method, args, exc);
 }
 
+
 static MonoObject*
 serialize_object (MonoObject *obj, gboolean *failure, MonoObject **exc)
 {
@@ -4289,11 +4503,11 @@ mono_object_xdomain_representation (MonoObject *obj, MonoDomain *target_domain,
 
 /* Used in call_unhandled_exception_delegate */
 static MonoObject *
-create_unhandled_exception_eventargs (MonoObject *exc)
+create_unhandled_exception_eventargs (MonoObject *exc, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
+       mono_error_init (error);
        MonoClass *klass;
        gpointer args [2];
        MonoMethod *method = NULL;
@@ -4310,11 +4524,11 @@ create_unhandled_exception_eventargs (MonoObject *exc)
        args [0] = exc;
        args [1] = &is_terminating;
 
-       obj = mono_object_new_checked (mono_domain_get (), klass, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       obj = mono_object_new_checked (mono_domain_get (), klass, error);
+       return_val_if_nok (error, NULL);
 
-       mono_runtime_invoke_checked (method, obj, args, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       mono_runtime_invoke_checked (method, obj, args, error);
+       return_val_if_nok (error, NULL);
 
        return obj;
 }
@@ -4324,6 +4538,7 @@ static void
 call_unhandled_exception_delegate (MonoDomain *domain, MonoObject *delegate, MonoObject *exc) {
        MONO_REQ_GC_UNSAFE_MODE;
 
+       MonoError error;
        MonoObject *e = NULL;
        gpointer pa [2];
        MonoDomain *current_domain = mono_domain_get ();
@@ -4334,7 +4549,6 @@ call_unhandled_exception_delegate (MonoDomain *domain, MonoObject *delegate, Mon
        g_assert (domain == mono_object_domain (domain->domain));
 
        if (mono_object_domain (exc) != domain) {
-               MonoError error;
 
                exc = mono_object_xdomain_representation (exc, domain, &error);
                if (!exc) {
@@ -4353,14 +4567,20 @@ call_unhandled_exception_delegate (MonoDomain *domain, MonoObject *delegate, Mon
        g_assert (mono_object_domain (exc) == domain);
 
        pa [0] = domain->domain;
-       pa [1] = create_unhandled_exception_eventargs (exc);
-       mono_runtime_delegate_invoke (delegate, pa, &e);
+       pa [1] = create_unhandled_exception_eventargs (exc, &error);
+       mono_error_assert_ok (&error);
+       mono_runtime_delegate_try_invoke (delegate, pa, &e, &error);
+       if (!is_ok (&error)) {
+               if (e == NULL)
+                       e = (MonoObject*)mono_error_convert_to_exception (&error);
+               else
+                       mono_error_cleanup (&error);
+       }
 
        if (domain != current_domain)
                mono_domain_set_internal_with_options (current_domain, FALSE);
 
        if (e) {
-               MonoError error;
                gchar *msg = mono_string_to_utf8_checked (((MonoException *) e)->message, &error);
                if (!mono_error_ok (&error)) {
                        g_warning ("Exception inside UnhandledException handler with invalid message (Invalid characters)\n");
@@ -4431,10 +4651,10 @@ mono_unhandled_exception (MonoObject *exc)
        root_domain = mono_get_root_domain ();
 
        root_appdomain_delegate = mono_field_get_value_object_checked (root_domain, field, (MonoObject*) root_domain->domain, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       mono_error_assert_ok (&error);
        if (current_domain != root_domain) {
                current_appdomain_delegate = mono_field_get_value_object_checked (current_domain, field, (MonoObject*) current_domain->domain, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               mono_error_assert_ok (&error);
        }
 
        if (!current_appdomain_delegate && !root_appdomain_delegate) {
@@ -4482,28 +4702,13 @@ mono_runtime_exec_managed_code (MonoDomain *domain,
        mono_thread_manage ();
 }
 
-/*
- * Execute a standard Main() method (args doesn't contain the
- * executable name).
- */
-int
-mono_runtime_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
+static void
+prepare_thread_to_exec_main (MonoDomain *domain, MonoMethod *method)
 {
-       MONO_REQ_GC_UNSAFE_MODE;
-
-       MonoError error;
-       MonoDomain *domain;
-       gpointer pa [1];
-       int rval;
+       MonoInternalThread* thread = mono_thread_internal_current ();
        MonoCustomAttrInfo* cinfo;
        gboolean has_stathread_attribute;
-       MonoInternalThread* thread = mono_thread_internal_current ();
-
-       g_assert (args);
 
-       pa [0] = args;
-
-       domain = mono_object_domain (args);
        if (!domain->entry_assembly) {
                gchar *str;
                MonoAssembly *assembly;
@@ -4523,8 +4728,9 @@ mono_runtime_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
                }
        }
 
-       cinfo = mono_custom_attrs_from_method_checked (method, &error);
-       mono_error_cleanup (&error); /* FIXME warn here? */
+       MonoError cattr_error;
+       cinfo = mono_custom_attrs_from_method_checked (method, &cattr_error);
+       mono_error_cleanup (&cattr_error); /* FIXME warn here? */
        if (cinfo) {
                has_stathread_attribute = mono_custom_attrs_has_attr (cinfo, mono_class_get_sta_thread_attribute_class ());
                if (!cinfo->cached)
@@ -4539,39 +4745,80 @@ mono_runtime_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
        }
        mono_thread_init_apartment_state ();
 
+}
+
+static int
+do_exec_main_checked (MonoMethod *method, MonoArray *args, MonoError *error)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+
+       gpointer pa [1];
+       int rval;
+
+       mono_error_init (error);
+       g_assert (args);
+
+       pa [0] = args;
+
        /* FIXME: check signature of method */
        if (mono_method_signature (method)->ret->type == MONO_TYPE_I4) {
                MonoObject *res;
-               if (exc) {
-                       res = mono_runtime_try_invoke (method, NULL, pa, exc, &error);
-                       if (*exc == NULL && !mono_error_ok (&error))
-                               *exc = (MonoObject*) mono_error_convert_to_exception (&error);
-                       else
-                               mono_error_cleanup (&error);
-               } else {
-                       res = mono_runtime_invoke_checked (method, NULL, pa, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
-               }
-
-               if (!exc || !*exc)
+               res = mono_runtime_invoke_checked (method, NULL, pa, error);
+               if (is_ok (error))
                        rval = *(guint32 *)((char *)res + sizeof (MonoObject));
                else
                        rval = -1;
-
                mono_environment_exitcode_set (rval);
        } else {
-               if (exc) {
-                       mono_runtime_try_invoke (method, NULL, pa, exc, &error);
-                       if (*exc == NULL && !mono_error_ok (&error))
-                               *exc = (MonoObject*) mono_error_convert_to_exception (&error);
-                       else
-                               mono_error_cleanup (&error);
-               } else {
-                       mono_runtime_invoke_checked (method, NULL, pa, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+               mono_runtime_invoke_checked (method, NULL, pa, error);
+
+               if (is_ok (error))
+                       rval = 0;
+               else {
+                       rval = -1;
                }
+       }
+       return rval;
+}
 
-               if (!exc || !*exc)
+static int
+do_try_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+
+       gpointer pa [1];
+       int rval;
+
+       g_assert (args);
+       g_assert (exc);
+
+       pa [0] = args;
+
+       /* FIXME: check signature of method */
+       if (mono_method_signature (method)->ret->type == MONO_TYPE_I4) {
+               MonoError inner_error;
+               MonoObject *res;
+               res = mono_runtime_try_invoke (method, NULL, pa, exc, &inner_error);
+               if (*exc == NULL && !mono_error_ok (&inner_error))
+                       *exc = (MonoObject*) mono_error_convert_to_exception (&inner_error);
+               else
+                       mono_error_cleanup (&inner_error);
+
+               if (*exc == NULL)
+                       rval = *(guint32 *)((char *)res + sizeof (MonoObject));
+               else
+                       rval = -1;
+
+               mono_environment_exitcode_set (rval);
+       } else {
+               MonoError inner_error;
+               mono_runtime_try_invoke (method, NULL, pa, exc, &inner_error);
+               if (*exc == NULL && !mono_error_ok (&inner_error))
+                       *exc = (MonoObject*) mono_error_convert_to_exception (&inner_error);
+               else
+                       mono_error_cleanup (&inner_error);
+
+               if (*exc == NULL)
                        rval = 0;
                else {
                        /* If the return type of Main is void, only
@@ -4587,61 +4834,72 @@ mono_runtime_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
        return rval;
 }
 
-/**
- * mono_runtime_invoke_array:
- * @method: method to invoke
- * @obJ: object instance
- * @params: arguments to the method
- * @exc: exception information.
- *
- * Invokes the method represented by @method on the object @obj.
- *
- * obj is the 'this' pointer, it should be NULL for static
- * methods, a MonoObject* for object instances and a pointer to
- * the value type for value types.
+/*
+ * Execute a standard Main() method (args doesn't contain the
+ * executable name).
+ */
+int
+mono_runtime_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
+{
+       MonoError error;
+       prepare_thread_to_exec_main (mono_object_domain (args), method);
+       if (exc) {
+               int rval = do_try_exec_main (method, args, exc);
+               return rval;
+       } else {
+               int rval = do_exec_main_checked (method, args, &error);
+               mono_error_raise_exception (&error); /* OK to throw, external only with no better option */
+               return rval;
+       }
+}
+
+/*
+ * Execute a standard Main() method (args doesn't contain the
+ * executable name).
  *
- * The params array contains the arguments to the method with the
- * same convention: MonoObject* pointers for object instances and
- * pointers to the value type otherwise. The _invoke_array
- * variant takes a C# object[] as the params argument (MonoArray
- * *params): in this case the value types are boxed inside the
- * respective reference representation.
- * 
- * From unmanaged code you'll usually use the
- * mono_runtime_invoke_checked() variant.
+ * On failure sets @error
+ */
+int
+mono_runtime_exec_main_checked (MonoMethod *method, MonoArray *args, MonoError *error)
+{
+       mono_error_init (error);
+       prepare_thread_to_exec_main (mono_object_domain (args), method);
+       return do_exec_main_checked (method, args, error);
+}
+
+/*
+ * Execute a standard Main() method (args doesn't contain the
+ * executable name).
  *
- * Note that this function doesn't handle virtual methods for
- * you, it will exec the exact method you pass: we still need to
- * expose a function to lookup the derived class implementation
- * of a virtual method (there are examples of this in the code,
- * though).
- * 
- * You can pass NULL as the exc argument if you don't want to
- * catch exceptions, otherwise, *exc will be set to the exception
- * thrown, if any.  if an exception is thrown, you can't use the
- * MonoObject* result from the function.
- * 
- * If the method returns a value type, it is boxed in an object
- * reference.
+ * On failure sets @error if Main couldn't be executed, or @exc if it threw an exception.
  */
-MonoObject*
-mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
-                          MonoObject **exc)
+int
+mono_runtime_try_exec_main (MonoMethod *method, MonoArray *args, MonoObject **exc)
 {
-       MONO_REQ_GC_UNSAFE_MODE;
+       prepare_thread_to_exec_main (mono_object_domain (args), method);
+       return do_try_exec_main (method, args, exc);
+}
 
-       MonoError error;
-       MonoMethodSignature *sig = mono_method_signature (method);
-       gpointer *pa = NULL;
-       MonoObject *res;
-       int i;
-       gboolean has_byref_nullables = FALSE;
 
-       if (NULL != params) {
-               pa = (void **)alloca (sizeof (gpointer) * mono_array_length (params));
-               for (i = 0; i < mono_array_length (params); i++) {
-                       MonoType *t = sig->params [i];
 
+/** invoke_array_extract_argument:
+ * @params: array of arguments to the method.
+ * @i: the index of the argument to extract.
+ * @t: ith type from the method signature.
+ * @has_byref_nullables: outarg - TRUE if method expects a byref nullable argument
+ * @error: set on error.
+ *
+ * Given an array of method arguments, return the ith one using the corresponding type
+ * to perform necessary unboxing.  If method expects a ref nullable argument, writes TRUE to @has_byref_nullables.
+ *
+ * On failure sets @error and returns NULL.
+ */
+static gpointer
+invoke_array_extract_argument (MonoArray *params, int i, MonoType *t, gboolean* has_byref_nullables, MonoError *error)
+{
+       MonoType *t_orig = t;
+       gpointer result = NULL;
+       mono_error_init (error);
                again:
                        switch (t->type) {
                        case MONO_TYPE_U1:
@@ -4659,16 +4917,16 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                        case MONO_TYPE_R4:
                        case MONO_TYPE_R8:
                        case MONO_TYPE_VALUETYPE:
-                               if (t->type == MONO_TYPE_VALUETYPE && mono_class_is_nullable (mono_class_from_mono_type (sig->params [i]))) {
+                               if (t->type == MONO_TYPE_VALUETYPE && mono_class_is_nullable (mono_class_from_mono_type (t_orig))) {
                                        /* The runtime invoke wrapper needs the original boxed vtype, it does handle byref values as well. */
-                                       pa [i] = mono_array_get (params, MonoObject*, i);
+                                       result = mono_array_get (params, MonoObject*, i);
                                        if (t->byref)
-                                               has_byref_nullables = TRUE;
+                                               *has_byref_nullables = TRUE;
                                } else {
                                        /* MS seems to create the objects if a null is passed in */
                                        if (!mono_array_get (params, MonoObject*, i)) {
-                                               MonoObject *o = mono_object_new_checked (mono_domain_get (), mono_class_from_mono_type (sig->params [i]), &error);
-                                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                                               MonoObject *o = mono_object_new_checked (mono_domain_get (), mono_class_from_mono_type (t_orig), error);
+                                               return_val_if_nok (error, NULL);
                                                mono_array_setref (params, i, o); 
                                        }
 
@@ -4681,12 +4939,12 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                                                 * boxed object in the arg array with the copy.
                                                 */
                                                MonoObject *orig = mono_array_get (params, MonoObject*, i);
-                                               MonoObject *copy = mono_value_box_checked (mono_domain_get (), orig->vtable->klass, mono_object_unbox (orig), &error);
-                                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                                               MonoObject *copy = mono_value_box_checked (mono_domain_get (), orig->vtable->klass, mono_object_unbox (orig), error);
+                                               return_val_if_nok (error, NULL);
                                                mono_array_setref (params, i, copy);
                                        }
                                                
-                                       pa [i] = mono_object_unbox (mono_array_get (params, MonoObject*, i));
+                                       result = mono_object_unbox (mono_array_get (params, MonoObject*, i));
                                }
                                break;
                        case MONO_TYPE_STRING:
@@ -4695,10 +4953,10 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                        case MONO_TYPE_ARRAY:
                        case MONO_TYPE_SZARRAY:
                                if (t->byref)
-                                       pa [i] = mono_array_addr (params, MonoObject*, i);
+                                       result = mono_array_addr (params, MonoObject*, i);
                                        // FIXME: I need to check this code path
                                else
-                                       pa [i] = mono_array_get (params, MonoObject*, i);
+                                       result = mono_array_get (params, MonoObject*, i);
                                break;
                        case MONO_TYPE_GENERICINST:
                                if (t->byref)
@@ -4712,16 +4970,179 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                                /* The argument should be an IntPtr */
                                arg = mono_array_get (params, MonoObject*, i);
                                if (arg == NULL) {
-                                       pa [i] = NULL;
+                                       result = NULL;
                                } else {
                                        g_assert (arg->vtable->klass == mono_defaults.int_class);
-                                       pa [i] = ((MonoIntPtr*)arg)->m_value;
+                                       result = ((MonoIntPtr*)arg)->m_value;
                                }
                                break;
                        }
                        default:
-                               g_error ("type 0x%x not handled in mono_runtime_invoke_array", sig->params [i]->type);
+                               g_error ("type 0x%x not handled in mono_runtime_invoke_array", t_orig->type);
                        }
+       return result;
+}
+/**
+ * mono_runtime_invoke_array:
+ * @method: method to invoke
+ * @obJ: object instance
+ * @params: arguments to the method
+ * @exc: exception information.
+ *
+ * Invokes the method represented by @method on the object @obj.
+ *
+ * obj is the 'this' pointer, it should be NULL for static
+ * methods, a MonoObject* for object instances and a pointer to
+ * the value type for value types.
+ *
+ * The params array contains the arguments to the method with the
+ * same convention: MonoObject* pointers for object instances and
+ * pointers to the value type otherwise. The _invoke_array
+ * variant takes a C# object[] as the params argument (MonoArray
+ * *params): in this case the value types are boxed inside the
+ * respective reference representation.
+ * 
+ * From unmanaged code you'll usually use the
+ * mono_runtime_invoke_checked() variant.
+ *
+ * Note that this function doesn't handle virtual methods for
+ * you, it will exec the exact method you pass: we still need to
+ * expose a function to lookup the derived class implementation
+ * of a virtual method (there are examples of this in the code,
+ * though).
+ * 
+ * You can pass NULL as the exc argument if you don't want to
+ * catch exceptions, otherwise, *exc will be set to the exception
+ * thrown, if any.  if an exception is thrown, you can't use the
+ * MonoObject* result from the function.
+ * 
+ * If the method returns a value type, it is boxed in an object
+ * reference.
+ */
+MonoObject*
+mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
+                          MonoObject **exc)
+{
+       MonoError error;
+       if (exc) {
+               MonoObject *result = mono_runtime_try_invoke_array (method, obj, params, exc, &error);
+               if (*exc) {
+                       mono_error_cleanup (&error);
+                       return NULL;
+               } else {
+                       if (!is_ok (&error))
+                               *exc = (MonoObject*)mono_error_convert_to_exception (&error);
+                       return result;
+               }
+       } else {
+               MonoObject *result = mono_runtime_try_invoke_array (method, obj, params, NULL, &error);
+               mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
+               return result;
+       }
+}
+
+/**
+ * mono_runtime_invoke_array_checked:
+ * @method: method to invoke
+ * @obJ: object instance
+ * @params: arguments to the method
+ * @error: set on failure.
+ *
+ * Invokes the method represented by @method on the object @obj.
+ *
+ * obj is the 'this' pointer, it should be NULL for static
+ * methods, a MonoObject* for object instances and a pointer to
+ * the value type for value types.
+ *
+ * The params array contains the arguments to the method with the
+ * same convention: MonoObject* pointers for object instances and
+ * pointers to the value type otherwise. The _invoke_array
+ * variant takes a C# object[] as the params argument (MonoArray
+ * *params): in this case the value types are boxed inside the
+ * respective reference representation.
+ *
+ * From unmanaged code you'll usually use the
+ * mono_runtime_invoke_checked() variant.
+ *
+ * Note that this function doesn't handle virtual methods for
+ * you, it will exec the exact method you pass: we still need to
+ * expose a function to lookup the derived class implementation
+ * of a virtual method (there are examples of this in the code,
+ * though).
+ *
+ * On failure or exception, @error will be set. In that case, you
+ * can't use the MonoObject* result from the function.
+ *
+ * If the method returns a value type, it is boxed in an object
+ * reference.
+ */
+MonoObject*
+mono_runtime_invoke_array_checked (MonoMethod *method, void *obj, MonoArray *params,
+                                  MonoError *error)
+{
+       mono_error_init (error);
+       return mono_runtime_try_invoke_array (method, obj, params, NULL, error);
+}
+
+/**
+ * mono_runtime_try_invoke_array:
+ * @method: method to invoke
+ * @obJ: object instance
+ * @params: arguments to the method
+ * @exc: exception information.
+ * @error: set on failure.
+ *
+ * Invokes the method represented by @method on the object @obj.
+ *
+ * obj is the 'this' pointer, it should be NULL for static
+ * methods, a MonoObject* for object instances and a pointer to
+ * the value type for value types.
+ *
+ * The params array contains the arguments to the method with the
+ * same convention: MonoObject* pointers for object instances and
+ * pointers to the value type otherwise. The _invoke_array
+ * variant takes a C# object[] as the params argument (MonoArray
+ * *params): in this case the value types are boxed inside the
+ * respective reference representation.
+ *
+ * From unmanaged code you'll usually use the
+ * mono_runtime_invoke_checked() variant.
+ *
+ * Note that this function doesn't handle virtual methods for
+ * you, it will exec the exact method you pass: we still need to
+ * expose a function to lookup the derived class implementation
+ * of a virtual method (there are examples of this in the code,
+ * though).
+ *
+ * You can pass NULL as the exc argument if you don't want to catch
+ * exceptions, otherwise, *exc will be set to the exception thrown, if
+ * any.  On other failures, @error will be set. If an exception is
+ * thrown or there's an error, you can't use the MonoObject* result
+ * from the function.
+ *
+ * If the method returns a value type, it is boxed in an object
+ * reference.
+ */
+MonoObject*
+mono_runtime_try_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
+                              MonoObject **exc, MonoError *error)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+
+       mono_error_init (error);
+
+       MonoMethodSignature *sig = mono_method_signature (method);
+       gpointer *pa = NULL;
+       MonoObject *res;
+       int i;
+       gboolean has_byref_nullables = FALSE;
+
+       if (NULL != params) {
+               pa = (void **)alloca (sizeof (gpointer) * mono_array_length (params));
+               for (i = 0; i < mono_array_length (params); i++) {
+                       MonoType *t = sig->params [i];
+                       pa [i] = invoke_array_extract_argument (params, i, t, &has_byref_nullables, error);
+                       return_val_if_nok (error, NULL);
                }
        }
 
@@ -4735,15 +5156,14 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                        if (!params)
                                return NULL;
                        else {
-                               MonoObject *result = mono_value_box_checked (mono_domain_get (), method->klass->cast_class, pa [0], &error);
-                               mono_error_raise_exception (&error); /* FIXME don't raise here */
-                               return result;
+                               return mono_value_box_checked (mono_domain_get (), method->klass->cast_class, pa [0], error);
                        }
                }
 
                if (!obj) {
-                       obj = mono_object_new_checked (mono_domain_get (), method->klass, &error);
-                       g_assert (obj && mono_error_ok (&error)); /*maybe we should raise a TLE instead?*/ /* FIXME don't swallow error */
+                       obj = mono_object_new_checked (mono_domain_get (), method->klass, error);
+                       mono_error_assert_ok (error);
+                       g_assert (obj); /*maybe we should raise a TLE instead?*/
 #ifndef DISABLE_REMOTING
                        if (mono_object_class(obj) == mono_defaults.transparent_proxy_class) {
                                method = mono_marshal_get_remoting_invoke (method->slot == -1 ? method : method->klass->vtable [method->slot]);
@@ -4754,19 +5174,14 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                        else
                                o = obj;
                } else if (method->klass->valuetype) {
-                       obj = mono_value_box_checked (mono_domain_get (), method->klass, obj, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       obj = mono_value_box_checked (mono_domain_get (), method->klass, obj, error);
+                       return_val_if_nok (error, NULL);
                }
 
                if (exc) {
-                       mono_runtime_try_invoke (method, o, pa, exc, &error);
-                       if (*exc == NULL && !mono_error_ok (&error))
-                               *exc = (MonoObject*) mono_error_convert_to_exception (&error);
-                       else
-                               mono_error_cleanup (&error);
+                       mono_runtime_try_invoke (method, o, pa, exc, error);
                } else {
-                       mono_runtime_invoke_checked (method, o, pa, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       mono_runtime_invoke_checked (method, o, pa, error);
                }
 
                return (MonoObject *)obj;
@@ -4775,26 +5190,22 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
                        MonoObject *nullable;
 
                        /* Convert the unboxed vtype into a Nullable structure */
-                       nullable = mono_object_new_checked (mono_domain_get (), method->klass, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       nullable = mono_object_new_checked (mono_domain_get (), method->klass, error);
+                       return_val_if_nok (error, NULL);
 
-                       MonoObject *boxed = mono_value_box_checked (mono_domain_get (), method->klass->cast_class, obj, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       MonoObject *boxed = mono_value_box_checked (mono_domain_get (), method->klass->cast_class, obj, error);
+                       return_val_if_nok (error, NULL);
                        mono_nullable_init ((guint8 *)mono_object_unbox (nullable), boxed, method->klass);
                        obj = mono_object_unbox (nullable);
                }
 
                /* obj must be already unboxed if needed */
                if (exc) {
-                       res = mono_runtime_try_invoke (method, obj, pa, exc, &error);
-                       if (*exc == NULL && !mono_error_ok (&error))
-                               *exc = (MonoObject*) mono_error_convert_to_exception (&error);
-                       else
-                               mono_error_cleanup (&error);
+                       res = mono_runtime_try_invoke (method, obj, pa, exc, error);
                } else {
-                       res = mono_runtime_invoke_checked (method, obj, pa, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       res = mono_runtime_invoke_checked (method, obj, pa, error);
                }
+               return_val_if_nok (error, NULL);
 
                if (sig->ret->type == MONO_TYPE_PTR) {
                        MonoClass *pointer_class;
@@ -4812,12 +5223,12 @@ mono_runtime_invoke_array (MonoMethod *method, void *obj, MonoArray *params,
 
                        g_assert (res->vtable->klass == mono_defaults.int_class);
                        box_args [0] = ((MonoIntPtr*)res)->m_value;
-                       box_args [1] = mono_type_get_object_checked (mono_domain_get (), sig->ret, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       box_args [1] = mono_type_get_object_checked (mono_domain_get (), sig->ret, error);
+                       return_val_if_nok (error, NULL);
 
-                       res = mono_runtime_try_invoke (box_method, NULL, box_args, &box_exc, &error);
+                       res = mono_runtime_try_invoke (box_method, NULL, box_args, &box_exc, error);
                        g_assert (box_exc == NULL);
-                       mono_error_assert_ok (&error);
+                       mono_error_assert_ok (error);
                }
 
                if (has_byref_nullables) {
@@ -4924,7 +5335,7 @@ mono_object_new_pinned (MonoDomain *domain, MonoClass *klass, MonoError *error)
        if (G_UNLIKELY (!o))
                mono_error_set_out_of_memory (error, "Could not allocate %i bytes", mono_class_instance_size (klass));
        else if (G_UNLIKELY (vtable->klass->has_finalize))
-               mono_object_register_finalizer (o, error);
+               mono_object_register_finalizer (o);
 
        return o;
 }
@@ -5054,7 +5465,7 @@ mono_object_new_alloc_specific_checked (MonoVTable *vtable, MonoError *error)
        if (G_UNLIKELY (!o))
                mono_error_set_out_of_memory (error, "Could not allocate %i bytes", vtable->klass->instance_size);
        else if (G_UNLIKELY (vtable->klass->has_finalize))
-               mono_object_register_finalizer (o, error);
+               mono_object_register_finalizer (o);
 
        return o;
 }
@@ -5142,7 +5553,7 @@ mono_object_new_mature (MonoVTable *vtable, MonoError *error)
        if (G_UNLIKELY (!o))
                mono_error_set_out_of_memory (error, "Could not allocate %i bytes", vtable->klass->instance_size);
        else if (G_UNLIKELY (vtable->klass->has_finalize))
-               mono_object_register_finalizer (o, error);
+               mono_object_register_finalizer (o);
 
        return o;
 }
@@ -5257,7 +5668,7 @@ mono_object_clone_checked (MonoObject *obj, MonoError *error)
        mono_gc_wbarrier_object_copy (o, obj);
 
        if (obj->vtable->klass->has_finalize)
-               mono_object_register_finalizer (o, error);
+               mono_object_register_finalizer (o);
        return o;
 }
 
@@ -6032,7 +6443,7 @@ mono_value_box_checked (MonoDomain *domain, MonoClass *klass, gpointer value, Mo
 #endif
 #endif
        if (klass->has_finalize) {
-               mono_object_register_finalizer (res, error);
+               mono_object_register_finalizer (res);
                return_val_if_nok (error, NULL);
        }
        return res;
@@ -6273,7 +6684,8 @@ mono_object_isinst_mbyref_checked (MonoObject *obj, MonoClass *klass, MonoError
 
                if (*(MonoBoolean *) mono_object_unbox(res)) {
                        /* Update the vtable of the remote type, so it can safely cast to this new type */
-                       mono_upgrade_remote_class (domain, obj, klass);
+                       mono_upgrade_remote_class (domain, obj, klass, error);
+                       return_val_if_nok (error, NULL);
                        return obj;
                }
        }
@@ -6458,18 +6870,36 @@ mono_string_intern_checked (MonoString *str, MonoError *error)
 MonoString*
 mono_ldstr (MonoDomain *domain, MonoImage *image, guint32 idx)
 {
-       MONO_REQ_GC_UNSAFE_MODE;
        MonoError error;
+       MonoString *result = mono_ldstr_checked (domain, image, idx, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_ldstr_checked:
+ * @domain: the domain where the string will be used.
+ * @image: a metadata context
+ * @idx: index into the user string table.
+ * @error: set on error.
+ * 
+ * Implementation for the ldstr opcode.
+ * Returns: a loaded string from the @image/@idx combination.
+ * On failure returns NULL and sets @error.
+ */
+MonoString*
+mono_ldstr_checked (MonoDomain *domain, MonoImage *image, guint32 idx, MonoError *error)
+{
+       MONO_REQ_GC_UNSAFE_MODE;
+       mono_error_init (error);
 
        if (image->dynamic) {
-               MonoString *str = (MonoString *)mono_lookup_dynamic_token (image, MONO_TOKEN_STRING | idx, NULL, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               MonoString *str = (MonoString *)mono_lookup_dynamic_token (image, MONO_TOKEN_STRING | idx, NULL, error);
                return str;
        } else {
                if (!mono_verifier_verify_string_signature (image, idx, NULL))
                        return NULL; /*FIXME we should probably be raising an exception here*/
-               MonoString *str = mono_ldstr_metadata_sig (domain, mono_metadata_user_string (image, idx), &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               MonoString *str = mono_ldstr_metadata_sig (domain, mono_metadata_user_string (image, idx), error);
                return str;
        }
 }
@@ -6528,6 +6958,48 @@ mono_ldstr_metadata_sig (MonoDomain *domain, const char* sig, MonoError *error)
        return interned;
 }
 
+/*
+ * mono_ldstr_utf8:
+ *
+ *   Same as mono_ldstr, but return a NULL terminated utf8 string instead
+ * of an object.
+ */
+char*
+mono_ldstr_utf8 (MonoImage *image, guint32 idx, MonoError *error)
+{
+       const char *str;
+       size_t len2;
+       long written = 0;
+       char *as;
+       GError *gerror = NULL;
+
+       mono_error_init (error);
+
+       if (!mono_verifier_verify_string_signature (image, idx, NULL))
+               return NULL; /*FIXME we should probably be raising an exception here*/
+       str = mono_metadata_user_string (image, idx);
+
+       len2 = mono_metadata_decode_blob_size (str, &str);
+       len2 >>= 1;
+
+       as = g_utf16_to_utf8 ((guint16*)str, len2, NULL, &written, &gerror);
+       if (gerror) {
+               mono_error_set_argument (error, "string", "%s", gerror->message);
+               g_error_free (gerror);
+               return NULL;
+       }
+       /* g_utf16_to_utf8  may not be able to complete the convertion (e.g. NULL values were found, #335488) */
+       if (len2 > written) {
+               /* allocate the total length and copy the part of the string that has been converted */
+               char *as2 = (char *)g_malloc0 (len2);
+               memcpy (as2, as, written);
+               g_free (as);
+               as = as2;
+       }
+
+       return as;
+}
+
 /**
  * mono_string_to_utf8:
  * @s: a System.String
@@ -6545,8 +7017,10 @@ mono_string_to_utf8 (MonoString *s)
        MonoError error;
        char *result = mono_string_to_utf8_checked (s, &error);
        
-       if (!mono_error_ok (&error))
-               mono_error_raise_exception (&error);
+       if (!is_ok (&error)) {
+               mono_error_cleanup (&error);
+               return NULL;
+       }
        return result;
 }
 
@@ -6729,10 +7203,28 @@ mono_string_to_utf32 (MonoString *s)
 MonoString *
 mono_string_from_utf16 (gunichar2 *data)
 {
+       MonoError error;
+       MonoString *result = mono_string_from_utf16_checked (data, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_string_from_utf16_checked:
+ * @data: the UTF16 string (LPWSTR) to convert
+ * @error: set on error
+ *
+ * Converts a NULL terminated UTF16 string (LPWSTR) to a MonoString.
+ *
+ * Returns: a MonoString. On failure sets @error and returns NULL.
+ */
+MonoString *
+mono_string_from_utf16_checked (gunichar2 *data, MonoError *error)
+{
+
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
-       MonoString *res = NULL;
+       mono_error_init (error);
        MonoDomain *domain = mono_domain_get ();
        int len = 0;
 
@@ -6741,9 +7233,7 @@ mono_string_from_utf16 (gunichar2 *data)
 
        while (data [len]) len++;
 
-       res = mono_string_new_utf16_checked (domain, data, len, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
-       return res;
+       return mono_string_new_utf16_checked (domain, data, len, error);
 }
 
 /**
@@ -6756,12 +7246,31 @@ mono_string_from_utf16 (gunichar2 *data)
  */
 MonoString *
 mono_string_from_utf32 (mono_unichar4 *data)
+{
+       MonoError error;
+       MonoString *result = mono_string_from_utf32_checked (data, &error);
+       mono_error_cleanup (&error);
+       return result;
+}
+
+/**
+ * mono_string_from_utf32_checked:
+ * @data: the UTF32 string (LPWSTR) to convert
+ * @error: set on error
+ *
+ * Converts a UTF32 (UCS-4)to a MonoString.
+ *
+ * Returns: a MonoString. On failure returns NULL and sets @error.
+ */
+MonoString *
+mono_string_from_utf32_checked (mono_unichar4 *data, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
+       mono_error_init (error);
        MonoString* result = NULL;
        mono_unichar2 *utf16_output = NULL;
-       GError *error = NULL;
+       GError *gerror = NULL;
        glong items_written;
        int len = 0;
 
@@ -6770,12 +7279,12 @@ mono_string_from_utf32 (mono_unichar4 *data)
 
        while (data [len]) len++;
 
-       utf16_output = g_ucs4_to_utf16 (data, len, NULL, &items_written, &error);
+       utf16_output = g_ucs4_to_utf16 (data, len, NULL, &items_written, &gerror);
 
-       if (error)
-               g_error_free (error);
+       if (gerror)
+               g_error_free (gerror);
 
-       result = mono_string_from_utf16 (utf16_output);
+       result = mono_string_from_utf16_checked (utf16_output, error);
        g_free (utf16_output);
        return result;
 }
@@ -6935,20 +7444,24 @@ mono_wait_handle_get_handle (MonoWaitHandle *handle)
 
 
 static MonoObject*
-mono_runtime_capture_context (MonoDomain *domain)
+mono_runtime_capture_context (MonoDomain *domain, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
        RuntimeInvokeFunction runtime_invoke;
 
+       mono_error_init (error);
+
        if (!domain->capture_context_runtime_invoke || !domain->capture_context_method) {
                MonoMethod *method = mono_get_context_capture_method ();
                MonoMethod *wrapper;
                if (!method)
                        return NULL;
                wrapper = mono_marshal_get_runtime_invoke (method, FALSE);
-               domain->capture_context_runtime_invoke = mono_compile_method (wrapper);
-               domain->capture_context_method = mono_compile_method (method);
+               domain->capture_context_runtime_invoke = mono_compile_method_checked (wrapper, error);
+               return_val_if_nok (error, NULL);
+               domain->capture_context_method = mono_compile_method_checked (method, error);
+               return_val_if_nok (error, NULL);
        }
 
        runtime_invoke = (RuntimeInvokeFunction)domain->capture_context_runtime_invoke;
@@ -6961,20 +7474,23 @@ mono_runtime_capture_context (MonoDomain *domain)
  * @handle: wait handle.
  * @state: state to pass to AsyncResult
  * @data: C closure data.
+ * @error: set on error.
  *
  * Creates a new MonoAsyncResult (AsyncResult C# class) in the given domain.
  * If the handle is not null, the handle is initialized to a MonOWaitHandle.
+ * On failure returns NULL and sets @error.
  *
  */
 MonoAsyncResult *
-mono_async_result_new (MonoDomain *domain, HANDLE handle, MonoObject *state, gpointer data, MonoObject *object_data)
+mono_async_result_new (MonoDomain *domain, HANDLE handle, MonoObject *state, gpointer data, MonoObject *object_data, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
-       MonoAsyncResult *res = (MonoAsyncResult *)mono_object_new_checked (domain, mono_defaults.asyncresult_class, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
-       MonoObject *context = mono_runtime_capture_context (domain);
+       mono_error_init (error);
+       MonoAsyncResult *res = (MonoAsyncResult *)mono_object_new_checked (domain, mono_defaults.asyncresult_class, error);
+       return_val_if_nok (error, NULL);
+       MonoObject *context = mono_runtime_capture_context (domain, error);
+       return_val_if_nok (error, NULL);
        /* we must capture the execution context from the original thread */
        if (context) {
                MONO_OBJECT_SETREF (res, execution_context, context);
@@ -6984,8 +7500,8 @@ mono_async_result_new (MonoDomain *domain, HANDLE handle, MonoObject *state, gpo
        res->data = (void **)data;
        MONO_OBJECT_SETREF (res, object_data, object_data);
        MONO_OBJECT_SETREF (res, async_state, state);
-       MonoWaitHandle *wait_handle = mono_wait_handle_new (domain, handle, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       MonoWaitHandle *wait_handle = mono_wait_handle_new (domain, handle, error);
+       return_val_if_nok (error, NULL);
        if (handle != NULL)
                MONO_OBJECT_SETREF (res, handle, (MonoObject *) wait_handle);
 
@@ -7009,12 +7525,16 @@ ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke (MonoAsyncResult
 
        ac = (MonoAsyncCall*) ares->object_data;
        if (!ac) {
-               res = mono_runtime_delegate_invoke (ares->async_delegate, (void**) &ares->async_state, NULL);
+               res = mono_runtime_delegate_invoke_checked (ares->async_delegate, (void**) &ares->async_state, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
        } else {
                gpointer wait_event = NULL;
 
                ac->msg->exc = NULL;
-               res = mono_message_invoke (ares->async_delegate, ac->msg, &ac->msg->exc, &ac->out_args);
+               res = mono_message_invoke (ares->async_delegate, ac->msg, &ac->msg->exc, &ac->out_args, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return NULL;
                MONO_OBJECT_SETREF (ac, res, res);
 
                mono_monitor_enter ((MonoObject*) ares);
@@ -7036,88 +7556,33 @@ ves_icall_System_Runtime_Remoting_Messaging_AsyncResult_Invoke (MonoAsyncResult
        return res;
 }
 
-void
+gboolean
 mono_message_init (MonoDomain *domain,
                   MonoMethodMessage *this_obj, 
                   MonoReflectionMethod *method,
-                  MonoArray *out_args)
+                  MonoArray *out_args,
+                  MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       static MonoClass *object_array_klass;
-       static MonoClass *byte_array_klass;
-       static MonoClass *string_array_klass;
-       MonoError error;
-       MonoMethodSignature *sig = mono_method_signature (method->method);
-       MonoString *name;
-       MonoArray *arr;
-       int i, j;
-       char **names;
-       guint8 arg_type;
-
-       if (!object_array_klass) {
-               MonoClass *klass;
-
-               klass = mono_array_class_get (mono_defaults.byte_class, 1);
-               g_assert (klass);
-               byte_array_klass = klass;
-
-               klass = mono_array_class_get (mono_defaults.string_class, 1);
-               g_assert (klass);
-               string_array_klass = klass;
-
-               klass = mono_array_class_get (mono_defaults.object_class, 1);
-               g_assert (klass);
+       static MonoMethod *init_message_method = NULL;
 
-               mono_atomic_store_release (&object_array_klass, klass);
+       if (!init_message_method) {
+               init_message_method = mono_class_get_method_from_name (mono_defaults.mono_method_message_class, "InitMessage", 2);
+               g_assert (init_message_method != NULL);
        }
 
-       MONO_OBJECT_SETREF (this_obj, method, method);
-
-       arr = mono_array_new_specific_checked (mono_class_vtable (domain, object_array_klass), sig->param_count, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
-
-       MONO_OBJECT_SETREF (this_obj, args, arr);
-
-       arr = mono_array_new_specific_checked (mono_class_vtable (domain, byte_array_klass), sig->param_count, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
-
-       MONO_OBJECT_SETREF (this_obj, arg_types, arr);
-
-       this_obj->async_result = NULL;
-       this_obj->call_type = CallType_Sync;
-
-       names = g_new (char *, sig->param_count);
-       mono_method_get_param_names (method->method, (const char **) names);
-
-       arr = mono_array_new_specific_checked (mono_class_vtable (domain, string_array_klass), sig->param_count, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
-
-       MONO_OBJECT_SETREF (this_obj, names, arr);
+       mono_error_init (error);
+       /* FIXME set domain instead? */
+       g_assert (domain == mono_domain_get ());
        
-       for (i = 0; i < sig->param_count; i++) {
-               name = mono_string_new (domain, names [i]);
-               mono_array_setref (this_obj->names, i, name);   
-       }
+       gpointer args[2];
 
-       g_free (names);
-       for (i = 0, j = 0; i < sig->param_count; i++) {
-               if (sig->params [i]->byref) {
-                       if (out_args) {
-                               MonoObject* arg = (MonoObject *)mono_array_get (out_args, gpointer, j);
-                               mono_array_setref (this_obj->args, i, arg);
-                               j++;
-                       }
-                       arg_type = 2;
-                       if (!(sig->params [i]->attrs & PARAM_ATTRIBUTE_OUT))
-                               arg_type |= 1;
-               } else {
-                       arg_type = 1;
-                       if (sig->params [i]->attrs & PARAM_ATTRIBUTE_OUT)
-                               arg_type |= 4;
-               }
-               mono_array_set (this_obj->arg_types, guint8, i, arg_type);
-       }
+       args[0] = method;
+       args[1] = out_args;
+
+       mono_runtime_invoke_checked (init_message_method, this_obj, args, error);
+       return is_ok (error);
 }
 
 #ifndef DISABLE_REMOTING
@@ -7173,16 +7638,16 @@ mono_remoting_invoke (MonoObject *real_proxy, MonoMethodMessage *msg, MonoObject
 
 MonoObject *
 mono_message_invoke (MonoObject *target, MonoMethodMessage *msg, 
-                    MonoObject **exc, MonoArray **out_args) 
+                    MonoObject **exc, MonoArray **out_args, MonoError *error
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
        static MonoClass *object_array_klass;
-       MonoError error;
+       mono_error_init (error);
+
        MonoDomain *domain; 
        MonoMethod *method;
        MonoMethodSignature *sig;
-       MonoObject *ret;
        MonoArray *arr;
        int i, j, outarg_count = 0;
 
@@ -7192,10 +7657,7 @@ mono_message_invoke (MonoObject *target, MonoMethodMessage *msg,
                if (mono_class_is_contextbound (tp->remote_class->proxy_class) && tp->rp->context == (MonoObject *) mono_context_get ()) {
                        target = tp->rp->unwrapped_server;
                } else {
-                       ret = mono_remoting_invoke ((MonoObject *)tp->rp, msg, exc, out_args, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
-
-                       return ret;
+                       return mono_remoting_invoke ((MonoObject *)tp->rp, msg, exc, out_args, error);
                }
        }
 #endif
@@ -7219,13 +7681,14 @@ mono_message_invoke (MonoObject *target, MonoMethodMessage *msg,
                object_array_klass = klass;
        }
 
-       arr = mono_array_new_specific_checked (mono_class_vtable (domain, object_array_klass), outarg_count, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       arr = mono_array_new_specific_checked (mono_class_vtable (domain, object_array_klass), outarg_count, error);
+       return_val_if_nok (error, NULL);
 
        mono_gc_wbarrier_generic_store (out_args, (MonoObject*) arr);
        *exc = NULL;
 
-       ret = mono_runtime_invoke_array (method, method->klass->valuetype? mono_object_unbox (target): target, msg->args, exc);
+       MonoObject *ret = mono_runtime_try_invoke_array (method, method->klass->valuetype? mono_object_unbox (target): target, msg->args, exc, error);
+       return_val_if_nok (error, NULL);
 
        for (i = 0, j = 0; i < sig->param_count; i++) {
                if (sig->params [i]->byref) {
@@ -7240,25 +7703,24 @@ mono_message_invoke (MonoObject *target, MonoMethodMessage *msg,
 }
 
 /**
- * mono_object_to_string:
+ * prepare_to_string_method:
  * @obj: The object
- * @exc: Any exception thrown by ToString (). May be NULL.
+ * @target: Set to @obj or unboxed value if a valuetype
  *
- * Returns: the result of calling ToString () on an object.
+ * Returns: the ToString override for @obj. If @obj is a valuetype, @target is unboxed otherwise it's @obj.
  */
-MonoString *
-mono_object_to_string (MonoObject *obj, MonoObject **exc)
+static MonoMethod *
+prepare_to_string_method (MonoObject *obj, void **target)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
        static MonoMethod *to_string = NULL;
-       MonoError error;
        MonoMethod *method;
-       MonoString *s;
-       void *target = obj;
-
+       g_assert (target);
        g_assert (obj);
 
+       *target = obj;
+
        if (!to_string)
                to_string = mono_class_get_method_from_name_flags (mono_get_object_class (), "ToString", 0, METHOD_ATTRIBUTE_VIRTUAL | METHOD_ATTRIBUTE_PUBLIC);
 
@@ -7266,9 +7728,25 @@ mono_object_to_string (MonoObject *obj, MonoObject **exc)
 
        // Unbox value type if needed
        if (mono_class_is_valuetype (mono_method_get_class (method))) {
-               target = mono_object_unbox (obj);
+               *target = mono_object_unbox (obj);
        }
+       return method;
+}
 
+/**
+ * mono_object_to_string:
+ * @obj: The object
+ * @exc: Any exception thrown by ToString (). May be NULL.
+ *
+ * Returns: the result of calling ToString () on an object.
+ */
+MonoString *
+mono_object_to_string (MonoObject *obj, MonoObject **exc)
+{
+       MonoError error;
+       MonoString *s = NULL;
+       void *target;
+       MonoMethod *method = prepare_to_string_method (obj, &target);
        if (exc) {
                s = (MonoString *) mono_runtime_try_invoke (method, target, NULL, exc, &error);
                if (*exc == NULL && !mono_error_ok (&error))
@@ -7277,12 +7755,52 @@ mono_object_to_string (MonoObject *obj, MonoObject **exc)
                        mono_error_cleanup (&error);
        } else {
                s = (MonoString *) mono_runtime_invoke_checked (method, target, NULL, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
        }
 
        return s;
 }
 
+/**
+ * mono_object_to_string_checked:
+ * @obj: The object
+ * @error: Set on error.
+ *
+ * Returns: the result of calling ToString () on an object. If the
+ * method cannot be invoked or if it raises an exception, sets @error
+ * and returns NULL.
+ */
+MonoString *
+mono_object_to_string_checked (MonoObject *obj, MonoError *error)
+{
+       mono_error_init (error);
+       void *target;
+       MonoMethod *method = prepare_to_string_method (obj, &target);
+       return (MonoString*) mono_runtime_invoke_checked (method, target, NULL, error);
+}
+
+/**
+ * mono_object_try_to_string:
+ * @obj: The object
+ * @exc: Any exception thrown by ToString (). Must not be NULL.
+ * @error: Set if method cannot be invoked.
+ *
+ * Returns: the result of calling ToString () on an object. If the
+ * method cannot be invoked sets @error, if it raises an exception sets @exc,
+ * and returns NULL.
+ */
+MonoString *
+mono_object_try_to_string (MonoObject *obj, MonoObject **exc, MonoError *error)
+{
+       g_assert (exc);
+       mono_error_init (error);
+       void *target;
+       MonoMethod *method = prepare_to_string_method (obj, &target);
+       return (MonoString*) mono_runtime_try_invoke (method, target, NULL, exc, error);
+}
+
+
+
 /**
  * mono_print_unhandled_exception:
  * @exc: The exception
@@ -7312,7 +7830,11 @@ mono_print_unhandled_exception (MonoObject *exc)
                        free_message = TRUE;
                } else {
                        MonoObject *other_exc = NULL;
-                       str = mono_object_to_string (exc, &other_exc);
+                       str = mono_object_try_to_string (exc, &other_exc, &error);
+                       if (other_exc == NULL && !is_ok (&error))
+                               other_exc = (MonoObject*)mono_error_convert_to_exception (&error);
+                       else
+                               mono_error_cleanup (&error);
                        if (other_exc) {
                                char *original_backtrace = mono_exception_get_managed_backtrace ((MonoException*)exc);
                                char *nested_backtrace = mono_exception_get_managed_backtrace ((MonoException*)other_exc);
@@ -7346,22 +7868,25 @@ mono_print_unhandled_exception (MonoObject *exc)
 }
 
 /**
- * mono_delegate_ctor:
+ * mono_delegate_ctor_with_method:
  * @this: pointer to an uninitialized delegate object
  * @target: target object
  * @addr: pointer to native code
  * @method: method
+ * @error: set on error.
  *
  * Initialize a delegate and sets a specific method, not the one
  * associated with addr.  This is useful when sharing generic code.
  * In that case addr will most probably not be associated with the
  * correct instantiation of the method.
+ * On failure returns FALSE and sets @error.
  */
-void
-mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoMethod *method)
+gboolean
+mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoMethod *method, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
+       mono_error_init (error);
        MonoDelegate *delegate = (MonoDelegate *)this_obj;
 
        g_assert (this_obj);
@@ -7378,7 +7903,8 @@ mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpoint
        if (target && target->vtable->klass == mono_defaults.transparent_proxy_class) {
                g_assert (method);
                method = mono_marshal_get_remoting_invoke (method);
-               delegate->method_ptr = mono_compile_method (method);
+               delegate->method_ptr = mono_compile_method_checked (method, error);
+               return_val_if_nok (error, FALSE);
                MONO_OBJECT_SETREF (delegate, target, target);
        } else
 #endif
@@ -7390,6 +7916,7 @@ mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpoint
        delegate->invoke_impl = arch_create_delegate_trampoline (delegate->object.vtable->domain, delegate->object.vtable->klass);
        if (callbacks.init_delegate)
                callbacks.init_delegate (delegate);
+       return TRUE;
 }
 
 /**
@@ -7397,14 +7924,17 @@ mono_delegate_ctor_with_method (MonoObject *this_obj, MonoObject *target, gpoint
  * @this: pointer to an uninitialized delegate object
  * @target: target object
  * @addr: pointer to native code
+ * @error: set on error.
  *
  * This is used to initialize a delegate.
+ * On failure returns FALSE and sets @error.
  */
-void
-mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr)
+gboolean
+mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
+       mono_error_init (error);
        MonoDomain *domain = mono_domain_get ();
        MonoJitInfo *ji;
        MonoMethod *method = NULL;
@@ -7420,7 +7950,7 @@ mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr)
                g_assert (!method->klass->generic_container);
        }
 
-       mono_delegate_ctor_with_method (this_obj, target, addr, method);
+       return mono_delegate_ctor_with_method (this_obj, target, addr, method, error);
 }
 
 /**
@@ -7430,34 +7960,38 @@ mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr)
  * @invoke: optional, delegate invoke.
  * @cb: async callback delegate.
  * @state: state passed to the async callback.
+ * @error: set on error.
  *
  * Translates arguments pointers into a MonoMethodMessage.
+ * On failure returns NULL and sets @error.
  */
 MonoMethodMessage *
 mono_method_call_message_new (MonoMethod *method, gpointer *params, MonoMethod *invoke, 
-                             MonoDelegate **cb, MonoObject **state)
+                             MonoDelegate **cb, MonoObject **state, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       MonoError error;
+       mono_error_init (error);
 
        MonoDomain *domain = mono_domain_get ();
        MonoMethodSignature *sig = mono_method_signature (method);
        MonoMethodMessage *msg;
        int i, count;
 
-       msg = (MonoMethodMessage *)mono_object_new_checked (domain, mono_defaults.mono_method_message_class, &error); 
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       msg = (MonoMethodMessage *)mono_object_new_checked (domain, mono_defaults.mono_method_message_class, error); 
+       return_val_if_nok  (error, NULL);
 
        if (invoke) {
-               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, invoke, NULL, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
-               mono_message_init (domain, msg, rm, NULL);
+               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, invoke, NULL, error);
+               return_val_if_nok (error, NULL);
+               mono_message_init (domain, msg, rm, NULL, error);
+               return_val_if_nok (error, NULL);
                count =  sig->param_count - 2;
        } else {
-               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, method, NULL, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
-               mono_message_init (domain, msg, rm, NULL);
+               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, method, NULL, error);
+               return_val_if_nok (error, NULL);
+               mono_message_init (domain, msg, rm, NULL, error);
+               return_val_if_nok (error, NULL);
                count =  sig->param_count;
        }
 
@@ -7474,8 +8008,8 @@ mono_method_call_message_new (MonoMethod *method, gpointer *params, MonoMethod *
                klass = mono_class_from_mono_type (sig->params [i]);
 
                if (klass->valuetype) {
-                       arg = mono_value_box_checked (domain, klass, vpos, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       arg = mono_value_box_checked (domain, klass, vpos, error);
+                       return_val_if_nok (error, NULL);
                } else 
                        arg = *((MonoObject **)vpos);
                      
@@ -7629,7 +8163,8 @@ mono_load_remote_field_checked (MonoObject *this_obj, MonoClass *klass, MonoClas
        return_val_if_nok (error, NULL);
        MonoReflectionMethod *rm = mono_method_get_object_checked (domain, getter, NULL, error);
        return_val_if_nok (error, NULL);
-       mono_message_init (domain, msg, rm, out_args);
+       mono_message_init (domain, msg, rm, out_args, error);
+       return_val_if_nok (error, NULL);
 
        full_name = mono_type_get_full_name (klass);
        mono_array_setref (msg->args, 0, mono_string_new (domain, full_name));
@@ -7673,28 +8208,6 @@ mono_load_remote_field_new (MonoObject *this_obj, MonoClass *klass, MonoClassFie
        return result;
 }
 
-/**
- * mono_load_remote_field_new_icall:
- * @this: pointer to an object
- * @klass: klass of the object containing @field
- * @field: the field to load
- *
- * This method is called by the runtime on attempts to load fields of
- * transparent proxy objects. @this points to such TP, @klass is the class of
- * the object containing @field.
- * 
- * Returns: a freshly allocated object containing the value of the
- * field.  On failure returns NULL and throws an exception.
- */
-MonoObject *
-mono_load_remote_field_new_icall (MonoObject *this_obj, MonoClass *klass, MonoClassField *field)
-{
-       MonoError error;
-       MonoObject *result = mono_load_remote_field_new_checked (this_obj, klass, field, &error);
-       mono_error_set_pending_exception (&error);
-       return result;
-}
-
 /**
  * mono_load_remote_field_new_checked:
  * @this: pointer to an object
@@ -7715,68 +8228,25 @@ mono_load_remote_field_new_checked (MonoObject *this_obj, MonoClass *klass, Mono
 
        mono_error_init (error);
 
-       static MonoMethod *getter = NULL;
-       MonoDomain *domain = mono_domain_get ();
-       MonoTransparentProxy *tp = (MonoTransparentProxy *) this_obj;
-       MonoClass *field_class;
-       MonoMethodMessage *msg;
-       MonoArray *out_args;
-       MonoObject *exc, *res;
-       char* full_name;
+       static MonoMethod *tp_load = NULL;
 
        g_assert (mono_object_is_transparent_proxy (this_obj));
 
-       field_class = mono_class_from_mono_type (field->type);
-
-       if (mono_class_is_contextbound (tp->remote_class->proxy_class) && tp->rp->context == (MonoObject *) mono_context_get ()) {
-               gpointer val;
-               if (field_class->valuetype) {
-                       res = mono_object_new_checked (domain, field_class, error);
-                       return_val_if_nok (error, NULL);
-                       val = ((gchar *) res) + sizeof (MonoObject);
-               } else {
-                       val = &res;
-               }
-               mono_field_get_value (tp->rp->unwrapped_server, field, val);
-               return res;
-       }
-
-       if (!getter) {
-               getter = mono_class_get_method_from_name (mono_defaults.object_class, "FieldGetter", -1);
-               if (!getter) {
+       if (!tp_load) {
+               tp_load = mono_class_get_method_from_name (mono_defaults.transparent_proxy_class, "LoadRemoteFieldNew", -1);
+               if (!tp_load) {
                        mono_error_set_not_supported (error, "Linked away.");
                        return NULL;
                }
        }
        
-       msg = (MonoMethodMessage *)mono_object_new_checked (domain, mono_defaults.mono_method_message_class, error);
-       return_val_if_nok (error, NULL);
-       out_args = mono_array_new_checked (domain, mono_defaults.object_class, 1, error);
-       return_val_if_nok (error, NULL);
-
-       MonoReflectionMethod *rm = mono_method_get_object_checked (domain, getter, NULL, error);
-       return_val_if_nok (error, NULL);
-       mono_message_init (domain, msg, rm, out_args);
-
-       full_name = mono_type_get_full_name (klass);
-       mono_array_setref (msg->args, 0, mono_string_new (domain, full_name));
-       mono_array_setref (msg->args, 1, mono_string_new (domain, mono_field_get_name (field)));
-       g_free (full_name);
-
-       mono_remoting_invoke ((MonoObject *)(tp->rp), msg, &exc, &out_args, error);
-       return_val_if_nok (error, NULL);
-
-       if (exc) {
-               mono_error_set_exception_instance (error, (MonoException *)exc);
-               return NULL;
-       }
+       /* MonoType *type = mono_class_get_type (klass); */
 
-       if (mono_array_length (out_args) == 0)
-               res = NULL;
-       else
-               res = mono_array_get (out_args, MonoObject *, 0);
+       gpointer args[2];
+       args [0] = &klass;
+       args [1] = &field;
 
-       return res;
+       return mono_runtime_invoke_checked (tp_load, this_obj, args, error);
 }
 
 /**
@@ -7860,7 +8330,8 @@ mono_store_remote_field_checked (MonoObject *this_obj, MonoClass *klass, MonoCla
        return_val_if_nok (error, FALSE);
        MonoReflectionMethod *rm = mono_method_get_object_checked (domain, setter, NULL, error);
        return_val_if_nok (error, FALSE);
-       mono_message_init (domain, msg, rm, NULL);
+       mono_message_init (domain, msg, rm, NULL, error);
+       return_val_if_nok (error, FALSE);
 
        full_name = mono_type_get_full_name (klass);
        mono_array_setref (msg->args, 0, mono_string_new (domain, full_name));
@@ -7960,7 +8431,8 @@ mono_store_remote_field_new_checked (MonoObject *this_obj, MonoClass *klass, Mon
        return_val_if_nok (error, FALSE);
        MonoReflectionMethod *rm = mono_method_get_object_checked (domain, setter, NULL, error);
        return_val_if_nok (error, FALSE);
-       mono_message_init (domain, msg, rm, NULL);
+       mono_message_init (domain, msg, rm, NULL, error);
+       return_val_if_nok (error, FALSE);
 
        full_name = mono_type_get_full_name (klass);
        mono_array_setref (msg->args, 0, mono_string_new (domain, full_name));
index 99f31507451dfe415d73fa652cc3efefafcf5b9a..24f7284e8e29fe365e3933622a98983951e09830 100644 (file)
@@ -120,6 +120,7 @@ MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString*
 mono_string_new_size       (MonoDomain *domain, int32_t len);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString*
 mono_ldstr                 (MonoDomain *domain, MonoImage *image, uint32_t str_index);
 
@@ -144,6 +145,7 @@ MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString*
 mono_string_new_utf32      (MonoDomain *domain, const mono_unichar4 *text, int32_t len);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API char *
 mono_string_to_utf8        (MonoString *string_obj);
 
@@ -156,9 +158,11 @@ mono_string_to_utf16           (MonoString *string_obj);
 MONO_API mono_unichar4 *
 mono_string_to_utf32       (MonoString *string_obj);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString *
 mono_string_from_utf16     (mono_unichar2 *data);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString *
 mono_string_from_utf32     (mono_unichar4 *data);
 
@@ -171,6 +175,7 @@ mono_string_hash            (MonoString *s);
 MONO_API int
 mono_object_hash            (MonoObject* obj);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoString *
 mono_object_to_string (MonoObject *obj, MonoObject **exc);
 
@@ -252,10 +257,12 @@ mono_get_delegate_begin_invoke (MonoClass *klass);
 MONO_API MonoMethod *
 mono_get_delegate_end_invoke (MonoClass *klass);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoObject*
 mono_runtime_delegate_invoke (MonoObject *delegate, void **params, 
                              MonoObject **exc);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API MonoObject*
 mono_runtime_invoke_array   (MonoMethod *method, void *obj, MonoArray *params,
                             MonoObject **exc);
@@ -272,10 +279,12 @@ mono_runtime_exec_managed_code (MonoDomain *domain,
                                MonoMainThreadFunc main_func,
                                void* main_args);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API int
 mono_runtime_run_main      (MonoMethod *method, int argc, char* argv[], 
                             MonoObject **exc);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API int
 mono_runtime_exec_main     (MonoMethod *method, MonoArray *args,
                             MonoObject **exc);
@@ -309,6 +318,7 @@ mono_unhandled_exception    (MonoObject *exc);
 MONO_API void
 mono_print_unhandled_exception (MonoObject *exc);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API void* 
 mono_compile_method       (MonoMethod *method);
 
@@ -322,6 +332,7 @@ mono_field_static_set_value (MonoVTable *vt, MonoClassField *field, void *value)
 MONO_API void
 mono_field_get_value (MonoObject *obj, MonoClassField *field, void *value);
 
+MONO_RT_EXTERNAL_ONLY
 MONO_API void
 mono_field_static_get_value (MonoVTable *vt, MonoClassField *field, void *value);
 
index 71b4cb495861d7f923827b6c07c23737b799a879..d70d6f07bef754c0ad0f0b9f42dbb000b6e278a3 100644 (file)
@@ -62,7 +62,7 @@ typedef struct {
        unsigned short opval;
 } MonoOpcode;
 
-extern const MonoOpcode mono_opcodes [];
+MONO_API extern const MonoOpcode mono_opcodes [];
 
 MONO_API const char*
 mono_opcode_name (int opcode);
diff --git a/mono/metadata/pedump.c b/mono/metadata/pedump.c
deleted file mode 100644 (file)
index eac9bfb..0000000
+++ /dev/null
@@ -1,750 +0,0 @@
-/*
- * pedump.c: Dumps the contents of an extended PE/COFF file
- *
- * Author:
- *   Miguel de Icaza (miguel@ximian.com)
- *
- * Copyright 2001-2003 Ximian, Inc (http://www.ximian.com)
- * Copyright 2004-2009 Novell, Inc (http://www.novell.com)
- * Licensed under the MIT license. See LICENSE file in the project root for full license information.
- */
-#include <config.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include "image.h"
-#include <glib.h>
-#include "cil-coff.h"
-#include "mono-endian.h"
-#include "verify.h"
-#include <mono/metadata/class.h>
-#include <mono/metadata/debug-helpers.h>
-#include <mono/metadata/tokentype.h>
-#include <mono/metadata/appdomain.h>
-#include <mono/metadata/assembly.h>
-#include <mono/metadata/metadata-internals.h>
-#include <mono/metadata/class-internals.h>
-#include <mono/metadata/verify-internals.h>
-#include <mono/metadata/marshal.h>
-#include "mono/utils/mono-digest.h"
-#include <mono/utils/mono-mmap.h>
-#include <mono/utils/mono-counters.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-
-gboolean dump_data = TRUE;
-gboolean verify_pe = FALSE;
-gboolean verify_metadata = FALSE;
-gboolean verify_code = FALSE;
-gboolean verify_partial_md = FALSE;
-
-static MonoAssembly *pedump_preload (MonoAssemblyName *aname, gchar **assemblies_path, gpointer user_data);
-static void pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data);
-static MonoAssembly *pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data);
-
-/* unused
-static void
-hex_dump (const char *buffer, int base, int count)
-{
-       int i;
-       
-       for (i = 0; i < count; i++){
-               if ((i % 16) == 0)
-                       printf ("\n0x%08x: ", (unsigned char) base + i);
-
-               printf ("%02x ", (unsigned char) (buffer [i]));
-       }
-}
-*/
-
-static void
-hex8 (const char *label, unsigned char x)
-{
-       printf ("\t%s: 0x%02x\n", label, (unsigned char) x);
-}
-
-static void
-hex16 (const char *label, guint16 x)
-{
-       printf ("\t%s: 0x%04x\n", label, x);
-}
-
-static void
-hex32 (const char *label, guint32 x)
-{
-       printf ("\t%s: 0x%08x\n", label, x);
-}
-
-static void
-dump_coff_header (MonoCOFFHeader *coff)
-{
-       printf ("\nCOFF Header:\n");
-       hex16 ("                Machine", coff->coff_machine);
-       hex16 ("               Sections", coff->coff_sections);
-       hex32 ("             Time stamp", coff->coff_time);
-       hex32 ("Pointer to Symbol Table", coff->coff_symptr);
-       hex32 ("           Symbol Count", coff->coff_symcount);
-       hex16 ("   Optional Header Size", coff->coff_opt_header_size);
-       hex16 ("        Characteristics", coff->coff_attributes);
-
-}
-
-static void
-dump_pe_header (MonoPEHeader *pe)
-{
-       printf ("\nPE Header:\n");
-       hex16 ("         Magic (0x010b)", pe->pe_magic);
-       hex8  ("             LMajor (6)", pe->pe_major);
-       hex8  ("             LMinor (0)", pe->pe_minor);
-       hex32 ("              Code Size", pe->pe_code_size);
-       hex32 ("  Initialized Data Size", pe->pe_data_size);
-       hex32 ("Uninitialized Data Size", pe->pe_uninit_data_size);
-       hex32 ("        Entry Point RVA", pe->pe_rva_entry_point);
-       hex32 ("          Code Base RVA", pe->pe_rva_code_base);
-       hex32 ("          Data Base RVA", pe->pe_rva_data_base);
-       printf ("\n");
-}
-
-static void
-dump_nt_header (MonoPEHeaderNT *nt)
-{
-       printf ("\nNT Header:\n");
-
-       hex32 ("   Image Base (0x400000)", nt->pe_image_base);
-       hex32 ("Section Alignment (8192)", nt->pe_section_align);
-       hex32 ("   File Align (512/4096)", nt->pe_file_alignment);
-       hex16 ("            OS Major (4)", nt->pe_os_major);
-       hex16 ("            OS Minor (0)", nt->pe_os_minor);
-       hex16 ("          User Major (0)", nt->pe_user_major);
-       hex16 ("          User Minor (0)", nt->pe_user_minor);
-       hex16 ("        Subsys major (4)", nt->pe_subsys_major);
-       hex16 ("        Subsys minor (0)", nt->pe_subsys_minor);
-       hex32 ("               Reserverd", nt->pe_reserved_1);
-       hex32 ("              Image Size", nt->pe_image_size);
-       hex32 ("             Header Size", nt->pe_header_size);
-       hex32 ("            Checksum (0)", nt->pe_checksum);
-       hex16 ("               Subsystem", nt->pe_subsys_required);
-       hex16 ("           DLL Flags (0)", nt->pe_dll_flags);
-       hex32 (" Stack Reserve Size (1M)", nt->pe_stack_reserve);
-       hex32 ("Stack commit Size (4096)", nt->pe_stack_commit);
-       hex32 ("  Heap Reserve Size (1M)", nt->pe_heap_reserve);
-       hex32 (" Heap Commit Size (4096)", nt->pe_heap_commit);
-       hex32 ("      Loader flags (0x1)", nt->pe_loader_flags);
-       hex32 ("   Data Directories (16)", nt->pe_data_dir_count);
-}
-
-static void
-dent (const char *label, MonoPEDirEntry de)
-{
-       printf ("\t%s: 0x%08x [0x%08x]\n", label, de.rva, de.size);
-}
-
-static void
-dump_blob (const char *desc, const char* p, guint32 size)
-{
-       int i;
-
-       printf ("%s", desc);
-       if (!p) {
-               printf (" none\n");
-               return;
-       }
-
-       for (i = 0; i < size; ++i) {
-               if (!(i % 16))
-                       printf ("\n\t");
-               printf (" %02X", p [i] & 0xFF);
-       }
-       printf ("\n");
-}
-
-static void
-dump_public_key (MonoImage *m)
-{
-       guint32 size;
-       const char *p;
-
-       p = mono_image_get_public_key (m, &size);
-       dump_blob ("\nPublic key:", p, size);
-}
-
-static void
-dump_strong_name (MonoImage *m)
-{
-       guint32 size;
-       const char *p;
-
-       p = mono_image_get_strong_name (m, &size);
-       dump_blob ("\nStrong name:", p, size);
-}
-
-static void
-dump_datadir (MonoPEDatadir *dd)
-{
-       printf ("\nData directories:\n");
-       dent ("     Export Table", dd->pe_export_table);
-       dent ("     Import Table", dd->pe_import_table);
-       dent ("   Resource Table", dd->pe_resource_table);
-       dent ("  Exception Table", dd->pe_exception_table);
-       dent ("Certificate Table", dd->pe_certificate_table);
-       dent ("      Reloc Table", dd->pe_reloc_table);
-       dent ("            Debug", dd->pe_debug);
-       dent ("        Copyright", dd->pe_copyright);
-       dent ("       Global Ptr", dd->pe_global_ptr);
-       dent ("        TLS Table", dd->pe_tls_table);
-       dent ("Load Config Table", dd->pe_load_config_table);
-       dent ("     Bound Import", dd->pe_bound_import);
-       dent ("              IAT", dd->pe_iat);
-       dent ("Delay Import Desc", dd->pe_delay_import_desc);
-       dent ("       CLI Header", dd->pe_cli_header);
-}
-
-static void
-dump_dotnet_header (MonoDotNetHeader *header)
-{
-       dump_coff_header (&header->coff);
-       dump_pe_header (&header->pe);
-       dump_nt_header (&header->nt);
-       dump_datadir (&header->datadir);
-}
-
-static void
-dump_section_table (MonoSectionTable *st)
-{
-       guint32 flags = st->st_flags;
-               
-       printf ("\n\tName: %s\n", st->st_name);
-       hex32 ("   Virtual Size", st->st_virtual_size);
-       hex32 ("Virtual Address", st->st_virtual_address);
-       hex32 ("  Raw Data Size", st->st_raw_data_size);
-       hex32 ("   Raw Data Ptr", st->st_raw_data_ptr);
-       hex32 ("      Reloc Ptr", st->st_reloc_ptr);
-       hex32 ("     LineNo Ptr", st->st_lineno_ptr);
-       hex16 ("    Reloc Count", st->st_reloc_count);
-       hex16 ("     Line Count", st->st_line_count);
-
-       printf ("\tFlags: %s%s%s%s%s%s%s%s%s%s\n",
-               (flags & SECT_FLAGS_HAS_CODE) ? "code, " : "",
-               (flags & SECT_FLAGS_HAS_INITIALIZED_DATA) ? "data, " : "",
-               (flags & SECT_FLAGS_HAS_UNINITIALIZED_DATA) ? "bss, " : "",
-               (flags & SECT_FLAGS_MEM_DISCARDABLE) ? "discard, " : "",
-               (flags & SECT_FLAGS_MEM_NOT_CACHED) ? "nocache, " : "",
-               (flags & SECT_FLAGS_MEM_NOT_PAGED) ? "nopage, " : "",
-               (flags & SECT_FLAGS_MEM_SHARED) ? "shared, " : "",
-               (flags & SECT_FLAGS_MEM_EXECUTE) ? "exec, " : "",
-               (flags & SECT_FLAGS_MEM_READ) ? "read, " : "",
-               (flags & SECT_FLAGS_MEM_WRITE) ? "write" : "");
-}
-
-static void
-dump_sections (MonoCLIImageInfo *iinfo)
-{
-       const int top = iinfo->cli_header.coff.coff_sections;
-       int i;
-       
-       for (i = 0; i < top; i++)
-               dump_section_table (&iinfo->cli_section_tables [i]);
-}
-
-static void
-dump_cli_header (MonoCLIHeader *ch)
-{
-       printf ("\n");
-       printf ("          CLI header size: %d\n", ch->ch_size);
-       printf ("         Runtime required: %d.%d\n", ch->ch_runtime_major, ch->ch_runtime_minor);
-       printf ("                    Flags: %s, %s, %s, %s\n",
-               (ch->ch_flags & CLI_FLAGS_ILONLY ? "ilonly" : "contains native"),
-               (ch->ch_flags & CLI_FLAGS_32BITREQUIRED ? "32bits" : "32/64"),
-               (ch->ch_flags & CLI_FLAGS_TRACKDEBUGDATA ? "trackdebug" : "no-trackdebug"),
-               (ch->ch_flags & CLI_FLAGS_STRONGNAMESIGNED ? "strongnamesigned" : "notsigned"));
-       dent   ("         Metadata", ch->ch_metadata);
-       hex32  ("Entry Point Token", ch->ch_entry_point);
-       dent   ("     Resources at", ch->ch_resources);
-       dent   ("   Strong Name at", ch->ch_strong_name);
-       dent   ("  Code Manager at", ch->ch_code_manager_table);
-       dent   ("  VTableFixups at", ch->ch_vtable_fixups);
-       dent   ("     EAT jumps at", ch->ch_export_address_table_jumps);
-}      
-
-static void
-dsh (const char *label, MonoImage *meta, MonoStreamHeader *sh)
-{
-       printf ("%s: 0x%08x - 0x%08x [%d == 0x%08x]\n",
-               label,
-               (int)(sh->data - meta->raw_metadata), (int)(sh->data + sh->size - meta->raw_metadata),
-               sh->size, sh->size);
-}
-
-static void
-dump_metadata_header (MonoImage *meta)
-{
-       printf ("\nMetadata header:\n");
-       printf ("           Version: %d.%d\n", meta->md_version_major, meta->md_version_minor);
-       printf ("    Version string: %s\n", meta->version);
-}
-
-static void
-dump_metadata_ptrs (MonoImage *meta)
-{
-       printf ("\nMetadata pointers:\n");
-       dsh ("\tTables (#~)", meta, &meta->heap_tables);
-       dsh ("\t    Strings", meta, &meta->heap_strings);
-       dsh ("\t       Blob", meta, &meta->heap_blob);
-       dsh ("\tUser string", meta, &meta->heap_us);
-       dsh ("\t       GUID", meta, &meta->heap_guid);
-}
-
-static void
-dump_metadata (MonoImage *meta)
-{
-       int table;
-
-       dump_metadata_header (meta);
-
-       dump_metadata_ptrs (meta);
-
-       printf ("Rows:\n");
-       for (table = 0; table < MONO_TABLE_NUM; table++){
-               if (meta->tables [table].rows == 0)
-                       continue;
-               printf ("Table %s: %d records (%d bytes, at %x)\n",
-                       mono_meta_table_name (table),
-                       meta->tables [table].rows,
-                       meta->tables [table].row_size,
-                       (unsigned int)(meta->tables [table].base - meta->raw_data)
-                       );
-       }
-}
-
-static void
-dump_methoddef (MonoImage *metadata, guint32 token)
-{
-       const char *loc;
-
-       if (!token)
-               return;
-       loc = mono_metadata_locate_token (metadata, token);
-
-       printf ("RVA for Entry Point: 0x%08x\n", read32 (loc));
-}
-
-static void
-dump_dotnet_iinfo (MonoImage *image)
-{
-       MonoCLIImageInfo *iinfo = (MonoCLIImageInfo *)image->image_info;
-
-       dump_dotnet_header (&iinfo->cli_header);
-       dump_sections (iinfo);
-       dump_cli_header (&iinfo->cli_cli_header);
-       dump_strong_name (image);
-       dump_public_key (image);
-       dump_metadata (image);
-
-       dump_methoddef (image, iinfo->cli_cli_header.ch_entry_point);
-}
-
-static int
-dump_verify_info (MonoImage *image, int flags)
-{
-       GSList *errors, *tmp;
-       int count = 0, verifiable = 0;
-       const char* desc [] = {
-               "Ok", "Error", "Warning", NULL, "CLS", NULL, NULL, NULL, "Not Verifiable"
-       };
-
-       if (verify_code) { /* verify code */
-               int i;
-               MonoTableInfo *m = &image->tables [MONO_TABLE_METHOD];
-
-               for (i = 0; i < m->rows; ++i) {
-                       MonoMethod *method;
-                       MonoError error;
-
-                       method = mono_get_method_checked (image, MONO_TOKEN_METHOD_DEF | (i+1), NULL, NULL, &error);
-                       if (!method) {
-                               g_print ("Warning: Cannot lookup method with token 0x%08x due to %s\n", i + 1, mono_error_get_message (&error));
-                               mono_error_cleanup (&error);
-                               continue;
-                       }
-                       errors = mono_method_verify (method, flags);
-                       if (errors) {
-                               MonoClass *klass = mono_method_get_class (method);
-                               char *name = mono_type_full_name (&klass->byval_arg);
-                               if (mono_method_signature (method) == NULL) {
-                                       g_print ("In method: %s::%s(ERROR)\n", name, mono_method_get_name (method));
-                               } else {
-                                       char *sig;
-                                       sig = mono_signature_get_desc (mono_method_signature (method), FALSE);  
-                                       g_print ("In method: %s::%s(%s)\n", name, mono_method_get_name (method), sig);
-                                       g_free (sig);
-                               }
-                               g_free (name);
-                       }
-
-                       for (tmp = errors; tmp; tmp = tmp->next) {
-                               MonoVerifyInfo *info = (MonoVerifyInfo *)tmp->data;
-                               g_print ("%s: %s\n", desc [info->status], info->message);
-                               if (info->status == MONO_VERIFY_ERROR) {
-                                       count++;
-                                       verifiable = 3;
-                               }
-                               if(info->status == MONO_VERIFY_NOT_VERIFIABLE) {
-                                       if (verifiable < 2)
-                                               verifiable = 2; 
-                               }
-                       }
-                       mono_free_verify_list (errors);
-               }
-       }
-
-       if (count)
-               g_print ("Error count: %d\n", count);
-       return verifiable;
-}
-
-static void
-usage (void)
-{
-       printf ("Usage is: pedump [--verify error,warn,cls,all,code,fail-on-verifiable,non-strict,valid-only,metadata] file.exe\n");
-       exit (1);
-}
-
-static int
-verify_image_file (const char *fname)
-{
-       GSList *errors = NULL, *tmp;
-       MonoImage *image;
-       MonoTableInfo *table;
-       MonoAssembly *assembly;
-       MonoImageOpenStatus status;
-       int i, count = 0;
-       const char* desc [] = {
-               "Ok", "Error", "Warning", NULL, "CLS", NULL, NULL, NULL, "Not Verifiable"
-       };
-
-       image = mono_image_open_raw (fname, &status);
-       if (!image) {
-               printf ("Could not open %s\n", fname);
-               return 1;
-       }
-
-       if (!mono_verifier_verify_pe_data (image, &errors))
-               goto invalid_image;
-
-       if (!mono_image_load_pe_data (image)) {
-               printf ("Could not load pe data for assembly %s\n", fname);
-               return 1;
-       }
-
-       if (!mono_verifier_verify_cli_data (image, &errors))
-               goto invalid_image;
-
-       if (!mono_image_load_cli_data (image)) {
-               printf ("Could not load cli data for assembly %s\n", fname);
-               return 1;
-       }
-
-       if (!mono_verifier_verify_table_data (image, &errors))
-               goto invalid_image;
-
-       mono_image_load_names (image);
-
-       /*fake an assembly for class loading to work*/
-       assembly = g_new0 (MonoAssembly, 1);
-       assembly->in_gac = FALSE;
-       assembly->image = image;
-       image->assembly = assembly;
-       mono_assembly_fill_assembly_name (image, &assembly->aname);
-
-       /*Finish initializing the runtime*/
-       mono_install_assembly_load_hook (pedump_assembly_load_hook, NULL);
-       mono_install_assembly_search_hook (pedump_assembly_search_hook, NULL);
-
-       mono_init_version ("pedump", image->version);
-
-       mono_install_assembly_preload_hook (pedump_preload, GUINT_TO_POINTER (FALSE));
-
-       mono_icall_init ();
-       mono_marshal_init ();
-
-
-       if (!verify_partial_md && !mono_verifier_verify_full_table_data (image, &errors))
-               goto invalid_image;
-
-
-       table = &image->tables [MONO_TABLE_TYPEDEF];
-       for (i = 1; i <= table->rows; ++i) {
-               MonoError error;
-               guint32 token = i | MONO_TOKEN_TYPE_DEF;
-               MonoClass *klass = mono_class_get_checked (image, token, &error);
-               if (!klass) {
-                       printf ("Could not load class with token %x due to %s\n", token, mono_error_get_message (&error));
-                       mono_error_cleanup (&error);
-                       continue;
-               }
-               mono_class_init (klass);
-               if (mono_class_has_failure (klass)) {
-                       printf ("Error verifying class(0x%08x) %s.%s a type load error happened\n", token, klass->name_space, klass->name);
-                       ++count;
-               }
-
-               mono_class_setup_vtable (klass);
-               if (mono_class_has_failure (klass)) {
-                       printf ("Error verifying class(0x%08x) %s.%s a type load error happened\n", token, klass->name_space, klass->name);
-                       ++count;
-               }
-       }
-       if (count)
-               return 5;
-       return 0;
-
-invalid_image:
-       for (tmp = errors; tmp; tmp = tmp->next) {
-               MonoVerifyInfo *info = (MonoVerifyInfo *)tmp->data;
-               g_print ("%s: %s\n", desc [info->status], info->message);
-               if (info->status == MONO_VERIFY_ERROR)
-                       count++;
-       }
-       mono_free_verify_list (errors);
-       if (count)
-               g_print ("Error count: %d\n", count);
-       return 1;
-}
-
-static gboolean
-try_load_from (MonoAssembly **assembly, const gchar *path1, const gchar *path2,
-                                       const gchar *path3, const gchar *path4, gboolean refonly)
-{
-       gchar *fullpath;
-
-       *assembly = NULL;
-       fullpath = g_build_filename (path1, path2, path3, path4, NULL);
-       if (g_file_test (fullpath, G_FILE_TEST_IS_REGULAR))
-               *assembly = mono_assembly_open_full (fullpath, NULL, refonly);
-
-       g_free (fullpath);
-       return (*assembly != NULL);
-}
-
-static MonoAssembly *
-real_load (gchar **search_path, const gchar *culture, const gchar *name, gboolean refonly)
-{
-       MonoAssembly *result = NULL;
-       gchar **path;
-       gchar *filename;
-       const gchar *local_culture;
-       gint len;
-
-       if (!culture || *culture == '\0') {
-               local_culture = "";
-       } else {
-               local_culture = culture;
-       }
-
-       filename =  g_strconcat (name, ".dll", NULL);
-       len = strlen (filename);
-
-       for (path = search_path; *path; path++) {
-               if (**path == '\0')
-                       continue; /* Ignore empty ApplicationBase */
-
-               /* See test cases in bug #58992 and bug #57710 */
-               /* 1st try: [culture]/[name].dll (culture may be empty) */
-               strcpy (filename + len - 4, ".dll");
-               if (try_load_from (&result, *path, local_culture, "", filename, refonly))
-                       break;
-
-               /* 2nd try: [culture]/[name].exe (culture may be empty) */
-               strcpy (filename + len - 4, ".exe");
-               if (try_load_from (&result, *path, local_culture, "", filename, refonly))
-                       break;
-
-               /* 3rd try: [culture]/[name]/[name].dll (culture may be empty) */
-               strcpy (filename + len - 4, ".dll");
-               if (try_load_from (&result, *path, local_culture, name, filename, refonly))
-                       break;
-
-               /* 4th try: [culture]/[name]/[name].exe (culture may be empty) */
-               strcpy (filename + len - 4, ".exe");
-               if (try_load_from (&result, *path, local_culture, name, filename, refonly))
-                       break;
-       }
-
-       g_free (filename);
-       return result;
-}
-
-/*
- * Try to load referenced assemblies from assemblies_path.
- */
-static MonoAssembly *
-pedump_preload (MonoAssemblyName *aname,
-                                gchar **assemblies_path,
-                                gpointer user_data)
-{
-       MonoAssembly *result = NULL;
-       gboolean refonly = GPOINTER_TO_UINT (user_data);
-
-       if (assemblies_path && assemblies_path [0] != NULL) {
-               result = real_load (assemblies_path, aname->culture, aname->name, refonly);
-       }
-
-       return result;
-}
-
-static GList *loaded_assemblies = NULL;
-
-static void
-pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data)
-{
-       loaded_assemblies = g_list_prepend (loaded_assemblies, assembly);
-}
-
-static MonoAssembly *
-pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data)
-{
-        GList *tmp;
-
-       for (tmp = loaded_assemblies; tmp; tmp = tmp->next) {
-               MonoAssembly *ass = (MonoAssembly *)tmp->data;
-               if (mono_assembly_names_equal (aname, &ass->aname))
-                      return ass;
-       }
-       return NULL;
-}
-
-#define VALID_ONLY_FLAG 0x08000000
-#define VERIFY_CODE_ONLY MONO_VERIFY_ALL + 1 
-#define VERIFY_METADATA_ONLY VERIFY_CODE_ONLY + 1
-#define VERIFY_PARTIAL_METADATA VERIFY_CODE_ONLY + 2
-
-int
-main (int argc, char *argv [])
-{
-       int image_result = 0;
-       MonoImage *image;
-       char *file = NULL;
-       char *flags = NULL;
-       MiniVerifierMode verifier_mode = MONO_VERIFIER_MODE_VERIFIABLE;
-       const char *flag_desc [] = {"error", "warn", "cls", "all", "code", "fail-on-verifiable", "non-strict", "valid-only", "metadata", "partial-md", NULL};
-       guint flag_vals [] = {MONO_VERIFY_ERROR, MONO_VERIFY_WARNING, MONO_VERIFY_CLS, MONO_VERIFY_ALL, VERIFY_CODE_ONLY, MONO_VERIFY_FAIL_FAST, MONO_VERIFY_NON_STRICT, VALID_ONLY_FLAG, VERIFY_METADATA_ONLY, VERIFY_PARTIAL_METADATA, 0};
-       int i, verify_flags = MONO_VERIFY_REPORT_ALL_ERRORS, run_new_metadata_verifier = 0;
-       
-       for (i = 1; i < argc; i++){
-               if (argv [i][0] != '-'){
-                       file = argv [i];
-                       continue;
-               }
-
-               if (strcmp (argv [i], "--help") == 0)
-                       usage ();
-               else if (strcmp (argv [i], "--verify") == 0) {
-                       verify_pe = 1;
-                       dump_data = 0;
-                       ++i;
-                       flags = argv [i];
-               } else {
-                       usage ();
-               }
-       }
-       
-       if (!file)
-               usage ();
-
-#ifndef DISABLE_PERFCOUNTERS
-       mono_perfcounters_init ();
-#endif
-       mono_counters_init ();
-       mono_metadata_init ();
-       mono_images_init ();
-       mono_assemblies_init ();
-       mono_loader_init ();
-       if (verify_pe) {
-               char *tok = strtok (flags, ",");
-
-               verify_metadata = 1;
-               verify_code = 0;
-               while (tok) {
-                       for (i = 0; flag_desc [i]; ++i) {
-                               if (strcmp (tok, flag_desc [i]) == 0) {
-                                       if (flag_vals [i] == VERIFY_CODE_ONLY) {
-                                               verify_metadata = 0;
-                                               verify_code = 1;
-                                       } else if(flag_vals [i] == MONO_VERIFY_ALL) {
-                                               verify_code = 1;
-                                       } else if(flag_vals [i] == VERIFY_METADATA_ONLY) {
-                                               verify_metadata = 0;
-                                               run_new_metadata_verifier = 1;
-                                       } else if(flag_vals [i] == VERIFY_PARTIAL_METADATA) {
-                                               verify_partial_md = 1;
-                                       }
-                                       if (flag_vals [i] == VALID_ONLY_FLAG)
-                                               verifier_mode = MONO_VERIFIER_MODE_VALID;
-                                       else
-                                               verify_flags |= flag_vals [i];
-                                       break;
-                               }
-                       }
-                       if (!flag_desc [i])
-                               g_print ("Unknown verify flag %s\n", tok);
-                       tok = strtok (NULL, ",");
-               }
-
-               mono_verifier_set_mode (verifier_mode);
-               /**/
-       }
-
-       if (verify_pe || run_new_metadata_verifier) {
-               run_new_metadata_verifier = 1;
-       }
-       
-       if (run_new_metadata_verifier) {
-               mono_verifier_set_mode (verifier_mode);
-
-               image_result = verify_image_file (file);
-               if (image_result == 1 || !verify_code)
-                       return image_result;
-       }
-
-       image = mono_image_open (file, NULL);
-       if (!image){
-               fprintf (stderr, "Cannot open image %s\n", file);
-               exit (1);
-       }
-
-       if (dump_data)
-               dump_dotnet_iinfo (image);
-       if (verify_pe) {
-               MonoAssembly *assembly;
-               MonoImage *image;
-               MonoImageOpenStatus status;
-               int code_result;
-
-               mono_verifier_set_mode (verifier_mode);
-
-               assembly = mono_assembly_open (file, NULL);
-               /*fake an assembly for netmodules so the verifier works*/
-               if (!assembly && (image = mono_image_open (file, &status)) && image->tables [MONO_TABLE_ASSEMBLY].rows == 0) {
-                       assembly = g_new0 (MonoAssembly, 1);
-                       assembly->in_gac = FALSE;
-                       assembly->image = image;
-                       image->assembly = assembly;
-               }
-
-               if (!assembly) {
-                       g_print ("Could not open assembly %s\n", file);
-                       return 4;
-               }
-
-               code_result = dump_verify_info (assembly->image, verify_flags);
-               return code_result ? code_result : image_result;
-       } else
-               mono_image_close (image);
-       
-       return 0;
-}
-
index d74ca084f10e586c0521ee9d848db9c1dcf42fbf..138bd98553b4a5d2434edbf760af5e32602f5fb5 100644 (file)
@@ -693,6 +693,7 @@ ves_icall_System_Diagnostics_Process_ShellExecuteEx_internal (MonoProcessStartIn
 MonoBoolean
 ves_icall_System_Diagnostics_Process_CreateProcess_internal (MonoProcessStartInfo *proc_start_info, HANDLE stdin_handle, HANDLE stdout_handle, HANDLE stderr_handle, MonoProcInfo *process_info)
 {
+       MonoError error G_GNUC_UNUSED;
        gboolean ret;
        gunichar2 *dir;
        STARTUPINFO startinfo={0};
@@ -727,7 +728,11 @@ ves_icall_System_Diagnostics_Process_CreateProcess_internal (MonoProcessStartInf
        free_shell_path = FALSE;
        if (cmd) {
                gchar *newcmd, *tmp;
-               tmp = mono_string_to_utf8 (cmd);
+               tmp = mono_string_to_utf8_checked (cmd, &error);
+               if (mono_error_set_pending_exception (&error)) {
+                       g_free (spath);
+                       return NULL;
+               }
                newcmd = g_strdup_printf ("%s %s", spath, tmp);
                cmd = mono_string_new_wrapper (newcmd);
                g_free (tmp);
index 5488e7df3d8432c5e3e05ba91dd931624867290d..2dd53c18b14fa153f37d63e368fb6cfebefe366e 100644 (file)
@@ -294,9 +294,9 @@ mono_reflection_init (void)
 static inline void
 dynamic_image_lock (MonoDynamicImage *image)
 {
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        mono_image_lock ((MonoImage*)image);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 }
 
 static inline void
@@ -527,11 +527,13 @@ string_heap_insert (MonoDynamicStream *sh, const char *str)
 }
 
 static guint32
-string_heap_insert_mstring (MonoDynamicStream *sh, MonoString *str)
+string_heap_insert_mstring (MonoDynamicStream *sh, MonoString *str, MonoError *error)
 {
        MONO_REQ_GC_UNSAFE_MODE;
 
-       char *name = mono_string_to_utf8 (str);
+       mono_error_init (error);
+       char *name = mono_string_to_utf8_checked (str, error);
+       return_val_if_nok (error, -1);
        guint32 idx;
        idx = string_heap_insert (sh, name);
        g_free (name);
@@ -1264,7 +1266,12 @@ method_encode_code (MonoDynamicImage *assembly, ReflectionMethodBuilder *mb, Mon
        } else {
                code = mb->code;
                if (code == NULL){
-                       char *name = mono_string_to_utf8 (mb->name);
+                       MonoError inner_error;
+                       char *name = mono_string_to_utf8_checked (mb->name, &inner_error);
+                       if (!is_ok (&inner_error)) {
+                               name = g_strdup ("");
+                               mono_error_cleanup (&inner_error);
+                       }
                        char *str = g_strdup_printf ("Method %s does not have any IL associated", name);
                        mono_error_set_argument (error, NULL, "a method does not have any IL associated");
                        g_free (str);
@@ -1662,7 +1669,8 @@ mono_image_basic_method (ReflectionMethodBuilder *mb, MonoDynamicImage *assembly
        *mb->table_idx = table->next_idx ++;
        g_hash_table_insert (assembly->method_to_table_idx, mb->mhandle, GUINT_TO_POINTER ((*mb->table_idx)));
        values = table->values + *mb->table_idx * MONO_METHOD_SIZE;
-       values [MONO_METHOD_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->name);
+       values [MONO_METHOD_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->name, error);
+       return_val_if_nok (error, FALSE);
        values [MONO_METHOD_FLAGS] = mb->attrs;
        values [MONO_METHOD_IMPLFLAGS] = mb->iattrs;
        values [MONO_METHOD_SIGNATURE] = method_builder_encode_signature (assembly, mb, error);
@@ -1697,7 +1705,8 @@ mono_image_basic_method (ReflectionMethodBuilder *mb, MonoDynamicImage *assembly
                                values [MONO_PARAM_FLAGS] = pb->attrs;
                                values [MONO_PARAM_SEQUENCE] = i;
                                if (pb->name != NULL) {
-                                       values [MONO_PARAM_NAME] = string_heap_insert_mstring (&assembly->sheap, pb->name);
+                                       values [MONO_PARAM_NAME] = string_heap_insert_mstring (&assembly->sheap, pb->name, error);
+                                       return_val_if_nok (error, FALSE);
                                } else {
                                        values [MONO_PARAM_NAME] = 0;
                                }
@@ -1926,11 +1935,15 @@ mono_image_get_method_info (MonoReflectionMethodBuilder *mb, MonoDynamicImage *a
                
                values [MONO_IMPLMAP_FLAGS] = (mb->native_cc << 8) | ncharset | extra_flags;
                values [MONO_IMPLMAP_MEMBER] = (mb->table_idx << 1) | 1; /* memberforwarded: method */
-               if (mb->dllentry)
-                       values [MONO_IMPLMAP_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->dllentry);
-               else
-                       values [MONO_IMPLMAP_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->name);
-               moduleref = string_heap_insert_mstring (&assembly->sheap, mb->dll);
+               if (mb->dllentry) {
+                       values [MONO_IMPLMAP_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->dllentry, error);
+                       return_val_if_nok (error, FALSE);
+               } else {
+                       values [MONO_IMPLMAP_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->name, error);
+                       return_val_if_nok (error, FALSE);
+               }
+               moduleref = string_heap_insert_mstring (&assembly->sheap, mb->dll, error);
+               return_val_if_nok (error, FALSE);
                if (!(values [MONO_IMPLMAP_SCOPE] = find_index_in_table (assembly, MONO_TABLE_MODULEREF, MONO_MODULEREF_NAME, moduleref))) {
                        table = &assembly->tables [MONO_TABLE_MODULEREF];
                        table->rows ++;
@@ -2233,7 +2246,11 @@ encode_marshal_blob (MonoDynamicImage *assembly, MonoReflectionMarshal *minfo, M
                break;
        case MONO_NATIVE_CUSTOM:
                if (minfo->guid) {
-                       str = mono_string_to_utf8 (minfo->guid);
+                       str = mono_string_to_utf8_checked (minfo->guid, error);
+                       if (!is_ok (error)) {
+                               sigbuffer_free (&buf);
+                               return 0;
+                       }
                        len = strlen (str);
                        sigbuffer_add_value (&buf, len);
                        sigbuffer_add_mem (&buf, str, len);
@@ -2252,8 +2269,13 @@ encode_marshal_blob (MonoDynamicImage *assembly, MonoReflectionMarshal *minfo, M
                                        return 0;
                                }
                                str = type_get_fully_qualified_name (marshaltype);
-                       } else
-                               str = mono_string_to_utf8 (minfo->marshaltype);
+                       } else {
+                               str = mono_string_to_utf8_checked (minfo->marshaltype, error);
+                               if (!is_ok (error)) {
+                                       sigbuffer_free (&buf);
+                                       return 0;
+                               }
+                       }
                        len = strlen (str);
                        sigbuffer_add_value (&buf, len);
                        sigbuffer_add_mem (&buf, str, len);
@@ -2263,7 +2285,11 @@ encode_marshal_blob (MonoDynamicImage *assembly, MonoReflectionMarshal *minfo, M
                        sigbuffer_add_value (&buf, 0);
                }
                if (minfo->mcookie) {
-                       str = mono_string_to_utf8 (minfo->mcookie);
+                       str = mono_string_to_utf8_checked (minfo->mcookie, error);
+                       if (!is_ok (error)) {
+                               sigbuffer_free (&buf);
+                               return 0;
+                       }
                        len = strlen (str);
                        sigbuffer_add_value (&buf, len);
                        sigbuffer_add_mem (&buf, str, len);
@@ -2297,7 +2323,8 @@ mono_image_get_field_info (MonoReflectionFieldBuilder *fb, MonoDynamicImage *ass
        fb->table_idx = table->next_idx ++;
        g_hash_table_insert (assembly->field_to_table_idx, fb->handle, GUINT_TO_POINTER (fb->table_idx));
        values = table->values + fb->table_idx * MONO_FIELD_SIZE;
-       values [MONO_FIELD_NAME] = string_heap_insert_mstring (&assembly->sheap, fb->name);
+       values [MONO_FIELD_NAME] = string_heap_insert_mstring (&assembly->sheap, fb->name, error);
+       return_if_nok (error);
        values [MONO_FIELD_FLAGS] = fb->attrs;
        values [MONO_FIELD_SIGNATURE] = field_encode_signature (assembly, fb, error);
        return_if_nok (error);
@@ -2433,7 +2460,8 @@ mono_image_get_property_info (MonoReflectionPropertyBuilder *pb, MonoDynamicImag
        table = &assembly->tables [MONO_TABLE_PROPERTY];
        pb->table_idx = table->next_idx ++;
        values = table->values + pb->table_idx * MONO_PROPERTY_SIZE;
-       values [MONO_PROPERTY_NAME] = string_heap_insert_mstring (&assembly->sheap, pb->name);
+       values [MONO_PROPERTY_NAME] = string_heap_insert_mstring (&assembly->sheap, pb->name, error);
+       return_if_nok (error);
        values [MONO_PROPERTY_FLAGS] = pb->attrs;
        values [MONO_PROPERTY_TYPE] = property_encode_signature (assembly, pb, error);
        return_if_nok (error);
@@ -2494,7 +2522,8 @@ mono_image_get_event_info (MonoReflectionEventBuilder *eb, MonoDynamicImage *ass
        table = &assembly->tables [MONO_TABLE_EVENT];
        eb->table_idx = table->next_idx ++;
        values = table->values + eb->table_idx * MONO_EVENT_SIZE;
-       values [MONO_EVENT_NAME] = string_heap_insert_mstring (&assembly->sheap, eb->name);
+       values [MONO_EVENT_NAME] = string_heap_insert_mstring (&assembly->sheap, eb->name, error);
+       return_if_nok (error);
        values [MONO_EVENT_FLAGS] = eb->attrs;
        MonoType *ebtype = mono_reflection_type_get_handle (eb->type, error);
        return_if_nok (error);
@@ -2977,7 +3006,8 @@ mono_image_get_methodref_token_for_methodbuilder (MonoDynamicImage *assembly, Mo
                parent = mono_image_typedef_or_ref (assembly, t);
        }
 
-       char *name = mono_string_to_utf8 (method->name);
+       char *name = mono_string_to_utf8_checked (method->name, error);
+       return_val_if_nok (error, 0);
 
        token = mono_image_add_memberef_row (assembly, parent, name, sig);
        g_free (name);
@@ -3127,7 +3157,8 @@ mono_image_get_ctorbuilder_token (MonoDynamicImage *assembly, MonoReflectionCtor
                parent = mono_image_typedef_or_ref (assembly, type);
        }
        
-       name = mono_string_to_utf8 (rmb.name);
+       name = mono_string_to_utf8_checked (rmb.name, error);
+       return_val_if_nok (error, 0);
        sig = method_builder_encode_signature (assembly, &rmb, error);
        return_val_if_nok (error, 0);
 
@@ -3228,7 +3259,8 @@ mono_image_get_field_on_inst_token (MonoDynamicImage *assembly, MonoReflectionFi
 
                guint32 sig_token = field_encode_signature (assembly, fb, error);
                return_val_if_nok (error, 0);
-               name = mono_string_to_utf8 (fb->name);
+               name = mono_string_to_utf8_checked (fb->name, error);
+               return_val_if_nok (error, 0);
                token = mono_image_get_memberref_token (assembly, &klass->byval_arg, name, sig_token);
                g_free (name);          
        } else if (is_sr_mono_field (mono_object_class (f->fb))) {
@@ -3284,7 +3316,8 @@ mono_image_get_ctor_on_inst_token (MonoDynamicImage *assembly, MonoReflectionCto
                sig = method_builder_encode_signature (assembly, &rmb, error);
                return_val_if_nok (error, 0);
 
-               name = mono_string_to_utf8 (rmb.name);
+               name = mono_string_to_utf8_checked (rmb.name, error);
+               return_val_if_nok (error, 0);
 
                token = mono_image_get_memberref_token (assembly, &klass->byval_arg, name, sig);
                g_free (name);
@@ -3396,7 +3429,8 @@ mono_image_get_method_on_inst_token (MonoDynamicImage *assembly, MonoReflectionM
                sig = method_builder_encode_signature (assembly, &rmb, error);
                return_val_if_nok (error, 0);
 
-               name = mono_string_to_utf8 (rmb.name);
+               name = mono_string_to_utf8_checked (rmb.name, error);
+               return_val_if_nok (error, 0);
 
                token = mono_image_get_memberref_token (assembly, &klass->byval_arg, name, sig);
                g_free (name);          
@@ -3713,7 +3747,8 @@ mono_image_get_generic_field_token (MonoDynamicImage *assembly, MonoReflectionFi
 
        table = &assembly->tables [MONO_TABLE_MEMBERREF];
 
-       name = mono_string_to_utf8 (fb->name);
+       name = mono_string_to_utf8_checked (fb->name, error);
+       return_val_if_nok (error, 0);
 
        if (assembly->save) {
                alloc_table (table, table->rows + 1);
@@ -3879,7 +3914,9 @@ mono_image_get_array_token (MonoDynamicImage *assembly, MonoReflectionArrayMetho
                        goto fail;
        }
 
-       name = mono_string_to_utf8 (m->name);
+       name = mono_string_to_utf8_checked (m->name, error);
+       if (!is_ok (error))
+               goto fail;
        for (tmp = assembly->array_methods; tmp; tmp = tmp->next) {
                am = (ArrayMethod *)tmp->data;
                if (strcmp (name, am->name) == 0 && 
@@ -3925,12 +3962,14 @@ mono_image_get_type_info (MonoDomain *domain, MonoReflectionTypeBuilder *tb, Mon
        table = &assembly->tables [MONO_TABLE_TYPEDEF];
        values = table->values + tb->table_idx * MONO_TYPEDEF_SIZE;
        values [MONO_TYPEDEF_FLAGS] = tb->attrs;
-       n = mono_string_to_utf8 (tb->name);
+       n = mono_string_to_utf8_checked (tb->name, error);
+       return_val_if_nok (error, FALSE);
        if (strcmp (n, "Object") == 0)
                is_object++;
        values [MONO_TYPEDEF_NAME] = string_heap_insert (&assembly->sheap, n);
        g_free (n);
-       n = mono_string_to_utf8 (tb->nspace);
+       n = mono_string_to_utf8_checked (tb->nspace, error);
+       return_val_if_nok (error, FALSE);
        if (strcmp (n, "System") == 0)
                is_system++;
        values [MONO_TYPEDEF_NAMESPACE] = string_heap_insert (&assembly->sheap, n);
@@ -4237,8 +4276,8 @@ module_add_cattrs (MonoDynamicImage *assembly, MonoReflectionModuleBuilder *modu
        return TRUE;
 }
 
-static void
-mono_image_fill_file_table (MonoDomain *domain, MonoReflectionModule *module, MonoDynamicImage *assembly)
+static gboolean
+mono_image_fill_file_table (MonoDomain *domain, MonoReflectionModule *module, MonoDynamicImage *assembly, MonoError *error)
 {
        MonoDynamicTable *table;
        guint32 *values;
@@ -4247,6 +4286,8 @@ mono_image_fill_file_table (MonoDomain *domain, MonoReflectionModule *module, Mo
        char *b = blob_size;
        char *dir, *path;
 
+       mono_error_init (error);
+
        table = &assembly->tables [MONO_TABLE_FILE];
        table->rows++;
        alloc_table (table, table->rows);
@@ -4255,7 +4296,8 @@ mono_image_fill_file_table (MonoDomain *domain, MonoReflectionModule *module, Mo
        values [MONO_FILE_NAME] = string_heap_insert (&assembly->sheap, module->image->module_name);
        if (image_is_dynamic (module->image)) {
                /* This depends on the fact that the main module is emitted last */
-               dir = mono_string_to_utf8 (((MonoReflectionModuleBuilder*)module)->assemblyb->dir);
+               dir = mono_string_to_utf8_checked (((MonoReflectionModuleBuilder*)module)->assemblyb->dir, error);
+               return_val_if_nok (error, FALSE);
                path = g_strdup_printf ("%s%c%s", dir, G_DIR_SEPARATOR, module->image->module_name);
        } else {
                dir = NULL;
@@ -4268,17 +4310,21 @@ mono_image_fill_file_table (MonoDomain *domain, MonoReflectionModule *module, Mo
        values [MONO_FILE_HASH_VALUE] = mono_image_add_stream_data (&assembly->blob, blob_size, b-blob_size);
        mono_image_add_stream_data (&assembly->blob, (char*)hash, 20);
        table->next_idx ++;
+       return TRUE;
 }
 
 static void
-mono_image_fill_module_table (MonoDomain *domain, MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly)
+mono_image_fill_module_table (MonoDomain *domain, MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly, MonoError *error)
 {
        MonoDynamicTable *table;
        int i;
 
+       mono_error_init (error);
+
        table = &assembly->tables [MONO_TABLE_MODULE];
        mb->table_idx = table->next_idx ++;
-       table->values [mb->table_idx * MONO_MODULE_SIZE + MONO_MODULE_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->module.name);
+       table->values [mb->table_idx * MONO_MODULE_SIZE + MONO_MODULE_NAME] = string_heap_insert_mstring (&assembly->sheap, mb->module.name, error);
+       return_if_nok (error);
        i = mono_image_add_stream_data (&assembly->guid, mono_array_addr (mb->guid, char, 0), 16);
        i /= 16;
        ++i;
@@ -4937,25 +4983,29 @@ fixup_cattrs (MonoDynamicImage *assembly)
        }
 }
 
-static void
-assembly_add_resource_manifest (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly, MonoReflectionResource *rsrc, guint32 implementation)
+static gboolean
+assembly_add_resource_manifest (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly, MonoReflectionResource *rsrc, guint32 implementation, MonoError *error)
 {
        MonoDynamicTable *table;
        guint32 *values;
 
+       mono_error_init (error);
+
        table = &assembly->tables [MONO_TABLE_MANIFESTRESOURCE];
        table->rows++;
        alloc_table (table, table->rows);
        values = table->values + table->next_idx * MONO_MANIFEST_SIZE;
        values [MONO_MANIFEST_OFFSET] = rsrc->offset;
        values [MONO_MANIFEST_FLAGS] = rsrc->attrs;
-       values [MONO_MANIFEST_NAME] = string_heap_insert_mstring (&assembly->sheap, rsrc->name);
+       values [MONO_MANIFEST_NAME] = string_heap_insert_mstring (&assembly->sheap, rsrc->name, error);
+       return_val_if_nok (error, FALSE);
        values [MONO_MANIFEST_IMPLEMENTATION] = implementation;
        table->next_idx++;
+       return TRUE;
 }
 
-static void
-assembly_add_resource (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly, MonoReflectionResource *rsrc)
+static gboolean
+assembly_add_resource (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assembly, MonoReflectionResource *rsrc, MonoError *error)
 {
        MonoDynamicTable *table;
        guint32 *values;
@@ -4965,8 +5015,11 @@ assembly_add_resource (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assemb
        char *name, *sname;
        guint32 idx, offset;
 
+       mono_error_init (error);
+
        if (rsrc->filename) {
-               name = mono_string_to_utf8 (rsrc->filename);
+               name = mono_string_to_utf8_checked (rsrc->filename, error);
+               return_val_if_nok (error, FALSE);
                sname = g_path_get_basename (name);
        
                table = &assembly->tables [MONO_TABLE_FILE];
@@ -5008,27 +5061,30 @@ assembly_add_resource (MonoReflectionModuleBuilder *mb, MonoDynamicImage *assemb
                         * the main module, but that needs to reference the FILE table
                         * which isn't emitted yet.
                         */
-                       return;
+                       return TRUE;
                else
                        idx = 0;
        }
 
-       assembly_add_resource_manifest (mb, assembly, rsrc, idx);
+       return assembly_add_resource_manifest (mb, assembly, rsrc, idx, error);
 }
 
-static void
-set_version_from_string (MonoString *version, guint32 *values)
+static gboolean
+set_version_from_string (MonoString *version, guint32 *values, MonoError *error)
 {
        gchar *ver, *p, *str;
        guint32 i;
        
+       mono_error_init (error);
+
        values [MONO_ASSEMBLY_MAJOR_VERSION] = 0;
        values [MONO_ASSEMBLY_MINOR_VERSION] = 0;
        values [MONO_ASSEMBLY_REV_NUMBER] = 0;
        values [MONO_ASSEMBLY_BUILD_NUMBER] = 0;
        if (!version)
-               return;
-       ver = str = mono_string_to_utf8 (version);
+               return TRUE;
+       ver = str = mono_string_to_utf8_checked (version, error);
+       return_val_if_nok (error, FALSE);
        for (i = 0; i < 4; ++i) {
                values [MONO_ASSEMBLY_MAJOR_VERSION + i] = strtol (ver, &p, 10);
                switch (*p) {
@@ -5043,6 +5099,7 @@ set_version_from_string (MonoString *version, guint32 *values)
                ver = p;
        }
        g_free (str);
+       return TRUE;
 }
 
 static guint32
@@ -5081,7 +5138,7 @@ load_public_key (MonoArray *pkey, MonoDynamicImage *assembly) {
        return token;
 }
 
-static void
+static gboolean
 mono_image_emit_manifest (MonoReflectionModuleBuilder *moduleb, MonoError *error)
 {
        MonoDynamicTable *table;
@@ -5103,15 +5160,18 @@ mono_image_emit_manifest (MonoReflectionModuleBuilder *moduleb, MonoError *error
        alloc_table (table, 1);
        values = table->values + MONO_ASSEMBLY_SIZE;
        values [MONO_ASSEMBLY_HASH_ALG] = assemblyb->algid? assemblyb->algid: ASSEMBLY_HASH_SHA1;
-       values [MONO_ASSEMBLY_NAME] = string_heap_insert_mstring (&assembly->sheap, assemblyb->name);
+       values [MONO_ASSEMBLY_NAME] = string_heap_insert_mstring (&assembly->sheap, assemblyb->name, error);
+       return_val_if_nok (error, FALSE);
        if (assemblyb->culture) {
-               values [MONO_ASSEMBLY_CULTURE] = string_heap_insert_mstring (&assembly->sheap, assemblyb->culture);
+               values [MONO_ASSEMBLY_CULTURE] = string_heap_insert_mstring (&assembly->sheap, assemblyb->culture, error);
+               return_val_if_nok (error, FALSE);
        } else {
                values [MONO_ASSEMBLY_CULTURE] = string_heap_insert (&assembly->sheap, "");
        }
        values [MONO_ASSEMBLY_PUBLIC_KEY] = load_public_key (assemblyb->public_key, assembly);
        values [MONO_ASSEMBLY_FLAGS] = assemblyb->flags;
-       set_version_from_string (assemblyb->version, values);
+       if (!set_version_from_string (assemblyb->version, values, error))
+               return FALSE;
 
        /* Emit FILE + EXPORTED_TYPE table */
        module_index = 0;
@@ -5120,13 +5180,14 @@ mono_image_emit_manifest (MonoReflectionModuleBuilder *moduleb, MonoError *error
                MonoReflectionModuleBuilder *file_module = 
                        mono_array_get (assemblyb->modules, MonoReflectionModuleBuilder*, i);
                if (file_module != moduleb) {
-                       mono_image_fill_file_table (domain, (MonoReflectionModule*)file_module, assembly);
+                       if (!mono_image_fill_file_table (domain, (MonoReflectionModule*)file_module, assembly, error))
+                               return FALSE;
                        module_index ++;
                        if (file_module->types) {
                                for (j = 0; j < file_module->num_types; ++j) {
                                        MonoReflectionTypeBuilder *tb = mono_array_get (file_module->types, MonoReflectionTypeBuilder*, j);
                                        mono_image_fill_export_table (domain, tb, module_index, 0, assembly, error);
-                                       return_if_nok (error);
+                                       return_val_if_nok (error, FALSE);
                                }
                        }
                }
@@ -5135,7 +5196,8 @@ mono_image_emit_manifest (MonoReflectionModuleBuilder *moduleb, MonoError *error
                for (i = 0; i < mono_array_length (assemblyb->loaded_modules); ++i) {
                        MonoReflectionModule *file_module = 
                                mono_array_get (assemblyb->loaded_modules, MonoReflectionModule*, i);
-                       mono_image_fill_file_table (domain, file_module, assembly);
+                       if (!mono_image_fill_file_table (domain, file_module, assembly, error))
+                               return FALSE;
                        module_index ++;
                        mono_image_fill_export_table_from_module (domain, file_module, module_index, assembly);
                }
@@ -5156,11 +5218,13 @@ mono_image_emit_manifest (MonoReflectionModuleBuilder *moduleb, MonoError *error
                                int len = mono_array_length (file_module->resources);
                                for (j = 0; j < len; ++j) {
                                        MonoReflectionResource* res = (MonoReflectionResource*)mono_array_addr (file_module->resources, MonoReflectionResource, j);
-                                       assembly_add_resource_manifest (file_module, assembly, res, MONO_IMPLEMENTATION_FILE | (module_index << MONO_IMPLEMENTATION_BITS));
+                                       if (!assembly_add_resource_manifest (file_module, assembly, res, MONO_IMPLEMENTATION_FILE | (module_index << MONO_IMPLEMENTATION_BITS), error))
+                                               return FALSE;
                                }
                        }
                }
-       }               
+       }
+       return TRUE;
 }
 
 #ifndef DISABLE_REFLECTION_EMIT_SAVE
@@ -5243,7 +5307,9 @@ mono_image_build_metadata (MonoReflectionModuleBuilder *moduleb, MonoError *erro
 
        table = &assembly->tables [MONO_TABLE_MODULE];
        alloc_table (table, 1);
-       mono_image_fill_module_table (domain, moduleb, assembly);
+       mono_image_fill_module_table (domain, moduleb, assembly, error);
+       if (!is_ok (error))
+               goto leave;
 
        /* Collect all types into a list sorted by their table_idx */
        mono_ptr_array_init (types, moduleb->num_types, MONO_ROOT_SOURCE_REFLECTION, "dynamic module types list");
@@ -5265,11 +5331,15 @@ mono_image_build_metadata (MonoReflectionModuleBuilder *moduleb, MonoError *erro
         */
        for (i = 0; i < mono_ptr_array_size (types); ++i) {
                MonoReflectionTypeBuilder *tb = (MonoReflectionTypeBuilder *)mono_ptr_array_get (types, i);
-               string_heap_insert_mstring (&assembly->sheap, tb->nspace);
+               string_heap_insert_mstring (&assembly->sheap, tb->nspace, error);
+               if (!is_ok (error))
+                       goto leave_types;
        }
        for (i = 0; i < mono_ptr_array_size (types); ++i) {
                MonoReflectionTypeBuilder *tb = (MonoReflectionTypeBuilder *)mono_ptr_array_get (types, i);
-               string_heap_insert_mstring (&assembly->sheap, tb->name);
+               string_heap_insert_mstring (&assembly->sheap, tb->name, error);
+               if (!is_ok (error))
+                       goto leave_types;
        }
 
        for (i = 0; i < mono_ptr_array_size (types); ++i) {
@@ -5501,7 +5571,8 @@ mono_image_create_method_token (MonoDynamicImage *assembly, MonoObject *obj, Mon
                parent = mono_metadata_token_index (parent) << MONO_MEMBERREF_PARENT_BITS;
                parent |= MONO_MEMBERREF_PARENT_METHODDEF;
 
-               char *name = mono_string_to_utf8 (rmb.name);
+               char *name = mono_string_to_utf8_checked (rmb.name, error);
+               if (!is_ok (error)) goto fail;
                token = mono_image_get_varargs_method_token (
                        assembly, parent, name, sig_token);
                g_free (name);
@@ -5602,7 +5673,7 @@ mono_image_create_token (MonoDynamicImage *assembly, MonoObject *obj,
                        return_val_if_nok (error, 0);
                        token = mono_metadata_token_from_dor (mono_image_typedef_or_ref (assembly, type));
                }
-       } else if (strcmp (klass->name, "MonoType") == 0) {
+       } else if (strcmp (klass->name, "RuntimeType") == 0) {
                MonoType *type = mono_reflection_type_get_handle ((MonoReflectionType *)obj, error);
                return_val_if_nok (error, 0);
                MonoClass *mc = mono_class_from_mono_type (type);
@@ -5950,6 +6021,7 @@ mono_dynamic_image_free_image (MonoDynamicImage *image)
 void
 mono_image_basic_init (MonoReflectionAssemblyBuilder *assemblyb)
 {
+       MonoError error;
        MonoDynamicAssembly *assembly;
        MonoDynamicImage *image;
        MonoDomain *domain = mono_object_domain (assemblyb);
@@ -5970,14 +6042,20 @@ mono_image_basic_init (MonoReflectionAssemblyBuilder *assemblyb)
        assembly->assembly.dynamic = TRUE;
        assembly->assembly.corlib_internal = assemblyb->corlib_internal;
        assemblyb->assembly.assembly = (MonoAssembly*)assembly;
-       assembly->assembly.basedir = mono_string_to_utf8 (assemblyb->dir);
-       if (assemblyb->culture)
-               assembly->assembly.aname.culture = mono_string_to_utf8 (assemblyb->culture);
-       else
+       assembly->assembly.basedir = mono_string_to_utf8_checked (assemblyb->dir, &error);
+       if (mono_error_set_pending_exception (&error))
+               return;
+       if (assemblyb->culture) {
+               assembly->assembly.aname.culture = mono_string_to_utf8_checked (assemblyb->culture, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return;
+       } else
                assembly->assembly.aname.culture = g_strdup ("");
 
         if (assemblyb->version) {
-                       char *vstr = mono_string_to_utf8 (assemblyb->version);
+                       char *vstr = mono_string_to_utf8_checked (assemblyb->version, &error);
+                       if (mono_error_set_pending_exception (&error))
+                               return;
                        char **version = g_strsplit (vstr, ".", 4);
                        char **parts = version;
                        assembly->assembly.aname.major = atoi (*parts++);
@@ -5998,7 +6076,10 @@ mono_image_basic_init (MonoReflectionAssemblyBuilder *assemblyb)
        assembly->save = assemblyb->access != 1;
        assembly->domain = domain;
 
-       image = create_dynamic_mono_image (assembly, mono_string_to_utf8 (assemblyb->name), g_strdup ("RefEmit_YouForgotToDefineAModule"));
+       char *assembly_name = mono_string_to_utf8_checked (assemblyb->name, &error);
+       if (mono_error_set_pending_exception (&error))
+               return;
+       image = create_dynamic_mono_image (assembly, assembly_name, g_strdup ("RefEmit_YouForgotToDefineAModule"));
        image->initial_image = TRUE;
        assembly->assembly.aname.name = image->image.name;
        assembly->assembly.image = &image->image;
@@ -6353,14 +6434,18 @@ mono_image_create_pefile (MonoReflectionModuleBuilder *mb, HANDLE file, MonoErro
 
        if (mb->is_main && assemblyb->resources) {
                int len = mono_array_length (assemblyb->resources);
-               for (i = 0; i < len; ++i)
-                       assembly_add_resource (mb, assembly, (MonoReflectionResource*)mono_array_addr (assemblyb->resources, MonoReflectionResource, i));
+               for (i = 0; i < len; ++i) {
+                       if (!assembly_add_resource (mb, assembly, (MonoReflectionResource*)mono_array_addr (assemblyb->resources, MonoReflectionResource, i), error))
+                               return FALSE;
+               }
        }
 
        if (mb->resources) {
                int len = mono_array_length (mb->resources);
-               for (i = 0; i < len; ++i)
-                       assembly_add_resource (mb, assembly, (MonoReflectionResource*)mono_array_addr (mb->resources, MonoReflectionResource, i));
+               for (i = 0; i < len; ++i) {
+                       if (!assembly_add_resource (mb, assembly, (MonoReflectionResource*)mono_array_addr (mb->resources, MonoReflectionResource, i), error))
+                               return FALSE;
+               }
        }
 
        if (!build_compressed_metadata (assembly, error))
@@ -6691,7 +6776,8 @@ mono_image_load_module_dynamic (MonoReflectionAssemblyBuilder *ab, MonoString *f
        
        mono_error_init (error);
        
-       name = mono_string_to_utf8 (fileName);
+       name = mono_string_to_utf8_checked (fileName, error);
+       return_val_if_nok (error, NULL);
 
        image = mono_image_open (name, &status);
        if (!image) {
@@ -6879,7 +6965,8 @@ image_module_basic_init (MonoReflectionModuleBuilder *moduleb, MonoError *error)
                 * determined at assembly save time.
                 */
                /*image = (MonoDynamicImage*)ab->dynamic_assembly->assembly.image; */
-               name = mono_string_to_utf8 (ab->name);
+               name = mono_string_to_utf8_checked (ab->name, error);
+               return_val_if_nok (error, FALSE);
                fqname = mono_string_to_utf8_checked (moduleb->module.fqname, error);
                if (!is_ok (error)) {
                        g_free (name);
@@ -7269,7 +7356,7 @@ mono_type_get_object_checked (MonoDomain *domain, MonoType *type, MonoError *err
                }
        }
        /* This is stored in vtables/JITted code so it has to be pinned */
-       res = (MonoReflectionType *)mono_object_new_pinned (domain, mono_defaults.monotype_class, error);
+       res = (MonoReflectionType *)mono_object_new_pinned (domain, mono_defaults.runtimetype_class, error);
        if (!mono_error_ok (error))
                return NULL;
 
@@ -8050,7 +8137,7 @@ mono_get_object_from_blob (MonoDomain *domain, MonoType *type, const char *blob,
                retval = &object;
        }
                        
-       if (!mono_get_constant_value_from_blob (domain, basetype->type,  blob, retval))
+       if (!mono_get_constant_value_from_blob (domain, basetype->type,  blob, retval, error))
                return object;
        else
                return NULL;
@@ -8492,7 +8579,9 @@ _mono_reflection_get_type_from_info (MonoTypeNameParse *info, MonoImage *image,
 
        type = mono_reflection_get_type_with_rootimage (rootimage, image, info, ignorecase, &type_resolve, error);
        if (type == NULL && !info->assembly.name && image != mono_defaults.corlib) {
+               /* ignore the error and try again */
                mono_error_cleanup (error);
+               mono_error_init (error);
                image = mono_defaults.corlib;
                type = mono_reflection_get_type_with_rootimage (rootimage, image, info, ignorecase, &type_resolve, error);
        }
@@ -8895,12 +8984,12 @@ mono_reflection_get_token_checked (MonoObject *obj, MonoError *error)
        } else if (strcmp (klass->name, "TypeBuilder") == 0) {
                MonoReflectionTypeBuilder *tb = (MonoReflectionTypeBuilder *)obj;
                token = tb->table_idx | MONO_TOKEN_TYPE_DEF;
-       } else if (strcmp (klass->name, "MonoType") == 0) {
+       } else if (strcmp (klass->name, "RuntimeType") == 0) {
                MonoType *type = mono_reflection_type_get_handle ((MonoReflectionType*)obj, error);
                return_val_if_nok (error, 0);
                MonoClass *mc = mono_class_from_mono_type (type);
                if (!mono_class_init (mc)) {
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (mc));
+                       mono_error_set_for_class_failure (error, mc);
                        return 0;
                }
 
@@ -8961,6 +9050,27 @@ mono_reflection_get_token_checked (MonoObject *obj, MonoError *error)
        return token;
 }
 
+/*
+ * Load the type with name @n on behalf of image @image.  On failure sets @error and returns NULL.
+ * The @is_enum flag only affects the error message that's displayed on failure.
+ */
+static MonoType*
+cattr_type_from_name (char *n, MonoImage *image, gboolean is_enum, MonoError *error)
+{
+       MonoError inner_error;
+       MonoType *t = mono_reflection_type_from_name_checked (n, image, &inner_error);
+       if (!t) {
+               mono_error_set_type_load_name (error, g_strdup(n), NULL,
+                                              "Could not load %s %s while decoding custom attribute: %s",
+                                              is_enum ? "enum type": "type",
+                                              n,
+                                              mono_error_get_message (&inner_error));
+               mono_error_cleanup (&inner_error);
+               return NULL;
+       }
+       return t;
+}
+
 static MonoClass*
 load_cattr_enum_type (MonoImage *image, const char *p, const char **end, MonoError *error)
 {
@@ -8972,16 +9082,9 @@ load_cattr_enum_type (MonoImage *image, const char *p, const char **end, MonoErr
 
        n = (char *)g_memdup (p, slen + 1);
        n [slen] = 0;
-       t = mono_reflection_type_from_name_checked (n, image, error);
-       if (!t) {
-               char *msg = g_strdup (mono_error_get_message (error));
-               mono_error_cleanup (error);
-               /* We don't free n, it's consumed by mono_error */
-               mono_error_set_type_load_name (error, n, NULL, "Could not load enum type %s while decoding custom attribute: %s", n, msg);
-               g_free (msg);
-               return NULL;
-       }
+       t = cattr_type_from_name (n, image, TRUE, error);
        g_free (n);
+       return_val_if_nok (error, NULL);
        p += slen;
        *end = p;
        return mono_class_from_mono_type (t);
@@ -9079,16 +9182,9 @@ handle_type:
                slen = mono_metadata_decode_value (p, &p);
                n = (char *)g_memdup (p, slen + 1);
                n [slen] = 0;
-               t = mono_reflection_type_from_name_checked (n, image, error);
-               if (!t) {
-                       char *msg = g_strdup (mono_error_get_message (error));
-                       mono_error_cleanup (error);
-                       /* We don't free n, it's consumed by mono_error */
-                       mono_error_set_type_load_name (error, n, NULL, "Could not load type %s while decoding custom attribute: %msg", n, msg);
-                       g_free (msg);
-                       return NULL;
-               }
+               t = cattr_type_from_name (n, image, FALSE, error);
                g_free (n);
+               return_val_if_nok (error, NULL);
                *end = p + slen;
 
                rt = mono_type_get_object_checked (mono_domain_get (), t, error);
@@ -9134,16 +9230,9 @@ handle_type:
                        slen = mono_metadata_decode_value (p, &p);
                        n = (char *)g_memdup (p, slen + 1);
                        n [slen] = 0;
-                       t = mono_reflection_type_from_name_checked (n, image, error);
-                       if (!t) {
-                               char *msg = g_strdup (mono_error_get_message (error));
-                               mono_error_cleanup (error);
-                               /* We don't free n, it's consumed by mono_error */
-                               mono_error_set_type_load_name (error, n, NULL, "Could not load type %s while decoding custom attribute: %s", n, msg);
-                               g_free (msg);
-                               return NULL;
-                       }
+                       t = cattr_type_from_name (n, image, FALSE, error);
                        g_free (n);
+                       return_val_if_nok (error, NULL);
                        p += slen;
                        subc = mono_class_from_mono_type (t);
                } else if (subt >= MONO_TYPE_BOOLEAN && subt <= MONO_TYPE_R8) {
@@ -9729,7 +9818,7 @@ reflection_resolve_custom_attribute_data (MonoReflectionMethod *ref_method, Mono
        domain = mono_object_domain (ref_method);
 
        if (!mono_class_init (method->klass)) {
-               mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (method->klass));
+               mono_error_set_for_class_failure (error, method->klass);
                goto leave;
        }
 
@@ -10338,7 +10427,7 @@ mono_reflection_get_custom_attrs_info_checked (MonoObject *obj, MonoError *error
        mono_error_init (error);
 
        klass = obj->vtable->klass;
-       if (klass == mono_defaults.monotype_class) {
+       if (klass == mono_defaults.runtimetype_class) {
                MonoType *type = mono_reflection_type_get_handle ((MonoReflectionType *)obj, error);
                return_val_if_nok (error, NULL);
                klass = mono_class_from_mono_type (type);
@@ -10865,7 +10954,8 @@ get_prop_name_and_type (MonoObject *prop, char **name, MonoType **type, MonoErro
        MonoClass *klass = mono_object_class (prop);
        if (strcmp (klass->name, "PropertyBuilder") == 0) {
                MonoReflectionPropertyBuilder *pb = (MonoReflectionPropertyBuilder *)prop;
-               *name = mono_string_to_utf8 (pb->name);
+               *name = mono_string_to_utf8_checked (pb->name, error);
+               return_if_nok (error);
                *type = mono_reflection_type_get_handle ((MonoReflectionType*)pb->type, error);
        } else {
                MonoReflectionProperty *p = (MonoReflectionProperty *)prop;
@@ -10884,7 +10974,8 @@ get_field_name_and_type (MonoObject *field, char **name, MonoType **type, MonoEr
        MonoClass *klass = mono_object_class (field);
        if (strcmp (klass->name, "FieldBuilder") == 0) {
                MonoReflectionFieldBuilder *fb = (MonoReflectionFieldBuilder *)field;
-               *name = mono_string_to_utf8 (fb->name);
+               *name = mono_string_to_utf8_checked (fb->name, error);
+               return_if_nok (error);
                *type = mono_reflection_type_get_handle ((MonoReflectionType*)fb->type, error);
        } else {
                MonoReflectionField *f = (MonoReflectionField *)field;
@@ -11062,7 +11153,8 @@ handle_enum:
                        *p++ = 0xFF;
                        break;
                }
-               str = mono_string_to_utf8 ((MonoString*)arg);
+               str = mono_string_to_utf8_checked ((MonoString*)arg, error);
+               return_if_nok (error);
                slen = strlen (str);
                if ((p-buffer) + 10 + slen >= *buflen) {
                        char *newbuf;
@@ -11761,8 +11853,13 @@ mono_marshal_spec_from_builder (MonoImage *image, MonoAssembly *assembly,
                        res->data.custom_data.custom_name =
                                type_get_fully_qualified_name (marshaltyperef);
                }
-               if (minfo->mcookie)
-                       res->data.custom_data.cookie = mono_string_to_utf8 (minfo->mcookie);
+               if (minfo->mcookie) {
+                       res->data.custom_data.cookie = mono_string_to_utf8_checked (minfo->mcookie, error);
+                       if (!is_ok (error)) {
+                               image_g_free (image, res);
+                               return NULL;
+                       }
+               }
                break;
 
        default:
@@ -13032,7 +13129,11 @@ reflection_event_builder_get_event_info (MonoReflectionTypeBuilder *tb, MonoRefl
 
        event->parent = klass;
        event->attrs = eb->attrs;
-       event->name = mono_string_to_utf8 (eb->name);
+       event->name = mono_string_to_utf8_checked (eb->name, error);
+       if (!is_ok (error)) {
+               g_free (event);
+               return NULL;
+       }
        if (eb->add_method)
                event->add = eb->add_method->mhandle;
        if (eb->remove_method)
@@ -13292,8 +13393,6 @@ mono_reflection_create_runtime_class (MonoReflectionTypeBuilder *tb)
         */
        klass->flags = tb->attrs;
        klass->has_cctor = 1;
-       klass->has_finalize = 1;
-       klass->has_finalize_inited = 1;
 
        mono_class_setup_parent (klass, klass->parent);
        /* fool mono_class_setup_supertypes */
@@ -13848,12 +13947,12 @@ resolve_object (MonoImage *image, MonoObject *obj, MonoClass **handle_class, Mon
                return_val_if_nok (error, NULL);
                *handle_class = mono_defaults.string_class;
                g_assert (result);
-       } else if (strcmp (obj->vtable->klass->name, "MonoType") == 0) {
+       } else if (strcmp (obj->vtable->klass->name, "RuntimeType") == 0) {
                MonoType *type = mono_reflection_type_get_handle ((MonoReflectionType*)obj, error);
                return_val_if_nok (error, NULL);
                MonoClass *mc = mono_class_from_mono_type (type);
                if (!mono_class_init (mc)) {
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (mc));
+                       mono_error_set_for_class_failure (error, mc);
                        return NULL;
                }
 
@@ -14142,7 +14241,8 @@ resolve_object (MonoImage *image, MonoObject *obj, MonoClass **handle_class, Mon
 
                /* Find the method */
 
-               name = mono_string_to_utf8 (m->name);
+               name = mono_string_to_utf8_checked (m->name, error);
+               return_val_if_nok (error, NULL);
                iter = NULL;
                while ((method = mono_class_get_methods (klass, &iter))) {
                        if (!strcmp (method->name, name))
@@ -14792,10 +14892,11 @@ mono_reflection_call_is_assignable_to (MonoClass *klass, MonoClass *oklass, Mono
        params [0] = mono_type_get_object_checked (mono_domain_get (), &oklass->byval_arg, error);
        return_val_if_nok (error, FALSE);
 
-       res = mono_runtime_try_invoke (method, (MonoObject*)(mono_class_get_ref_info (klass)), params, &exc, error);
+       MonoError inner_error;
+       res = mono_runtime_try_invoke (method, (MonoObject*)(mono_class_get_ref_info (klass)), params, &exc, &inner_error);
 
-       if (exc || !mono_error_ok (error)) {
-               mono_error_cleanup (error);
+       if (exc || !is_ok (&inner_error)) {
+               mono_error_cleanup (&inner_error);
                return FALSE;
        } else
                return *(MonoBoolean*)mono_object_unbox (res);
index 2b1a9d6b1949a31bf130d234779c79b43eee4102..a275cf09c8971f153a2f236c1adc18264bbcdb4c 100644 (file)
@@ -81,6 +81,9 @@ static MonoMethod *method_rs_serialize, *method_rs_deserialize, *method_exc_fixe
 static MonoMethod *method_set_call_context, *method_needs_context_sink, *method_rs_serialize_exc;
 #endif
 
+static gpointer
+mono_compile_method_icall (MonoMethod *method);
+
 static void
 register_icall (gpointer func, const char *name, const char *sigstr, gboolean save)
 {
@@ -190,11 +193,11 @@ mono_remoting_marshal_init (void)
                register_icall (type_from_handle, "type_from_handle", "object ptr", FALSE);
                register_icall (mono_marshal_set_domain_by_id, "mono_marshal_set_domain_by_id", "int32 int32 int32", FALSE);
                register_icall (mono_marshal_check_domain_image, "mono_marshal_check_domain_image", "int32 int32 ptr", FALSE);
-               register_icall (mono_marshal_xdomain_copy_value, "mono_marshal_xdomain_copy_value", "object object", FALSE);
+               register_icall (ves_icall_mono_marshal_xdomain_copy_value, "ves_icall_mono_marshal_xdomain_copy_value", "object object", FALSE);
                register_icall (mono_marshal_xdomain_copy_out_value, "mono_marshal_xdomain_copy_out_value", "void object object", FALSE);
                register_icall (mono_remoting_wrapper, "mono_remoting_wrapper", "object ptr ptr", FALSE);
                register_icall (mono_upgrade_remote_class_wrapper, "mono_upgrade_remote_class_wrapper", "void object object", FALSE);
-               /* mono_load_remote_field_new_icall registered  by mini-runtime.c */
+               register_icall (mono_compile_method_icall, "mono_compile_method_icall", "ptr ptr", FALSE);
                /* mono_store_remote_field_new_icall registered  by mini-runtime.c */
 
        }
@@ -206,6 +209,7 @@ mono_remoting_marshal_init (void)
        module_initialized = TRUE;
 }
 
+/* This is an icall, it will return NULL and set pending exception on failure */
 static MonoReflectionType *
 type_from_handle (MonoType *handle)
 {
@@ -217,7 +221,7 @@ type_from_handle (MonoType *handle)
        mono_class_init (klass);
 
        ret = mono_type_get_object_checked (domain, handle, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       mono_error_set_pending_exception (&error);
 
        return ret;
 }
@@ -396,7 +400,9 @@ mono_remoting_wrapper (MonoMethod *method, gpointer *params)
                return res;
        }
 
-       msg = mono_method_call_message_new (method, params, NULL, NULL, NULL);
+       msg = mono_method_call_message_new (method, params, NULL, NULL, NULL, &error);
+       if (!is_ok (&error))
+               goto fail;
 
        res = mono_remoting_invoke ((MonoObject *)this_obj->rp, msg, &exc, &out_args, &error);
        if (!is_ok (&error))
@@ -419,7 +425,7 @@ fail:
         * is_running_protected_wrapper () in threads.c and
         * mono_marshal_get_remoting_invoke () in remoting.c)
         */
-       mono_error_raise_exception (&error);
+       mono_error_raise_exception (&error); /* OK to throw, see note */
        return NULL;
 } 
 
@@ -497,10 +503,13 @@ mono_marshal_get_remoting_invoke (MonoMethod *method)
 /* mono_marshal_xdomain_copy_out_value()
  * Copies the contents of the src instance into the dst instance. src and dst
  * must have the same type, and if they are arrays, the same size.
+ *
+ * This is an icall, it may use mono_error_set_pending_exception
  */
 static void
 mono_marshal_xdomain_copy_out_value (MonoObject *src, MonoObject *dst)
 {
+       MonoError error;
        if (src == NULL || dst == NULL) return;
        
        g_assert (mono_object_class (src) == mono_object_class (dst));
@@ -514,7 +523,10 @@ mono_marshal_xdomain_copy_out_value (MonoObject *src, MonoObject *dst)
                        int i, len = mono_array_length ((MonoArray *)dst);
                        for (i = 0; i < len; i++) {
                                MonoObject *item = (MonoObject *)mono_array_get ((MonoArray *)src, gpointer, i);
-                               mono_array_setref ((MonoArray *)dst, i, mono_marshal_xdomain_copy_value (item));
+                               MonoObject *item_copy = mono_marshal_xdomain_copy_value (item, &error);
+                               if (mono_error_set_pending_exception (&error))
+                                       return;
+                               mono_array_setref ((MonoArray *)dst, i, item_copy);
                        }
                } else {
                        mono_array_full_copy ((MonoArray *)src, (MonoArray *)dst);
@@ -532,7 +544,7 @@ mono_marshal_xdomain_copy_out_value (MonoObject *src, MonoObject *dst)
 static void
 mono_marshal_emit_xdomain_copy_value (MonoMethodBuilder *mb, MonoClass *pclass)
 {
-       mono_mb_emit_icall (mb, mono_marshal_xdomain_copy_value);
+       mono_mb_emit_icall (mb, ves_icall_mono_marshal_xdomain_copy_value);
        mono_mb_emit_op (mb, CEE_CASTCLASS, pclass);
 }
 
@@ -579,6 +591,15 @@ mono_marshal_emit_switch_domain (MonoMethodBuilder *mb)
        mono_mb_emit_icall (mb, mono_marshal_set_domain_by_id);
 }
 
+gpointer
+mono_compile_method_icall (MonoMethod *method)
+{
+       MonoError error;
+       gpointer result = mono_compile_method_checked (method, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
 /* mono_marshal_emit_load_domain_method ()
  * Loads into the stack a pointer to the code of the provided method for
  * the current domain.
@@ -590,7 +611,7 @@ mono_marshal_emit_load_domain_method (MonoMethodBuilder *mb, MonoMethod *method)
         * that compiles the method).
         */
        mono_mb_emit_ptr (mb, method);
-       mono_mb_emit_icall (mb, mono_compile_method);
+       mono_mb_emit_icall (mb, mono_compile_method_icall);
 }
 #endif
 
@@ -1233,10 +1254,15 @@ mono_marshal_get_remoting_invoke_for_target (MonoMethod *method, MonoRemotingTar
 G_GNUC_UNUSED static gpointer
 mono_marshal_load_remoting_wrapper (MonoRealProxy *rp, MonoMethod *method)
 {
+       MonoError error;
+       MonoMethod *marshal_method = NULL;
        if (rp->target_domain_id != -1)
-               return mono_compile_method (mono_marshal_get_xappdomain_invoke (method));
+               marshal_method = mono_marshal_get_xappdomain_invoke (method);
        else
-               return mono_compile_method (mono_marshal_get_remoting_invoke (method));
+               marshal_method = mono_marshal_get_remoting_invoke (method);
+       gpointer compiled_ptr = mono_compile_method_checked (marshal_method, &error);
+       mono_error_assert_ok (&error);
+       return compiled_ptr;
 }
 
 MonoMethod *
@@ -1300,72 +1326,6 @@ mono_marshal_get_remoting_invoke_with_check (MonoMethod *method)
        return res;
 }
 
-/*
- * mono_marshal_get_ldfld_remote_wrapper:
- * @klass: The return type
- *
- * This method generates a wrapper for calling mono_load_remote_field_new.
- * The return type is ignored for now, as mono_load_remote_field_new () always
- * returns an object. In the future, to optimize some codepaths, we might
- * call a different function that takes a pointer to a valuetype, instead.
- */
-MonoMethod *
-mono_marshal_get_ldfld_remote_wrapper (MonoClass *klass)
-{
-       MonoMethodSignature *sig;
-       MonoMethodBuilder *mb;
-       MonoMethod *res;
-       static MonoMethod* cached = NULL;
-
-       mono_marshal_lock_internal ();
-       if (cached) {
-               mono_marshal_unlock_internal ();
-               return cached;
-       }
-       mono_marshal_unlock_internal ();
-
-       mb = mono_mb_new_no_dup_name (mono_defaults.object_class, "__mono_load_remote_field_new_wrapper", MONO_WRAPPER_LDFLD_REMOTE);
-
-       mb->method->save_lmf = 1;
-
-       sig = mono_metadata_signature_alloc (mono_defaults.corlib, 3);
-       sig->params [0] = &mono_defaults.object_class->byval_arg;
-       sig->params [1] = &mono_defaults.int_class->byval_arg;
-       sig->params [2] = &mono_defaults.int_class->byval_arg;
-       sig->ret = &mono_defaults.object_class->byval_arg;
-
-#ifndef DISABLE_JIT
-       mono_mb_emit_ldarg (mb, 0);
-       mono_mb_emit_ldarg (mb, 1);
-       mono_mb_emit_ldarg (mb, 2);
-
-       mono_mb_emit_icall (mb, mono_load_remote_field_new_icall);
-
-       mono_mb_emit_byte (mb, CEE_RET);
-#endif
-
-       mono_marshal_lock_internal ();
-       res = cached;
-       mono_marshal_unlock_internal ();
-       if (!res) {
-               MonoMethod *newm;
-               newm = mono_mb_create (mb, sig, 4, NULL);
-               mono_marshal_lock_internal ();
-               res = cached;
-               if (!res) {
-                       res = newm;
-                       cached = res;
-                       mono_marshal_unlock_internal ();
-               } else {
-                       mono_marshal_unlock_internal ();
-                       mono_free_method (newm);
-               }
-       }
-       mono_mb_free (mb);
-
-       return res;
-}
-
 /*
  * mono_marshal_get_ldfld_wrapper:
  * @type: the type of the field
@@ -1385,6 +1345,7 @@ mono_marshal_get_ldfld_wrapper (MonoType *type)
        WrapperInfo *info;
        char *name;
        int t, pos0, pos1 = 0;
+       static MonoMethod* tp_load = NULL;
 
        type = mono_type_get_underlying_type (type);
 
@@ -1415,6 +1376,11 @@ mono_marshal_get_ldfld_wrapper (MonoType *type)
        if ((res = mono_marshal_find_in_cache (cache, klass)))
                return res;
 
+       if (!tp_load) {
+               tp_load = mono_class_get_method_from_name (mono_defaults.transparent_proxy_class, "LoadRemoteFieldNew", -1);
+               g_assert (tp_load != NULL);
+       }
+
        /* we add the %p pointer value of klass because class names are not unique */
        name = g_strdup_printf ("__ldfld_wrapper_%p_%s.%s", klass, klass->name_space, klass->name); 
        mb = mono_mb_new (mono_defaults.object_class, name, MONO_WRAPPER_LDFLD);
@@ -1435,7 +1401,7 @@ mono_marshal_get_ldfld_wrapper (MonoType *type)
        mono_mb_emit_ldarg (mb, 1);
        mono_mb_emit_ldarg (mb, 2);
 
-       mono_mb_emit_managed_call (mb, mono_marshal_get_ldfld_remote_wrapper (klass), NULL);
+       mono_mb_emit_managed_call (mb, tp_load, NULL);
 
        /*
        csig = mono_metadata_signature_alloc (mono_defaults.corlib, 3);
@@ -1940,10 +1906,12 @@ mono_marshal_get_proxy_cancast (MonoClass *klass)
 void
 mono_upgrade_remote_class_wrapper (MonoReflectionType *rtype, MonoTransparentProxy *tproxy)
 {
+       MonoError error;
        MonoClass *klass;
        MonoDomain *domain = ((MonoObject*)tproxy)->vtable->domain;
        klass = mono_class_from_mono_type (rtype->type);
-       mono_upgrade_remote_class (domain, (MonoObject*)tproxy, klass);
+       mono_upgrade_remote_class (domain, (MonoObject*)tproxy, klass, &error);
+       mono_error_set_pending_exception (&error);
 }
 
 #else /* DISABLE_REMOTING */
@@ -1997,9 +1965,9 @@ mono_get_xdomain_marshal_type (MonoType *t)
  * Makes a copy of "val" suitable for the current domain.
  */
 MonoObject *
-mono_marshal_xdomain_copy_value (MonoObject *val)
+mono_marshal_xdomain_copy_value (MonoObject *val, MonoError *error)
 {
-       MonoError error;
+       mono_error_init (error);
        MonoDomain *domain;
        if (val == NULL) return NULL;
 
@@ -2021,16 +1989,14 @@ mono_marshal_xdomain_copy_value (MonoObject *val)
        case MONO_TYPE_U8:
        case MONO_TYPE_R4:
        case MONO_TYPE_R8: {
-               MonoObject *res = mono_value_box_checked (domain, mono_object_class (val), ((char*)val) + sizeof(MonoObject), &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               MonoObject *res = mono_value_box_checked (domain, mono_object_class (val), ((char*)val) + sizeof(MonoObject), error);
                return res;
 
        }
        case MONO_TYPE_STRING: {
                MonoString *str = (MonoString *) val;
                MonoObject *res = NULL;
-               res = (MonoObject *) mono_string_new_utf16_checked (domain, mono_string_chars (str), mono_string_length (str), &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               res = (MonoObject *) mono_string_new_utf16_checked (domain, mono_string_chars (str), mono_string_length (str), error);
                return res;
        }
        case MONO_TYPE_ARRAY:
@@ -2038,14 +2004,16 @@ mono_marshal_xdomain_copy_value (MonoObject *val)
                MonoArray *acopy;
                MonoXDomainMarshalType mt = mono_get_xdomain_marshal_type (&(mono_object_class (val)->element_class->byval_arg));
                if (mt == MONO_MARSHAL_SERIALIZE) return NULL;
-               acopy = mono_array_clone_in_domain (domain, (MonoArray *) val, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               acopy = mono_array_clone_in_domain (domain, (MonoArray *) val, error);
+               return_val_if_nok (error, NULL);
 
                if (mt == MONO_MARSHAL_COPY) {
                        int i, len = mono_array_length (acopy);
                        for (i = 0; i < len; i++) {
                                MonoObject *item = (MonoObject *)mono_array_get (acopy, gpointer, i);
-                               mono_array_setref (acopy, i, mono_marshal_xdomain_copy_value (item));
+                               MonoObject *item_copy = mono_marshal_xdomain_copy_value (item, error);
+                               return_val_if_nok (error, NULL);
+                               mono_array_setref (acopy, i, item_copy);
                        }
                }
                return (MonoObject *) acopy;
@@ -2056,3 +2024,15 @@ mono_marshal_xdomain_copy_value (MonoObject *val)
 
        return NULL;
 }
+
+/* mono_marshal_xdomain_copy_value
+ * Makes a copy of "val" suitable for the current domain.
+ */
+MonoObject *
+ves_icall_mono_marshal_xdomain_copy_value (MonoObject *val)
+{
+       MonoError error;
+       MonoObject *result = mono_marshal_xdomain_copy_value (val, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
index 1c41c797db4fa2c235cd84398bf04cdf7f45541b..078b4cef997d8ec11653d69df65bba2bd521bf1a 100644 (file)
@@ -57,6 +57,7 @@ mono_runtime_is_shutting_down (void)
 static void
 fire_process_exit_event (MonoDomain *domain, gpointer user_data)
 {
+       MonoError error;
        MonoClassField *field;
        gpointer pa [2];
        MonoObject *delegate, *exc;
@@ -70,7 +71,8 @@ fire_process_exit_event (MonoDomain *domain, gpointer user_data)
 
        pa [0] = domain;
        pa [1] = NULL;
-       mono_runtime_delegate_invoke (delegate, pa, &exc);
+       mono_runtime_delegate_try_invoke (delegate, pa, &exc, &error);
+       mono_error_cleanup (&error);
 }
 
 static void
index 3fe3ac04867adab1867989d2365fc0a644e5e930..e3143cc564f100c57a79be6b7903fd167127eaaf 100644 (file)
@@ -363,7 +363,7 @@ get_caller_no_reflection_related (MonoMethod *m, gint32 no, gint32 ilo, gboolean
 
                /* unlike most Invoke* cases InvokeMember is not inside System.Reflection[.Emit] but is SecuritySafeCritical */
                if (((*kname == 'T') && (strcmp (kname, "Type") == 0)) || 
-                       ((*kname == 'M') && (strcmp (kname, "MonoType")) == 0)) {
+                       ((*kname == 'R') && (strcmp (kname, "RuntimeType")) == 0)) {
 
                        /* if calling InvokeMember then we can't stop the stackwalk here and need to look at the caller */
                        if (strcmp (m->name, "InvokeMember") == 0)
index 74630b2c973afd4027dae0aac1c84b2515fe747f..303f8ea837210f8f843a03b321da1a82bfd469dc 100644 (file)
@@ -74,7 +74,7 @@ void
 sgen_set_bridge_implementation (const char *name)
 {
        if (!init_bridge_processor (&bridge_processor, name))
-               g_warning ("Invalid value for bridge implementation, valid values are: 'new' and 'old'.");
+               g_warning ("Invalid value for bridge implementation, valid values are: 'new', 'old' and 'tarjan'.");
 }
 
 gboolean
@@ -375,6 +375,8 @@ sgen_bridge_processing_finish (int generation)
        if (compare_bridge_processors ())
                compare_to_bridge_processor.processing_after_callback (generation);
 
+       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_BRIDGE: Complete, was running for %.2fms", mono_time_since_last_stw () / 10000.0f);
+
        bridge_processing_in_progress = FALSE;
 }
 
index e9f9b1a81a7a5ddeaad89a7ae0ddac596f328fcc..332ed1df8f69815856f3e4af7d43b2167692664b 100644 (file)
@@ -64,12 +64,7 @@ struct _SgenClientThreadInfo {
        void *stack_start;
        void *stack_start_limit;
 
-       /*FIXME pretty please finish killing ARCH_NUM_REGS */
-#ifdef USE_MONO_CTX
        MonoContext ctx;                /* ditto */
-#else
-       gpointer regs[ARCH_NUM_REGS];       /* ditto */
-#endif
 };
 
 #else
@@ -694,6 +689,16 @@ sgen_client_binary_protocol_concurrent_sweep_end (long long timestamp)
 {
 }
 
+static void G_GNUC_UNUSED
+sgen_client_binary_protocol_header (long long check, int version, int ptr_size, gboolean little_endian)
+{
+}
+
+static void G_GNUC_UNUSED
+sgen_client_binary_protocol_pin_stats (int objects_pinned_in_nursery, size_t bytes_pinned_in_nursery, int objects_pinned_in_major, size_t bytes_pinned_in_major)
+{
+}
+
 int sgen_thread_handshake (BOOL suspend);
 gboolean sgen_suspend_thread (SgenThreadInfo *info);
 gboolean sgen_resume_thread (SgenThreadInfo *info);
@@ -723,10 +728,23 @@ extern MonoNativeTlsKey thread_info_key;
  */
 #define EXIT_CRITICAL_REGION  do { mono_atomic_store_release (&IN_CRITICAL_REGION, 0); } while (0)
 
+#ifndef DISABLE_CRITICAL_REGION
+/*
+ * We can only use a critical region in the managed allocator if the JIT supports OP_ATOMIC_STORE_I4.
+ *
+ * TODO: Query the JIT instead of this ifdef hack.
+ */
+#if defined (TARGET_X86) || defined (TARGET_AMD64) || (defined (TARGET_ARM) && defined (HAVE_ARMV7)) || defined (TARGET_ARM64)
+#define MANAGED_ALLOCATOR_CAN_USE_CRITICAL_REGION
+#endif
+#endif
+
 #define SGEN_TV_DECLARE(name) gint64 name
 #define SGEN_TV_GETTIME(tv) tv = mono_100ns_ticks ()
 #define SGEN_TV_ELAPSED(start,end) ((gint64)(end-start))
 
+guint64 mono_time_since_last_stw (void);
+
 typedef MonoSemType SgenSemaphore;
 
 #define SGEN_SEMAPHORE_INIT(sem,initial)       mono_os_sem_init ((sem), (initial))
index bbd97e955df2a69003dafb75b8333c0bb505859b..bccc7d8aad53fa1b91dfb139a10df911b6132c13 100644 (file)
@@ -26,6 +26,7 @@
 #include "metadata/handle.h"
 #include "utils/mono-memory-model.h"
 #include "utils/mono-logger-internals.h"
+#include "utils/mono-threads-coop.h"
 #include "sgen/sgen-thread-pool.h"
 
 #ifdef HEAVY_STATISTICS
@@ -840,7 +841,7 @@ mono_gc_clear_domain (MonoDomain * domain)
        sgen_stop_world (0);
 
        if (sgen_concurrent_collection_in_progress ())
-               sgen_perform_collection (0, GENERATION_OLD, "clear domain", TRUE);
+               sgen_perform_collection (0, GENERATION_OLD, "clear domain", TRUE, FALSE);
        SGEN_ASSERT (0, !sgen_concurrent_collection_in_progress (), "We just ordered a synchronous collection.  Why are we collecting concurrently?");
 
        major_collector.finish_sweeping ();
@@ -897,11 +898,11 @@ mono_gc_clear_domain (MonoDomain * domain)
        major_collector.iterate_objects (ITERATE_OBJECTS_SWEEP_PINNED, (IterateObjectCallbackFunc)clear_domain_free_major_pinned_object_callback, domain);
 
        if (domain == mono_get_root_domain ()) {
-               sgen_pin_stats_print_class_stats ();
+               sgen_pin_stats_report ();
                sgen_object_layout_dump (stdout);
        }
 
-       sgen_restart_world (0, NULL);
+       sgen_restart_world (0);
 
        binary_protocol_domain_unload_end (domain);
        binary_protocol_flush_buffers (FALSE);
@@ -993,13 +994,22 @@ static gboolean use_managed_allocator = TRUE;
 
 #ifdef HAVE_KW_THREAD
 
-#define EMIT_TLS_ACCESS_NEXT_ADDR(mb)  do {    \
+#define EMIT_TLS_ACCESS_VAR(_mb, _var) /* nothing to do */
+
+#define EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR(mb, _var) \
+       do { \
+               mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX); \
+               mono_mb_emit_byte ((mb), CEE_MONO_TLS); \
+               mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_IN_CRITICAL_REGION_ADDR); \
+       } while (0)
+
+#define EMIT_TLS_ACCESS_NEXT_ADDR(mb, _var)    do {    \
        mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
        mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
        mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_TLAB_NEXT_ADDR);            \
        } while (0)
 
-#define EMIT_TLS_ACCESS_TEMP_END(mb)   do {    \
+#define EMIT_TLS_ACCESS_TEMP_END(mb, _var)     do {    \
        mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
        mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
        mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_TLAB_TEMP_END);             \
@@ -1008,27 +1018,43 @@ static gboolean use_managed_allocator = TRUE;
 #else
 
 #if defined(TARGET_OSX) || defined(TARGET_WIN32) || defined(TARGET_ANDROID) || defined(TARGET_IOS)
-#define EMIT_TLS_ACCESS_NEXT_ADDR(mb)  do {    \
-       mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
-       mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
-       mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_THREAD_INFO);       \
+
+// Cache the SgenThreadInfo pointer in a local 'var'.
+#define EMIT_TLS_ACCESS_VAR(mb, var) \
+       do { \
+               var = mono_mb_add_local ((mb), &mono_defaults.int_class->byval_arg); \
+               mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX); \
+               mono_mb_emit_byte ((mb), CEE_MONO_TLS); \
+               mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_THREAD_INFO); \
+               mono_mb_emit_stloc ((mb), (var)); \
+       } while (0)
+
+#define EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR(mb, var) \
+       do { \
+               mono_mb_emit_ldloc ((mb), (var)); \
+               mono_mb_emit_icon ((mb), MONO_STRUCT_OFFSET (SgenClientThreadInfo, in_critical_region)); \
+               mono_mb_emit_byte ((mb), CEE_ADD); \
+       } while (0)
+
+#define EMIT_TLS_ACCESS_NEXT_ADDR(mb, var)     do {    \
+       mono_mb_emit_ldloc ((mb), (var));               \
        mono_mb_emit_icon ((mb), MONO_STRUCT_OFFSET (SgenThreadInfo, tlab_next_addr));  \
        mono_mb_emit_byte ((mb), CEE_ADD);              \
        mono_mb_emit_byte ((mb), CEE_LDIND_I);          \
        } while (0)
 
-#define EMIT_TLS_ACCESS_TEMP_END(mb)   do {    \
-       mono_mb_emit_byte ((mb), MONO_CUSTOM_PREFIX);   \
-       mono_mb_emit_byte ((mb), CEE_MONO_TLS);         \
-       mono_mb_emit_i4 ((mb), TLS_KEY_SGEN_THREAD_INFO);       \
+#define EMIT_TLS_ACCESS_TEMP_END(mb, var)      do {    \
+       mono_mb_emit_ldloc ((mb), (var));               \
        mono_mb_emit_icon ((mb), MONO_STRUCT_OFFSET (SgenThreadInfo, tlab_temp_end));   \
        mono_mb_emit_byte ((mb), CEE_ADD);              \
        mono_mb_emit_byte ((mb), CEE_LDIND_I);          \
        } while (0)
 
 #else
-#define EMIT_TLS_ACCESS_NEXT_ADDR(mb)  do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
-#define EMIT_TLS_ACCESS_TEMP_END(mb)   do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
+#define EMIT_TLS_ACCESS_VAR(mb, _var)  do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
+#define EMIT_TLS_ACCESS_NEXT_ADDR(mb, _var)    do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
+#define EMIT_TLS_ACCESS_TEMP_END(mb, _var)     do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
+#define EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR(mb, _var)      do { g_error ("sgen is not supported when using --with-tls=pthread.\n"); } while (0)
 #endif
 
 #endif
@@ -1042,9 +1068,10 @@ static gboolean use_managed_allocator = TRUE;
  * that they are executed atomically via the restart mechanism.
  */
 static MonoMethod*
-create_allocator (int atype, gboolean slowpath)
+create_allocator (int atype, ManagedAllocatorVariant variant)
 {
-       int p_var, size_var;
+       int p_var, size_var, thread_var G_GNUC_UNUSED;
+       gboolean slowpath = variant == MANAGED_ALLOCATOR_SLOW_PATH;
        guint32 slowpath_branch, max_size_branch;
        MonoMethodBuilder *mb;
        MonoMethod *res;
@@ -1116,6 +1143,16 @@ create_allocator (int atype, gboolean slowpath)
                goto done;
        }
 
+       EMIT_TLS_ACCESS_VAR (mb, thread_var);
+
+#ifdef MANAGED_ALLOCATOR_CAN_USE_CRITICAL_REGION
+       EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR (mb, thread_var);
+       mono_mb_emit_byte (mb, CEE_LDC_I4_1);
+       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+       mono_mb_emit_byte (mb, CEE_MONO_ATOMIC_STORE_I4);
+       mono_mb_emit_i4 (mb, MONO_MEMORY_BARRIER_NONE);
+#endif
+
        size_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
        if (atype == ATYPE_SMALL) {
                /* size_var = size_arg */
@@ -1265,7 +1302,7 @@ create_allocator (int atype, gboolean slowpath)
 
        /* tlab_next_addr (local) = tlab_next_addr (TLS var) */
        tlab_next_addr_var = mono_mb_add_local (mb, &mono_defaults.int_class->byval_arg);
-       EMIT_TLS_ACCESS_NEXT_ADDR (mb);
+       EMIT_TLS_ACCESS_NEXT_ADDR (mb, thread_var);
        mono_mb_emit_stloc (mb, tlab_next_addr_var);
 
        /* p = (void**)tlab_next; */
@@ -1284,7 +1321,7 @@ create_allocator (int atype, gboolean slowpath)
 
        /* if (G_LIKELY (new_next < tlab_temp_end)) */
        mono_mb_emit_ldloc (mb, new_next_var);
-       EMIT_TLS_ACCESS_TEMP_END (mb);
+       EMIT_TLS_ACCESS_TEMP_END (mb, thread_var);
        slowpath_branch = mono_mb_emit_short_branch (mb, MONO_CEE_BLT_UN_S);
 
        /* Slowpath */
@@ -1293,6 +1330,18 @@ create_allocator (int atype, gboolean slowpath)
 
        mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
        mono_mb_emit_byte (mb, CEE_MONO_NOT_TAKEN);
+       /*
+        * We are no longer in a critical section. We need to do this before calling
+        * to unmanaged land in order to avoid stw deadlocks since unmanaged code
+        * might take locks.
+        */
+#ifdef MANAGED_ALLOCATOR_CAN_USE_CRITICAL_REGION
+       EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR (mb, thread_var);
+       mono_mb_emit_byte (mb, CEE_LDC_I4_0);
+       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+       mono_mb_emit_byte (mb, CEE_MONO_ATOMIC_STORE_I4);
+       mono_mb_emit_i4 (mb, MONO_MEMORY_BARRIER_NONE);
+#endif
 
        /* FIXME: mono_gc_alloc_obj takes a 'size_t' as an argument, not an int32 */
        mono_mb_emit_ldarg (mb, 0);
@@ -1320,11 +1369,6 @@ create_allocator (int atype, gboolean slowpath)
        mono_mb_emit_ldloc (mb, new_next_var);
        mono_mb_emit_byte (mb, CEE_STIND_I);
 
-       /*The tlab store must be visible before the the vtable store. This could be replaced with a DDS but doing it with IL would be tricky. */
-       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
-       mono_mb_emit_byte (mb, CEE_MONO_MEMORY_BARRIER);
-       mono_mb_emit_i4 (mb, MONO_MEMORY_BARRIER_REL);
-
        /* *p = vtable; */
        mono_mb_emit_ldloc (mb, p_var);
        mono_mb_emit_ldarg (mb, 0);
@@ -1350,11 +1394,18 @@ create_allocator (int atype, gboolean slowpath)
                mono_mb_emit_byte (mb, MONO_CEE_STIND_I4);
        }
 
+#ifdef MANAGED_ALLOCATOR_CAN_USE_CRITICAL_REGION
+       EMIT_TLS_ACCESS_IN_CRITICAL_REGION_ADDR (mb, thread_var);
+       mono_mb_emit_byte (mb, CEE_LDC_I4_0);
+       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+       mono_mb_emit_byte (mb, CEE_MONO_ATOMIC_STORE_I4);
+#else
+       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
+       mono_mb_emit_byte (mb, CEE_MONO_MEMORY_BARRIER);
+#endif
        /*
        We must make sure both vtable and max_length are globaly visible before returning to managed land.
        */
-       mono_mb_emit_byte (mb, MONO_CUSTOM_PREFIX);
-       mono_mb_emit_byte (mb, CEE_MONO_MEMORY_BARRIER);
        mono_mb_emit_i4 (mb, MONO_MEMORY_BARRIER_REL);
 
        /* return p */
@@ -1403,17 +1454,19 @@ mono_gc_get_managed_allocator (MonoClass *klass, gboolean for_box, gboolean know
                return NULL;
        if (known_instance_size && ALIGN_TO (klass->instance_size, SGEN_ALLOC_ALIGN) >= SGEN_MAX_SMALL_OBJ_SIZE)
                return NULL;
-       if (mono_class_has_finalizer (klass) || mono_class_is_marshalbyref (klass) || (mono_profiler_get_events () & MONO_PROFILE_ALLOCATIONS))
+       if (mono_class_has_finalizer (klass) || mono_class_is_marshalbyref (klass))
                return NULL;
        if (klass->rank)
                return NULL;
+       if (mono_profiler_get_events () & MONO_PROFILE_ALLOCATIONS)
+               return NULL;
        if (klass->byval_arg.type == MONO_TYPE_STRING)
-               return mono_gc_get_managed_allocator_by_type (ATYPE_STRING, FALSE);
+               return mono_gc_get_managed_allocator_by_type (ATYPE_STRING, MANAGED_ALLOCATOR_REGULAR);
        /* Generic classes have dynamic field and can go above MAX_SMALL_OBJ_SIZE. */
        if (known_instance_size)
-               return mono_gc_get_managed_allocator_by_type (ATYPE_SMALL, FALSE);
+               return mono_gc_get_managed_allocator_by_type (ATYPE_SMALL, MANAGED_ALLOCATOR_REGULAR);
        else
-               return mono_gc_get_managed_allocator_by_type (ATYPE_NORMAL, FALSE);
+               return mono_gc_get_managed_allocator_by_type (ATYPE_NORMAL, MANAGED_ALLOCATOR_REGULAR);
 #else
        return NULL;
 #endif
@@ -1433,7 +1486,7 @@ mono_gc_get_managed_array_allocator (MonoClass *klass)
                return NULL;
        g_assert (!mono_class_has_finalizer (klass) && !mono_class_is_marshalbyref (klass));
 
-       return mono_gc_get_managed_allocator_by_type (ATYPE_VECTOR, FALSE);
+       return mono_gc_get_managed_allocator_by_type (ATYPE_VECTOR, MANAGED_ALLOCATOR_REGULAR);
 #else
        return NULL;
 #endif
@@ -1446,11 +1499,11 @@ sgen_set_use_managed_allocator (gboolean flag)
 }
 
 MonoMethod*
-mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath)
+mono_gc_get_managed_allocator_by_type (int atype, ManagedAllocatorVariant variant)
 {
 #ifdef MANAGED_ALLOCATION
        MonoMethod *res;
-       MonoMethod **cache = slowpath ? slowpath_alloc_method_cache : alloc_method_cache;
+       MonoMethod **cache;
 
        if (!use_managed_allocator)
                return NULL;
@@ -1458,11 +1511,17 @@ mono_gc_get_managed_allocator_by_type (int atype, gboolean slowpath)
        if (!mono_runtime_has_tls_get ())
                return NULL;
 
+       switch (variant) {
+       case MANAGED_ALLOCATOR_REGULAR: cache = alloc_method_cache; break;
+       case MANAGED_ALLOCATOR_SLOW_PATH: cache = slowpath_alloc_method_cache; break;
+       default: g_assert_not_reached (); break;
+       }
+
        res = cache [atype];
        if (res)
                return res;
 
-       res = create_allocator (atype, slowpath);
+       res = create_allocator (atype, variant);
        LOCK_GC;
        if (cache [atype]) {
                mono_free_method (res);
@@ -2183,11 +2242,7 @@ sgen_client_thread_register (SgenThreadInfo* info, void *stack_bottom_fallback)
                info->client_info.stack_end = (char*)stack_bottom;
        }
 
-#ifdef USE_MONO_CTX
        memset (&info->client_info.ctx, 0, sizeof (MonoContext));
-#else
-       memset (&info->client_info.regs, 0, sizeof (info->client_info.regs));
-#endif
 
        if (mono_gc_get_gc_callbacks ()->thread_attach_func)
                info->client_info.runtime_data = mono_gc_get_gc_callbacks ()->thread_attach_func ();
@@ -2195,6 +2250,8 @@ sgen_client_thread_register (SgenThreadInfo* info, void *stack_bottom_fallback)
        binary_protocol_thread_register ((gpointer)mono_thread_info_get_tid (info));
 
        SGEN_LOG (3, "registered thread %p (%p) stack end %p", info, (gpointer)mono_thread_info_get_tid (info), info->client_info.stack_end);
+
+       info->client_info.info.handle_stack = mono_handle_stack_alloc ();
 }
 
 void
@@ -2220,6 +2277,10 @@ sgen_client_thread_unregister (SgenThreadInfo *p)
 
        binary_protocol_thread_unregister ((gpointer)tid);
        SGEN_LOG (3, "unregister thread %p (%p)", p, (gpointer)tid);
+
+       HandleStack *handles = (HandleStack*) p->client_info.info.handle_stack;
+       p->client_info.info.handle_stack = NULL;
+       mono_handle_stack_free (handles);
 }
 
 void
@@ -2247,8 +2308,6 @@ thread_in_critical_region (SgenThreadInfo *info)
 static void
 sgen_thread_attach (SgenThreadInfo *info)
 {
-       mono_handle_arena_init ((MonoHandleArena**) &info->client_info.info.handle_arena);
-
        if (mono_gc_get_gc_callbacks ()->thread_attach_func && !info->client_info.runtime_data)
                info->client_info.runtime_data = mono_gc_get_gc_callbacks ()->thread_attach_func ();
 }
@@ -2257,15 +2316,13 @@ static void
 sgen_thread_detach (SgenThreadInfo *p)
 {
        /* If a delegate is passed to native code and invoked on a thread we dont
-        * know about, the jit will register it with mono_jit_thread_attach, but
+        * know about, marshal will register it with mono_threads_attach_coop, but
         * we have no way of knowing when that thread goes away.  SGen has a TSD
         * so we assume that if the domain is still registered, we can detach
         * the thread
         */
        if (mono_domain_get ())
                mono_thread_detach_internal (mono_thread_internal_current ());
-
-       mono_handle_arena_cleanup ((MonoHandleArena**) &p->client_info.info.handle_arena);
 }
 
 gboolean
@@ -2288,7 +2345,7 @@ void
 sgen_client_thread_register_worker (void)
 {
        mono_thread_info_register_small_id ();
-       mono_thread_info_set_name (mono_native_thread_id_get (), "SGen worker");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "SGen worker");
 }
 
 /* Variables holding start/end nursery so it won't have to be passed at every call */
@@ -2319,7 +2376,7 @@ sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gboolean p
 
        FOREACH_THREAD (info) {
                int skip_reason = 0;
-               void *aligned_stack_start = (void*)(mword) ALIGN_TO ((mword)info->client_info.stack_start, SIZEOF_VOID_P);
+               void *aligned_stack_start;
 
                if (info->client_info.skip) {
                        SGEN_LOG (3, "Skipping dead thread %p, range: %p-%p, size: %zd", info, info->client_info.stack_start, info->client_info.stack_end, (char*)info->client_info.stack_end - (char*)info->client_info.stack_start);
@@ -2330,6 +2387,9 @@ sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gboolean p
                } else if (!mono_thread_info_is_live (info)) {
                        SGEN_LOG (3, "Skipping non-running thread %p, range: %p-%p, size: %zd (state %x)", info, info->client_info.stack_start, info->client_info.stack_end, (char*)info->client_info.stack_end - (char*)info->client_info.stack_start, info->client_info.info.thread_state);
                        skip_reason = 3;
+               } else if (!info->client_info.stack_start) {
+                       SGEN_LOG (3, "Skipping starting or detaching thread %p", info);
+                       skip_reason = 4;
                }
 
                binary_protocol_scan_stack ((gpointer)mono_thread_info_get_tid (info), info->client_info.stack_start, info->client_info.stack_end, skip_reason);
@@ -2337,6 +2397,11 @@ sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gboolean p
                if (skip_reason)
                        continue;
 
+               g_assert (info->client_info.stack_start);
+               g_assert (info->client_info.stack_end);
+
+               aligned_stack_start = (void*)(mword) ALIGN_TO ((mword)info->client_info.stack_start, SIZEOF_VOID_P);
+
                g_assert (info->client_info.suspend_done);
                SGEN_LOG (3, "Scanning thread %p, range: %p-%p, size: %zd, pinned=%zd", info, info->client_info.stack_start, info->client_info.stack_end, (char*)info->client_info.stack_end - (char*)info->client_info.stack_start, sgen_get_pinned_count ());
                if (mono_gc_get_gc_callbacks ()->thread_mark_func && !conservative_stack_mark) {
@@ -2346,20 +2411,18 @@ sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gboolean p
                                fprintf (stderr, "Precise stack mark not supported - disabling.\n");
                                conservative_stack_mark = TRUE;
                        }
+                       //FIXME we should eventually use the new stack_mark from coop
                        sgen_conservatively_pin_objects_from ((void **)aligned_stack_start, (void **)info->client_info.stack_end, start_nursery, end_nursery, PIN_TYPE_STACK);
                }
 
                if (!precise) {
-#ifdef USE_MONO_CTX
                        sgen_conservatively_pin_objects_from ((void**)&info->client_info.ctx, (void**)(&info->client_info.ctx + 1),
                                start_nursery, end_nursery, PIN_TYPE_STACK);
-#else
-                       sgen_conservatively_pin_objects_from ((void**)&info->client_info.regs, (void**)&info->client_info.regs + ARCH_NUM_REGS,
-                                       start_nursery, end_nursery, PIN_TYPE_STACK);
-#endif
+
                        {
                                // This is used on Coop GC for platforms where we cannot get the data for individual registers.
                                // We force a spill of all registers into the stack and pass a chunk of data into sgen.
+                               //FIXME under coop, for now, what we need to ensure is that we scan any extra memory from info->client_info.stack_end to stack_mark
                                MonoThreadUnwindState *state = &info->client_info.info.thread_saved_state [SELF_SUSPEND_STATE_INDEX];
                                if (state && state->gc_stackdata) {
                                        sgen_conservatively_pin_objects_from ((void **)state->gc_stackdata, (void**)((char*)state->gc_stackdata + state->gc_stackdata_size),
@@ -2367,6 +2430,9 @@ sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gboolean p
                                }
                        }
                }
+               if (precise && info->client_info.info.handle_stack) {
+                       mono_handle_stack_scan ((HandleStack*)info->client_info.info.handle_stack, (GcScanFunc)ctx.ops->copy_or_mark_object, ctx.queue);
+               }
        } FOREACH_THREAD_END
 }
 
@@ -2468,7 +2534,11 @@ mono_gc_get_gc_name (void)
 char*
 mono_gc_get_description (void)
 {
+#ifdef HAVE_CONC_GC_AS_DEFAULT
+       return g_strdup ("sgen (concurrent by default)");
+#else
        return g_strdup ("sgen");
+#endif
 }
 
 void
@@ -2717,35 +2787,6 @@ sgen_client_degraded_allocation (size_t size)
        }
 }
 
-void
-sgen_client_log_timing (GGTimingInfo *info, mword last_major_num_sections, mword last_los_memory_usage)
-{
-       SgenMajorCollector *major_collector = sgen_get_major_collector ();
-       mword num_major_sections = major_collector->get_num_major_sections ();
-       char full_timing_buff [1024];
-       full_timing_buff [0] = '\0';
-
-       if (!info->is_overflow)
-               sprintf (full_timing_buff, "total %.2fms, bridge %.2fms", info->stw_time / 10000.0f, (int)info->bridge_time / 10000.0f);
-       if (info->generation == GENERATION_OLD)
-               mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR%s: (%s) pause %.2fms, %s los %dK/%dK",
-                       info->is_overflow ? "_OVERFLOW" : "",
-                       info->reason ? info->reason : "",
-                       (int)info->total_time / 10000.0f,
-                       full_timing_buff,
-                       los_memory_usage / 1024,
-                       last_los_memory_usage / 1024);
-       else
-               mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MINOR%s: (%s) pause %.2fms, %s promoted %dK major %dK los %dK",
-                               info->is_overflow ? "_OVERFLOW" : "",
-                       info->reason ? info->reason : "",
-                       (int)info->total_time / 10000.0f,
-                       full_timing_buff,
-                       (num_major_sections - last_major_num_sections) * major_collector->section_size / 1024,
-                       major_collector->section_size * num_major_sections / 1024,
-                       los_memory_usage / 1024);
-}
-
 /*
  * Debugging
  */
index 462680a63fe5c2f59b379cf4147da2e02f8e8f15..a1eb82a714fcdbfa72a89003e1eb988869f8a0b9 100644 (file)
@@ -65,9 +65,11 @@ typedef struct {
 
 
 /*
+ * Bridge data for a single managed object
+ *
  * FIXME: Optimizations:
  *
- * Don't allocate a scrs array for just one source.  Most objects have
+ * Don't allocate a srcs array for just one source.  Most objects have
  * just one source, so use the srcs pointer itself.
  */
 typedef struct _HashEntry {
@@ -80,10 +82,12 @@ typedef struct _HashEntry {
                        struct _HashEntry *forwarded_to;
                } dfs1;
                struct {
+                       // Index in sccs array of SCC this object was folded into
                        int scc_index;
                } dfs2;
        } v;
 
+       // "Source" managed objects pointing at this destination
        DynPtrArray srcs;
 } HashEntry;
 
@@ -92,12 +96,19 @@ typedef struct {
        double weight;
 } HashEntryWithAccounting;
 
+// The graph of managed objects/HashEntries is reduced to a graph of strongly connected components
 typedef struct _SCC {
        int index;
        int api_index;
+
+       // How many bridged objects does this SCC hold references to?
        int num_bridge_entries;
+
        gboolean flag;
+
        /*
+        * Index in global sccs array of SCCs holding pointers to this SCC
+        *
         * New and old xrefs are typically mutually exclusive.  Only when TEST_NEW_XREFS is
         * enabled we do both, and compare the results.  This should only be done for
         * debugging, obviously.
@@ -110,6 +121,7 @@ typedef struct _SCC {
 #endif
 } SCC;
 
+// Maps managed objects to corresponding HashEntry stricts
 static SgenHashTable hash_table = SGEN_HASH_TABLE_INIT (INTERNAL_MEM_BRIDGE_HASH_TABLE, INTERNAL_MEM_BRIDGE_HASH_TABLE_ENTRY, sizeof (HashEntry), mono_aligned_addr_hash, NULL);
 
 static guint32 current_time;
index a93cc7734ade79befcc811e6a8a4bf05047531a8..d33d5d86815d795db6168cf97b9e0f24b9c3f1ff 100644 (file)
@@ -41,11 +41,12 @@ typedef struct {
        DynArray array;
 } DynSCCArray;
 
-
 /*
+ * Bridge data for a single managed object
+ *
  * FIXME: Optimizations:
  *
- * Don't allocate a scrs array for just one source.  Most objects have
+ * Don't allocate a srcs array for just one source.  Most objects have
  * just one source, so use the srcs pointer itself.
  */
 typedef struct _HashEntry {
@@ -56,8 +57,10 @@ typedef struct _HashEntry {
 
        int finishing_time;
 
+       // "Source" managed objects pointing at this destination
        DynPtrArray srcs;
 
+       // Index in sccs array of SCC this object was folded into
        int scc_index;
 } HashEntry;
 
@@ -66,13 +69,19 @@ typedef struct {
        double weight;
 } HashEntryWithAccounting;
 
+// The graph of managed objects/HashEntries is reduced to a graph of strongly connected components
 typedef struct _SCC {
        int index;
        int api_index;
+
+       // How many bridged objects does this SCC hold references to?
        int num_bridge_entries;
+
+       // Index in global sccs array of SCCs holding pointers to this SCC
        DynIntArray xrefs;              /* these are incoming, not outgoing */
 } SCC;
 
+// Maps managed objects to corresponding HashEntry stricts
 static SgenHashTable hash_table = SGEN_HASH_TABLE_INIT (INTERNAL_MEM_OLD_BRIDGE_HASH_TABLE, INTERNAL_MEM_OLD_BRIDGE_HASH_TABLE_ENTRY, sizeof (HashEntry), mono_aligned_addr_hash, NULL);
 
 static int current_time;
index 1c45e375af5dffb372cc6b0338189ecee7e96d82..1f87eb137f329b42144817e3f483c7b3ab74df89 100644 (file)
@@ -78,11 +78,7 @@ sgen_suspend_thread (SgenThreadInfo *info)
        if (stack_start >= info->client_info.stack_start_limit && stack_start <= info->client_info.stack_end) {
                info->client_info.stack_start = stack_start;
 
-#ifdef USE_MONO_CTX
                mono_sigctx_to_monoctx (&ctx, &info->client_info.ctx);
-#else
-               ARCH_COPY_SIGCTX_REGS (&info->client_info.regs, &ctx);
-#endif
        } else {
                g_assert (!info->client_info.stack_start);
        }
index dc9d29ff1395ad81be62b1a63edde30f691135dc..5a9bae85b6db35d7c95d81b19ad82a6c2e921a65 100644 (file)
@@ -42,9 +42,6 @@ static void
 suspend_thread (SgenThreadInfo *info, void *context)
 {
        int stop_count;
-#ifndef USE_MONO_CTX
-       gpointer regs [ARCH_NUM_REGS];
-#endif
        MonoContext ctx;
        gpointer stack_start;
 
@@ -55,7 +52,6 @@ suspend_thread (SgenThreadInfo *info, void *context)
        if (0 && info->client_info.stop_count == stop_count)
                return;
 
-#ifdef USE_MONO_CTX
        if (context) {
                mono_sigctx_to_monoctx (context, &ctx);
                info->client_info.stopped_ip = MONO_CONTEXT_GET_IP (&ctx);
@@ -64,30 +60,17 @@ suspend_thread (SgenThreadInfo *info, void *context)
                info->client_info.stopped_ip = NULL;
                stack_start = NULL;
        }
-#else
-       info->client_info.stopped_ip = context ? (gpointer) ARCH_SIGCTX_IP (context) : NULL;
-       stack_start = context ? (char*) ARCH_SIGCTX_SP (context) - REDZONE_SIZE : NULL;
-#endif
 
        /* If stack_start is not within the limits, then don't set it
           in info and we will be restarted. */
        if (stack_start >= info->client_info.stack_start_limit && stack_start <= info->client_info.stack_end) {
                info->client_info.stack_start = stack_start;
 
-#ifdef USE_MONO_CTX
                if (context) {
                        memcpy (&info->client_info.ctx, &ctx, sizeof (MonoContext));
                } else {
                        memset (&info->client_info.ctx, 0, sizeof (MonoContext));
                }
-#else
-               if (context) {
-                       ARCH_COPY_SIGCTX_REGS (regs, context);
-                       memcpy (&info->client_info.regs, regs, sizeof (info->client_info.regs));
-               } else {
-                       memset (&info->client_info.regs, 0, sizeof (info->client_info.regs));
-               }
-#endif
        } else {
                g_assert (!info->client_info.stack_start);
        }
index 3e78396ccd10f536f2bd73be7b41f01c69b76435..8b78616129a9da8ed7a593fab28349e1143bd791 100644 (file)
@@ -58,7 +58,6 @@ sgen_suspend_thread (SgenThreadInfo *info)
        CloseHandle (handle);
 
 #if !defined(MONO_CROSS_COMPILE)
-#ifdef USE_MONO_CTX
        memset (&info->client_info.ctx, 0, sizeof (MonoContext));
 #ifdef TARGET_AMD64
     info->client_info.ctx.gregs[AMD64_RIP] = context.Rip;
@@ -92,19 +91,6 @@ sgen_suspend_thread (SgenThreadInfo *info)
        info->client_info.stopped_ip = (gpointer)context.Eip;
        info->client_info.stack_start = (char*)context.Esp - REDZONE_SIZE;
 #endif
-
-#else
-       info->client_info.regs [0] = context.Edi;
-       info->client_info.regs [1] = context.Esi;
-       info->client_info.regs [2] = context.Ebx;
-       info->client_info.regs [3] = context.Edx;
-       info->client_info.regs [4] = context.Ecx;
-       info->client_info.regs [5] = context.Eax;
-       info->client_info.regs [6] = context.Ebp;
-       info->client_info.regs [7] = context.Esp;
-       info->client_info.stopped_ip = (gpointer)context.Eip;
-       info->client_info.stack_start = (char*)context.Esp - REDZONE_SIZE;
-#endif
 #endif
 
        /* Notify the JIT */
index 4185ce07b8ad67d96965485b9516dcf02fb70a59..ea14448ccfbfaeb7b376fbf06abd59135cf6b680 100644 (file)
@@ -24,6 +24,7 @@
 #include "sgen/sgen-client.h"
 #include "metadata/sgen-bridge-internals.h"
 #include "metadata/gc-internals.h"
+#include "utils/mono-threads.h"
 
 #define TV_DECLARE SGEN_TV_DECLARE
 #define TV_GETTIME SGEN_TV_GETTIME
 static void sgen_unified_suspend_restart_world (void);
 static void sgen_unified_suspend_stop_world (void);
 
+static TV_DECLARE (end_of_last_stw);
+
+guint64 mono_time_since_last_stw ()
+{
+       if (end_of_last_stw == 0)
+               return 0;
+
+       TV_DECLARE (current_time);
+       TV_GETTIME (current_time);
+       return TV_ELAPSED (end_of_last_stw, current_time);
+}
+
 unsigned int sgen_global_stop_count = 0;
 
 inline static void*
@@ -43,34 +56,24 @@ align_pointer (void *ptr)
        return (void*)p;
 }
 
-#ifdef USE_MONO_CTX
-static MonoContext cur_thread_ctx;
-#else
-static mword cur_thread_regs [ARCH_NUM_REGS];
-#endif
-
 static void
 update_current_thread_stack (void *start)
 {
        int stack_guard = 0;
-#if !defined(USE_MONO_CTX)
-       void *reg_ptr = cur_thread_regs;
-#endif
        SgenThreadInfo *info = mono_thread_info_current ();
-       
+
        info->client_info.stack_start = align_pointer (&stack_guard);
+       g_assert (info->client_info.stack_start);
        g_assert (info->client_info.stack_start >= info->client_info.stack_start_limit && info->client_info.stack_start < info->client_info.stack_end);
-#ifdef USE_MONO_CTX
-       MONO_CONTEXT_GET_CURRENT (cur_thread_ctx);
-       memcpy (&info->client_info.ctx, &cur_thread_ctx, sizeof (MonoContext));
-       if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
-               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->client_info.runtime_data, NULL, &info->client_info.ctx);
+
+#if !defined(MONO_CROSS_COMPILE) && MONO_ARCH_HAS_MONO_CONTEXT
+       MONO_CONTEXT_GET_CURRENT (info->client_info.ctx);
 #else
-       ARCH_STORE_REGS (reg_ptr);
-       memcpy (&info->client_info.regs, reg_ptr, sizeof (info->client_info.regs));
-       if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
-               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->client_info.runtime_data, NULL, NULL);
+       g_error ("Sgen STW requires a working mono-context");
 #endif
+
+       if (mono_gc_get_gc_callbacks ()->thread_suspend_func)
+               mono_gc_get_gc_callbacks ()->thread_suspend_func (info->client_info.runtime_data, NULL, &info->client_info.ctx);
 }
 
 static gboolean
@@ -237,12 +240,11 @@ sgen_client_stop_world (int generation)
 
 /* LOCKING: assumes the GC lock is held */
 void
-sgen_client_restart_world (int generation, GGTimingInfo *timing)
+sgen_client_restart_world (int generation, gint64 *stw_time)
 {
        TV_DECLARE (end_sw);
        TV_DECLARE (start_handshake);
-       TV_DECLARE (end_bridge);
-       unsigned long usec, bridge_usec;
+       unsigned long usec;
 
        /* notify the profiler of the leftovers */
        /* FIXME this is the wrong spot at we can STW for non collection reasons. */
@@ -251,11 +253,7 @@ sgen_client_restart_world (int generation, GGTimingInfo *timing)
 
        FOREACH_THREAD (info) {
                info->client_info.stack_start = NULL;
-#ifdef USE_MONO_CTX
                memset (&info->client_info.ctx, 0, sizeof (MonoContext));
-#else
-               memset (&info->client_info.regs, 0, sizeof (info->client_info.regs));
-#endif
        } FOREACH_THREAD_END
 
        TV_GETTIME (start_handshake);
@@ -269,6 +267,7 @@ sgen_client_restart_world (int generation, GGTimingInfo *timing)
        time_restart_world += TV_ELAPSED (start_handshake, end_sw);
        usec = TV_ELAPSED (stop_world_time, end_sw);
        max_pause_usec = MAX (usec, max_pause_usec);
+       end_of_last_stw = end_sw;
 
        SGEN_LOG (2, "restarted (pause time: %d usec, max: %d)", (int)usec, (int)max_pause_usec);
 
@@ -284,13 +283,7 @@ sgen_client_restart_world (int generation, GGTimingInfo *timing)
         */
        release_gc_locks ();
 
-       TV_GETTIME (end_bridge);
-       bridge_usec = TV_ELAPSED (end_sw, end_bridge);
-
-       if (timing) {
-               timing [0].stw_time = usec;
-               timing [0].bridge_time = bridge_usec;
-       }
+       *stw_time = usec;
 }
 
 void
@@ -303,7 +296,7 @@ mono_sgen_init_stw (void)
 /* Unified suspend code */
 
 static gboolean
-sgen_is_thread_in_current_stw (SgenThreadInfo *info)
+sgen_is_thread_in_current_stw (SgenThreadInfo *info, int *reason)
 {
        /*
        A thread explicitly asked to be skiped because it holds no managed state.
@@ -311,6 +304,8 @@ sgen_is_thread_in_current_stw (SgenThreadInfo *info)
        FIXME Use an atomic variable for this to avoid everyone taking the GC LOCK.
        */
        if (info->client_info.gc_disabled) {
+               if (reason)
+                       *reason = 1;
                return FALSE;
        }
 
@@ -319,6 +314,8 @@ sgen_is_thread_in_current_stw (SgenThreadInfo *info)
        FIXME: can't we merge this with thread_is_dying?
        */
        if (info->client_info.skip) {
+               if (reason)
+                       *reason = 2;
                return FALSE;
        }
 
@@ -326,6 +323,8 @@ sgen_is_thread_in_current_stw (SgenThreadInfo *info)
        Suspending the current thread will deadlock us, bad idea.
        */
        if (info == mono_thread_info_current ()) {
+               if (reason)
+                       *reason = 3;
                return FALSE;
        }
 
@@ -334,6 +333,8 @@ sgen_is_thread_in_current_stw (SgenThreadInfo *info)
        FIXME Use some state bit in SgenThreadInfo for this.
        */
        if (sgen_thread_pool_is_thread_pool_thread (mono_thread_info_get_tid (info))) {
+               if (reason)
+                       *reason = 4;
                return FALSE;
        }
 
@@ -342,34 +343,14 @@ sgen_is_thread_in_current_stw (SgenThreadInfo *info)
        FIXME: can't we merge this with skip
        */
        if (!mono_thread_info_is_live (info)) {
+               if (reason)
+                       *reason = 5;
                return FALSE;
        }
 
        return TRUE;
 }
 
-static void
-update_sgen_info (SgenThreadInfo *info)
-{
-       char *stack_start;
-
-       /* Once we remove the old suspend code, we should move sgen to directly access the state in MonoThread */
-       info->client_info.stopped_domain = (MonoDomain *)mono_thread_info_tls_get (info, TLS_KEY_DOMAIN);
-       info->client_info.stopped_ip = (gpointer) MONO_CONTEXT_GET_IP (&mono_thread_info_get_suspend_state (info)->ctx);
-       stack_start = (char*)MONO_CONTEXT_GET_SP (&mono_thread_info_get_suspend_state (info)->ctx) - REDZONE_SIZE;
-
-       /* altstack signal handler, sgen can't handle them, mono-threads should have handled this. */
-       if (stack_start < (char*)info->client_info.stack_start_limit || stack_start >= (char*)info->client_info.stack_end)
-               g_error ("BAD STACK");
-
-       info->client_info.stack_start = stack_start;
-#ifdef USE_MONO_CTX
-       info->client_info.ctx = mono_thread_info_get_suspend_state (info)->ctx;
-#else
-       g_assert_not_reached ();
-#endif
-}
-
 static void
 sgen_unified_suspend_stop_world (void)
 {
@@ -380,13 +361,14 @@ sgen_unified_suspend_stop_world (void)
        THREADS_STW_DEBUG ("[GC-STW-BEGIN] *** BEGIN SUSPEND *** \n");
 
        FOREACH_THREAD (info) {
+               int reason;
                info->client_info.skip = FALSE;
                info->client_info.suspend_done = FALSE;
-               if (sgen_is_thread_in_current_stw (info)) {
+               if (sgen_is_thread_in_current_stw (info, &reason)) {
                        info->client_info.skip = !mono_thread_info_begin_suspend (info);
                        THREADS_STW_DEBUG ("[GC-STW-BEGIN-SUSPEND] SUSPEND thread %p skip %d\n", mono_thread_info_get_tid (info), info->client_info.skip);
                } else {
-                       THREADS_STW_DEBUG ("[GC-STW-BEGIN-SUSPEND] IGNORE thread %p skip %d\n", mono_thread_info_get_tid (info), info->client_info.skip);
+                       THREADS_STW_DEBUG ("[GC-STW-BEGIN-SUSPEND] IGNORE thread %p skip %d reason %d\n", mono_thread_info_get_tid (info), info->client_info.skip, reason);
                }
        } FOREACH_THREAD_END
 
@@ -396,8 +378,9 @@ sgen_unified_suspend_stop_world (void)
        for (;;) {
                restart_counter = 0;
                FOREACH_THREAD (info) {
-                       if (info->client_info.suspend_done || !sgen_is_thread_in_current_stw (info)) {
-                               THREADS_STW_DEBUG ("[GC-STW-RESTART] IGNORE thread %p not been processed done %d current %d\n", mono_thread_info_get_tid (info), info->client_info.suspend_done, !sgen_is_thread_in_current_stw (info));
+                       int reason = 0;
+                       if (info->client_info.suspend_done || !sgen_is_thread_in_current_stw (info, &reason)) {
+                               THREADS_STW_DEBUG ("[GC-STW-RESTART] IGNORE RESUME thread %p not been processed done %d current %d reason %d\n", mono_thread_info_get_tid (info), info->client_info.suspend_done, !sgen_is_thread_in_current_stw (info, NULL), reason);
                                continue;
                        }
 
@@ -407,12 +390,11 @@ sgen_unified_suspend_stop_world (void)
                        - We haven't accepted the previous suspend as good.
                        - We haven't gave up on it for this STW (it's either bad or asked not to)
                        */
-                       if (!mono_thread_info_check_suspend_result (info)) {
-                               THREADS_STW_DEBUG ("[GC-STW-RESTART] SKIP thread %p failed to finish to suspend\n", mono_thread_info_get_tid (info));
-                               info->client_info.skip = TRUE;
-                       } else if (mono_thread_info_in_critical_location (info)) {
+                       if (mono_thread_info_in_critical_location (info)) {
                                gboolean res;
-                               g_assert (mono_thread_info_suspend_count (info) == 1);
+                               gint suspend_count = mono_thread_info_suspend_count (info);
+                               if (!(suspend_count == 1))
+                                       g_error ("[%p] suspend_count = %d, but should be 1", mono_thread_info_get_tid (info), suspend_count);
                                res = mono_thread_info_begin_resume (info);
                                THREADS_STW_DEBUG ("[GC-STW-RESTART] RESTART thread %p skip %d\n", mono_thread_info_get_tid (info), res);
                                if (res)
@@ -431,11 +413,7 @@ sgen_unified_suspend_stop_world (void)
                mono_threads_wait_pending_operations ();
 
                if (sleep_duration < 0) {
-#ifdef HOST_WIN32
-                       SwitchToThread ();
-#else
-                       sched_yield ();
-#endif
+                       mono_thread_info_yield ();
                        sleep_duration = 0;
                } else {
                        g_usleep (sleep_duration);
@@ -443,7 +421,13 @@ sgen_unified_suspend_stop_world (void)
                }
 
                FOREACH_THREAD (info) {
-                       if (sgen_is_thread_in_current_stw (info) && mono_thread_info_is_running (info)) {
+                       int reason = 0;
+                       if (info->client_info.suspend_done || !sgen_is_thread_in_current_stw (info, &reason)) {
+                               THREADS_STW_DEBUG ("[GC-STW-RESTART] IGNORE SUSPEND thread %p not been processed done %d current %d reason %d\n", mono_thread_info_get_tid (info), info->client_info.suspend_done, !sgen_is_thread_in_current_stw (info, NULL), reason);
+                               continue;
+                       }
+
+                       if (mono_thread_info_is_running (info)) {
                                gboolean res = mono_thread_info_begin_suspend (info);
                                THREADS_STW_DEBUG ("[GC-STW-RESTART] SUSPEND thread %p skip %d\n", mono_thread_info_get_tid (info), res);
                                if (!res)
@@ -455,11 +439,40 @@ sgen_unified_suspend_stop_world (void)
        }
 
        FOREACH_THREAD (info) {
-               if (sgen_is_thread_in_current_stw (info)) {
+               int reason = 0;
+               if (sgen_is_thread_in_current_stw (info, &reason)) {
+                       MonoThreadUnwindState *state;
+
                        THREADS_STW_DEBUG ("[GC-STW-SUSPEND-END] thread %p is suspended\n", mono_thread_info_get_tid (info));
                        g_assert (info->client_info.suspend_done);
-                       update_sgen_info (info);
+
+                       state = mono_thread_info_get_suspend_state (info);
+
+                       info->client_info.ctx = state->ctx;
+
+                       if (!state->unwind_data [MONO_UNWIND_DATA_DOMAIN] || !state->unwind_data [MONO_UNWIND_DATA_LMF]) {
+                               /* thread is starting or detaching, nothing to scan here */
+                               info->client_info.stopped_domain = NULL;
+                               info->client_info.stopped_ip = NULL;
+                               info->client_info.stack_start = NULL;
+                       } else {
+                               /* Once we remove the old suspend code, we should move sgen to directly access the state in MonoThread */
+                               info->client_info.stopped_domain = (MonoDomain*) mono_thread_info_tls_get (info, TLS_KEY_DOMAIN);
+                               info->client_info.stopped_ip = (gpointer) (MONO_CONTEXT_GET_IP (&info->client_info.ctx));
+                               info->client_info.stack_start = (gpointer) ((char*)MONO_CONTEXT_GET_SP (&info->client_info.ctx) - REDZONE_SIZE);
+
+                               /* altstack signal handler, sgen can't handle them, mono-threads should have handled this. */
+                               if (!info->client_info.stack_start
+                                        || info->client_info.stack_start < info->client_info.stack_start_limit
+                                        || info->client_info.stack_start >= info->client_info.stack_end) {
+                                       g_error ("BAD STACK: stack_start = %p, stack_start_limit = %p, stack_end = %p",
+                                               info->client_info.stack_start, info->client_info.stack_start_limit, info->client_info.stack_end);
+                               }
+                       }
+
+                       binary_protocol_thread_suspend ((gpointer) mono_thread_info_get_tid (info), info->client_info.stopped_ip);
                } else {
+                       THREADS_STW_DEBUG ("[GC-STW-SUSPEND-END] thread %p is NOT suspended, reason %d\n", mono_thread_info_get_tid (info), reason);
                        g_assert (!info->client_info.suspend_done || info == mono_thread_info_current ());
                }
        } FOREACH_THREAD_END
@@ -470,11 +483,14 @@ sgen_unified_suspend_restart_world (void)
 {
        THREADS_STW_DEBUG ("[GC-STW-END] *** BEGIN RESUME ***\n");
        FOREACH_THREAD (info) {
-               if (sgen_is_thread_in_current_stw (info)) {
+               int reason = 0;
+               if (sgen_is_thread_in_current_stw (info, &reason)) {
                        g_assert (mono_thread_info_begin_resume (info));
                        THREADS_STW_DEBUG ("[GC-STW-RESUME-WORLD] RESUME thread %p\n", mono_thread_info_get_tid (info));
+
+                       binary_protocol_thread_restart ((gpointer) mono_thread_info_get_tid (info));
                } else {
-                       THREADS_STW_DEBUG ("[GC-STW-RESUME-WORLD] IGNORE thread %p\n", mono_thread_info_get_tid (info));
+                       THREADS_STW_DEBUG ("[GC-STW-RESUME-WORLD] IGNORE thread %p, reason %d\n", mono_thread_info_get_tid (info), reason);
                }
        } FOREACH_THREAD_END
 
index 764d9d72626db8df7ac104204980b8e3fb0abd45..66dff8d1d1c35bd582640155ea57346b4fabe46e 100644 (file)
@@ -924,11 +924,6 @@ processing_stw_step (void)
 #if defined (DUMP_GRAPH)
        printf ("-----------------\n");
 #endif
-       /*
-        * bridge_processing_in_progress must be set with the world
-        * stopped.  If not there would be race conditions.
-        */
-       bridge_processing_in_progress = TRUE;
 
        SGEN_TV_GETTIME (curtime);
 
@@ -1134,7 +1129,6 @@ processing_after_callback (int generation)
 
        cache_hits = cache_misses = 0;
        ignored_objects = 0;
-       bridge_processing_in_progress = FALSE;
 }
 
 static void
index 6c3e0cf22875f07ffd8d1a3f6a77b4c61e396f3e..95bac2301bd8b5f9d0dc20e5adb70b777ebf1faf 100644 (file)
@@ -618,8 +618,10 @@ get_family_hint (MonoError *error)
                mono_runtime_class_init_full (vtable, error);
                return_val_if_nok (error, -1);
 
-               mono_field_static_get_value (vtable, ipv4_field, &ipv4_enabled);
-               mono_field_static_get_value (vtable, ipv6_field, &ipv6_enabled);
+               mono_field_static_get_value_checked (vtable, ipv4_field, &ipv4_enabled, error);
+               return_val_if_nok (error, -1);
+               mono_field_static_get_value_checked (vtable, ipv6_field, &ipv6_enabled, error);
+               return_val_if_nok (error, -1);
 
                mono_domain_lock (domain);
                if (ipv4_enabled == 1 && ipv6_enabled == 1) {
@@ -693,9 +695,9 @@ ves_icall_System_Net_Sockets_Socket_Close_internal (SOCKET sock, gint32 *werror)
         * polling system does not notify when the socket is closed */
        mono_threadpool_ms_io_remove_socket (GPOINTER_TO_INT (sock));
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        closesocket (sock);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 }
 
 gint32
@@ -756,7 +758,7 @@ ves_icall_System_Net_Sockets_Socket_Accept_internal (SOCKET sock, gint32 *werror
                return NULL;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
 #ifdef HOST_WIN32
        {
@@ -769,7 +771,7 @@ ves_icall_System_Net_Sockets_Socket_Accept_internal (SOCKET sock, gint32 *werror
        newsock = _wapi_accept (sock, NULL, 0);
 #endif
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -792,11 +794,11 @@ ves_icall_System_Net_Sockets_Socket_Listen_internal(SOCKET sock, guint32 backlog
        
        *werror = 0;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_listen (sock, backlog);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret == SOCKET_ERROR)
                *werror = WSAGetLastError ();
@@ -839,10 +841,16 @@ create_object_from_sockaddr (struct sockaddr *saddr, int sa_size, gint32 *werror
        
        /* Locate the SocketAddress data buffer in the object */
        if (!domain->sockaddr_data_field) {
-               domain->sockaddr_data_field = mono_class_get_field_from_name (domain->sockaddr_class, "data");
+               domain->sockaddr_data_field = mono_class_get_field_from_name (domain->sockaddr_class, "m_Buffer");
                g_assert (domain->sockaddr_data_field);
        }
 
+       /* Locate the SocketAddress data buffer length in the object */
+       if (!domain->sockaddr_data_length_field) {
+               domain->sockaddr_data_length_field = mono_class_get_field_from_name (domain->sockaddr_class, "m_Size");
+               g_assert (domain->sockaddr_data_length_field);
+       }
+
        /* May be the +2 here is too conservative, as sa_len returns
         * the length of the entire sockaddr_in/in6, including
         * sizeof (unsigned short) of the family */
@@ -869,8 +877,9 @@ create_object_from_sockaddr (struct sockaddr *saddr, int sa_size, gint32 *werror
                struct sockaddr_in *sa_in = (struct sockaddr_in *)saddr;
                guint16 port = ntohs (sa_in->sin_port);
                guint32 address = ntohl (sa_in->sin_addr.s_addr);
+               int buffer_size = 8;
                
-               if (sa_size < 8) {
+               if (sa_size < buffer_size) {
                        mono_error_set_exception_instance (error, mono_exception_from_name (mono_get_corlib (), "System", "SystemException"));
                        return NULL;
                }
@@ -883,15 +892,17 @@ create_object_from_sockaddr (struct sockaddr *saddr, int sa_size, gint32 *werror
                mono_array_set (data, guint8, 7, (address) & 0xff);
        
                mono_field_set_value (sockaddr_obj, domain->sockaddr_data_field, data);
+               mono_field_set_value (sockaddr_obj, domain->sockaddr_data_length_field, &buffer_size);
 
                return sockaddr_obj;
        } else if (saddr->sa_family == AF_INET6) {
                struct sockaddr_in6 *sa_in = (struct sockaddr_in6 *)saddr;
                int i;
+               int buffer_size = 28;
 
                guint16 port = ntohs (sa_in->sin6_port);
 
-               if (sa_size < 28) {
+               if (sa_size < buffer_size) {
                        mono_error_set_exception_instance (error, mono_exception_from_name (mono_get_corlib (), "System", "SystemException"));
                        return NULL;
                }
@@ -919,17 +930,20 @@ create_object_from_sockaddr (struct sockaddr *saddr, int sa_size, gint32 *werror
                                                (sa_in->sin6_scope_id >> 24) & 0xff);
 
                mono_field_set_value (sockaddr_obj, domain->sockaddr_data_field, data);
+               mono_field_set_value (sockaddr_obj, domain->sockaddr_data_length_field, &buffer_size);
 
                return sockaddr_obj;
        }
 #ifdef HAVE_SYS_UN_H
        else if (saddr->sa_family == AF_UNIX) {
                int i;
+               int buffer_size = sa_size + 2;
 
                for (i = 0; i < sa_size; i++)
                        mono_array_set (data, guint8, i + 2, saddr->sa_data [i]);
                
                mono_field_set_value (sockaddr_obj, domain->sockaddr_data_field, data);
+               mono_field_set_value (sockaddr_obj, domain->sockaddr_data_length_field, &buffer_size);
 
                return sockaddr_obj;
        }
@@ -977,11 +991,11 @@ ves_icall_System_Net_Sockets_Socket_LocalEndPoint_internal (SOCKET sock, gint32
        }
        sa = (salen <= 128) ? (gchar *)alloca (salen) : (gchar *)g_malloc0 (salen);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_getsockname (sock, (struct sockaddr *)sa, &salen);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        
        if (ret == SOCKET_ERROR) {
                *werror = WSAGetLastError ();
@@ -1019,11 +1033,11 @@ ves_icall_System_Net_Sockets_Socket_RemoteEndPoint_internal (SOCKET sock, gint32
        sa = (salen <= 128) ? (gchar *)alloca (salen) : (gchar *)g_malloc0 (salen);
        /* Note: linux returns just 2 for AF_UNIX. Always. */
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_getpeername (sock, (struct sockaddr *)sa, &salen);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret == SOCKET_ERROR) {
                *werror = WSAGetLastError ();
@@ -1045,16 +1059,29 @@ ves_icall_System_Net_Sockets_Socket_RemoteEndPoint_internal (SOCKET sock, gint32
 static struct sockaddr*
 create_sockaddr_from_object (MonoObject *saddr_obj, socklen_t *sa_size, gint32 *werror, MonoError *error)
 {
-       MonoClassField *field;
+       MonoDomain *domain = mono_domain_get ();
        MonoArray *data;
        gint32 family;
        int len;
 
        mono_error_init (error);
 
-       /* Dig the SocketAddress data buffer out of the object */
-       field = mono_class_get_field_from_name (saddr_obj->vtable->klass, "data");
-       data = *(MonoArray **)(((char *)saddr_obj) + field->offset);
+       if (!domain->sockaddr_class)
+               domain->sockaddr_class = mono_class_load_from_name (get_socket_assembly (), "System.Net", "SocketAddress");
+
+       /* Locate the SocketAddress data buffer in the object */
+       if (!domain->sockaddr_data_field) {
+               domain->sockaddr_data_field = mono_class_get_field_from_name (domain->sockaddr_class, "m_Buffer");
+               g_assert (domain->sockaddr_data_field);
+       }
+
+       /* Locate the SocketAddress data buffer length in the object */
+       if (!domain->sockaddr_data_length_field) {
+               domain->sockaddr_data_length_field = mono_class_get_field_from_name (domain->sockaddr_class, "m_Size");
+               g_assert (domain->sockaddr_data_length_field);
+       }
+
+       data = *(MonoArray **)(((char *)saddr_obj) + domain->sockaddr_data_field->offset);
 
        /* The data buffer is laid out as follows:
         * byte 0 is the address family low byte
@@ -1065,12 +1092,9 @@ create_sockaddr_from_object (MonoObject *saddr_obj, socklen_t *sa_size, gint32 *
         * UNIX:
         *      the rest is the file name
         */
-       len = mono_array_length (data);
-       if (len < 2) {
-               mono_error_set_exception_instance (error, mono_exception_from_name (mono_get_corlib (), "System", "SystemException"));
-               return NULL;
-       }
-       
+       len = *(int *)(((char *)saddr_obj) + domain->sockaddr_data_length_field->offset);
+       g_assert (len >= 2);
+
        family = convert_family ((MonoAddressFamily)(mono_array_get (data, guint8, 0) + (mono_array_get (data, guint8, 1) << 8)));
        if (family == AF_INET) {
                struct sockaddr_in *sa;
@@ -1226,11 +1250,11 @@ ves_icall_System_Net_Sockets_Socket_Poll_internal (SOCKET sock, gint mode,
                        return FALSE;
                }
 
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
 
                ret = mono_poll (pfds, 1, timeout);
 
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
 
                mono_thread_info_uninstall_interrupt (&interrupted);
                if (interrupted) {
@@ -1305,11 +1329,11 @@ ves_icall_System_Net_Sockets_Socket_Connect_internal (SOCKET sock, MonoObject *s
                return;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_connect (sock, sa, sa_size);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1352,7 +1376,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
 
        LOGDEBUG (g_message("%s: disconnecting from socket %p (reuse %d)", __func__, sock, reuse));
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        /* I _think_ the extension function pointers need to be looked
         * up for each socket.  FIXME: check the best way to store
@@ -1362,7 +1386,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
        ret = WSAIoctl (sock, SIO_GET_EXTENSION_FUNCTION_POINTER, (gchar *)&disco_guid, sizeof (GUID),
                                        (gchar *)&_wapi_disconnectex, sizeof (void *), &output_bytes, NULL, NULL);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret != 0) {
                /* make sure that WSAIoctl didn't put crap in the
@@ -1370,7 +1394,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
                 */
                _wapi_disconnectex = NULL;
 
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
 
                /*
                 * Use the SIO_GET_EXTENSION_FUNCTION_POINTER to
@@ -1383,7 +1407,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
                ret = WSAIoctl (sock, SIO_GET_EXTENSION_FUNCTION_POINTER, (gchar *)&trans_guid, sizeof(GUID),
                                (gchar *)&_wapi_transmitfile, sizeof(void *), &output_bytes, NULL, NULL);
 
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
 
                if (ret != 0)
                        _wapi_transmitfile = NULL;
@@ -1395,7 +1419,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
                return;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        if (_wapi_disconnectex != NULL) {
                if (!_wapi_disconnectex (sock, NULL, TF_REUSE_SOCKET, 0))
@@ -1407,7 +1431,7 @@ ves_icall_System_Net_Sockets_Socket_Disconnect_internal (SOCKET sock, MonoBoolea
                *werror = ERROR_NOT_SUPPORTED;
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted)
@@ -1442,7 +1466,7 @@ ves_icall_System_Net_Sockets_Socket_Receive_internal (SOCKET sock, MonoArray *bu
        if (interrupted)
                return 0;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
 #ifdef HOST_WIN32
        {
@@ -1454,7 +1478,7 @@ ves_icall_System_Net_Sockets_Socket_Receive_internal (SOCKET sock, MonoArray *bu
        ret = _wapi_recv (sock, buf, count, recvflags);
 #endif
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1496,11 +1520,11 @@ ves_icall_System_Net_Sockets_Socket_Receive_array_internal (SOCKET sock, MonoArr
                return 0;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = WSARecv (sock, wsabufs, count, &recv, &recvflags, NULL, NULL);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1557,11 +1581,11 @@ ves_icall_System_Net_Sockets_Socket_ReceiveFrom_internal (SOCKET sock, MonoArray
                return 0;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_recvfrom (sock, buf, count, recvflags, sa, &sa_size);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1629,11 +1653,11 @@ ves_icall_System_Net_Sockets_Socket_Send_internal (SOCKET sock, MonoArray *buffe
                return 0;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_send (sock, buf, count, sendflags);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1675,11 +1699,11 @@ ves_icall_System_Net_Sockets_Socket_Send_array_internal (SOCKET sock, MonoArray
                return 0;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = WSASend (sock, wsabufs, count, &sent, sendflags, NULL, NULL);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1742,11 +1766,11 @@ ves_icall_System_Net_Sockets_Socket_SendTo_internal (SOCKET sock, MonoArray *buf
                return 0;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_sendto (sock, buf, count, sendflags, sa, sa_size);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -1833,11 +1857,11 @@ ves_icall_System_Net_Sockets_Socket_Select_internal (MonoArray **sockets, gint32
                        return;
                }
 
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
 
                ret = mono_poll (pfds, nfds, timeout);
 
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
 
                mono_thread_info_uninstall_interrupt (&interrupted);
                if (interrupted) {
@@ -1979,7 +2003,7 @@ ves_icall_System_Net_Sockets_Socket_GetSocketOption_obj_internal (SOCKET sock, g
                return;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        /* No need to deal with MulticastOption names here, because
         * you cant getsockopt AddMembership or DropMembership (the
@@ -2006,7 +2030,7 @@ ves_icall_System_Net_Sockets_Socket_GetSocketOption_obj_internal (SOCKET sock, g
                ret = _wapi_getsockopt (sock, system_level, system_name, &val, &valsize);
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret == SOCKET_ERROR) {
                *werror = WSAGetLastError ();
@@ -2118,11 +2142,11 @@ ves_icall_System_Net_Sockets_Socket_GetSocketOption_arr_internal (SOCKET sock, g
        valsize = mono_array_length (*byte_val);
        buf = mono_array_addr (*byte_val, guchar, 0);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = _wapi_getsockopt (sock, system_level, system_name, buf, &valsize);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret == SOCKET_ERROR)
                *werror = WSAGetLastError ();
@@ -2155,19 +2179,20 @@ ipaddress_to_struct_in6_addr (MonoObject *ipaddr)
        int i;
 
        field = mono_class_get_field_from_name (ipaddr->vtable->klass, "m_Numbers");
+       g_assert (field);
        data = *(MonoArray **)(((char *)ipaddr) + field->offset);
 
-/* Solaris has only the 8 bit version. */
-#ifndef s6_addr16
        for (i = 0; i < 8; i++) {
-               guint16 s = mono_array_get (data, guint16, i);
+               const guint16 s = GUINT16_TO_BE (mono_array_get (data, guint16, i));
+
+/* Solaris/MacOS have only the 8 bit version. */
+#ifndef s6_addr16
                in6addr.s6_addr[2 * i + 1] = (s >> 8) & 0xff;
                in6addr.s6_addr[2 * i] = s & 0xff;
-       }
 #else
-       for (i = 0; i < 8; i++)
-               in6addr.s6_addr16[i] = mono_array_get (data, guint16, i);
+               in6addr.s6_addr16[i] = s;
 #endif
+       }
        return in6addr;
 }
 #endif
@@ -2272,6 +2297,7 @@ ves_icall_System_Net_Sockets_Socket_SetSocketOption_internal (SOCKET sock, gint3
                                 *      Get group address
                                 */
                                field = mono_class_get_field_from_name (obj_val->vtable->klass, "m_Group");
+                               g_assert (field);
                                address = *(MonoObject **)(((char *)obj_val) + field->offset);
                                
                                if (address)
@@ -2420,12 +2446,12 @@ ves_icall_System_Net_Sockets_Socket_Shutdown_internal (SOCKET sock, gint32 how,
                return;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        /* Currently, the values for how (recv=0, send=1, both=2) match the BSD API */
        ret = _wapi_shutdown (sock, how);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -2467,11 +2493,11 @@ ves_icall_System_Net_Sockets_Socket_IOControl_internal (SOCKET sock, gint32 code
                o_len = mono_array_length (output);
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = WSAIoctl (sock, code, i_buffer, i_len, o_buffer, o_len, &output_bytes, NULL, NULL);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret == SOCKET_ERROR) {
                *werror = WSAGetLastError ();
@@ -2621,13 +2647,16 @@ get_addrinfo_family_hint (MonoError *error)
 MonoBoolean
 ves_icall_System_Net_Dns_GetHostByName_internal (MonoString *host, MonoString **h_name, MonoArray **h_aliases, MonoArray **h_addr_list)
 {
+       MonoError error;
        gboolean add_local_ips = FALSE, add_info_ok = TRUE;
        gchar this_hostname [256];
        MonoAddressInfo *info = NULL;
-       char *hostname = mono_string_to_utf8 (host);
-       MonoError error;
        int hint;
 
+       char *hostname = mono_string_to_utf8_checked (host, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
+
        hint = get_addrinfo_family_hint (&error);
        if (!mono_error_ok (&error)) {
                mono_error_set_pending_exception (&error);
@@ -2671,7 +2700,9 @@ ves_icall_System_Net_Dns_GetHostByAddr_internal (MonoString *addr, MonoString **
        gchar hostname [NI_MAXHOST] = { 0 };
        gboolean ret;
 
-       address = mono_string_to_utf8 (addr);
+       address = mono_string_to_utf8_checked (addr, &error);
+       if (mono_error_set_pending_exception (&error))
+               return FALSE;
 
        if (inet_pton (AF_INET, address, &saddr.sin_addr ) == 1) {
                family = AF_INET;
@@ -2686,7 +2717,7 @@ ves_icall_System_Net_Dns_GetHostByAddr_internal (MonoString *addr, MonoString **
 
        g_free (address);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        switch (family) {
        case AF_INET: {
@@ -2707,7 +2738,7 @@ ves_icall_System_Net_Dns_GetHostByAddr_internal (MonoString *addr, MonoString **
                g_assert_not_reached ();
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (!ret)
                return FALSE;
@@ -2778,11 +2809,11 @@ ves_icall_System_Net_Sockets_Socket_SendFile_internal (SOCKET sock, MonoString *
                return FALSE;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        ret = TransmitFile (sock, file, 0, 0, NULL, &buffers, flags);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_info_uninstall_interrupt (&interrupted);
        if (interrupted) {
@@ -2791,22 +2822,27 @@ ves_icall_System_Net_Sockets_Socket_SendFile_internal (SOCKET sock, MonoString *
                return FALSE;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        CloseHandle (file);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return ret;
 }
 
 gboolean
-ves_icall_System_Net_Sockets_Socket_SupportPortReuse (void)
+ves_icall_System_Net_Sockets_Socket_SupportPortReuse (MonoProtocolType proto)
 {
 #if defined (SO_REUSEPORT) || defined (HOST_WIN32)
-    return TRUE;
+       return TRUE;
 #else
-    return FALSE;
+#ifdef __linux__
+       /* Linux always supports double binding for UDP, even on older kernels. */
+       if (proto == ProtocolType_Udp)
+               return TRUE;
+#endif
+       return FALSE;
 #endif
 }
 
index 138cc674d5b0f46410add6da353ae36c79a57deb..e228f0a2e63df038682a3d004622f541cf928284 100644 (file)
@@ -189,7 +189,7 @@ extern MonoBoolean ves_icall_System_Net_Sockets_Socket_Poll_internal (SOCKET soc
 extern void ves_icall_System_Net_Sockets_Socket_Disconnect_internal(SOCKET sock, MonoBoolean reuse, gint32 *error);
 extern gboolean ves_icall_System_Net_Sockets_Socket_SendFile_internal (SOCKET sock, MonoString *filename, MonoArray *pre_buffer, MonoArray *post_buffer, gint flags);
 void icall_cancel_blocking_socket_operation (MonoThread *thread);
-extern gboolean ves_icall_System_Net_Sockets_Socket_SupportPortReuse (void);
+extern gboolean ves_icall_System_Net_Sockets_Socket_SupportPortReuse (MonoProtocolType proto);
 
 extern void mono_network_init(void);
 extern void mono_network_cleanup(void);
index be330aa413a76fb8e08c626c6851795937d005ce..abbccd6a19a633dbb8d8f2b6a4cf4a7d3fd2fa3c 100644 (file)
@@ -39,7 +39,7 @@ ves_icall_System_String_InternalAllocateStr (gint32 length)
 {
        MonoError error;
        MonoString *str = mono_string_new_size_checked (mono_domain_get (), length, &error);
-       mono_error_raise_exception (&error);
+       mono_error_set_pending_exception (&error);
 
        return str;
 }
index 7aa39b2b4a5b2a435dd301663859c08e2111b3dc..b78ca83b28551282d59395dba3d132807871f8c8 100644 (file)
@@ -273,7 +273,7 @@ wait_callback (gint fd, gint events, gpointer user_data)
                        MonoIOSelectorJob *job = get_job_for_event (&list, EVENT_IN);
                        if (job) {
                                mono_threadpool_ms_enqueue_work_item (((MonoObject*) job)->vtable->domain, (MonoObject*) job, &error);
-                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               mono_error_assert_ok (&error);
                        }
 
                }
@@ -281,7 +281,7 @@ wait_callback (gint fd, gint events, gpointer user_data)
                        MonoIOSelectorJob *job = get_job_for_event (&list, EVENT_OUT);
                        if (job) {
                                mono_threadpool_ms_enqueue_work_item (((MonoObject*) job)->vtable->domain, (MonoObject*) job, &error);
-                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               mono_error_assert_ok (&error);
                        }
                }
 
@@ -347,7 +347,8 @@ selector_thread (gpointer data)
                                g_assert (job);
 
                                exists = mono_g_hash_table_lookup_extended (states, GINT_TO_POINTER (fd), &k, (gpointer*) &list);
-                               list = mono_mlist_append (list, (MonoObject*) job);
+                               list = mono_mlist_append_checked (list, (MonoObject*) job, &error);
+                               mono_error_assert_ok (&error);
                                mono_g_hash_table_replace (states, GINT_TO_POINTER (fd), list);
 
                                operations = get_operations_for_jobs (list);
@@ -378,7 +379,7 @@ selector_thread (gpointer data)
 
                                        for (; list; list = mono_mlist_remove_item (list, list)) {
                                                mono_threadpool_ms_enqueue_work_item (mono_object_domain (mono_mlist_get_data (list)), mono_mlist_get_data (list), &error);
-                                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                                               mono_error_assert_ok (&error);
                                        }
 
                                        mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_THREADPOOL, "io threadpool: del fd %3d", fd);
index 6151395688005d2ba455d7684bfec5f3bdb67d8c..1f4a6cc605237a36e6f13c3a28acc3c229086dff 100644 (file)
@@ -140,10 +140,10 @@ typedef struct {
        MonoCoopMutex worker_creation_lock;
 
        gint32 heuristic_completions;
-       guint32 heuristic_sample_start;
-       guint32 heuristic_last_dequeue; // ms
-       guint32 heuristic_last_adjustment; // ms
-       guint32 heuristic_adjustment_interval; // ms
+       gint64 heuristic_sample_start;
+       gint64 heuristic_last_dequeue; // ms
+       gint64 heuristic_last_adjustment; // ms
+       gint64 heuristic_adjustment_interval; // ms
        ThreadPoolHillClimbing heuristic_hill_climbing;
        MonoCoopMutex heuristic_lock;
 
@@ -708,13 +708,15 @@ worker_try_create (void)
 {
        ThreadPoolCounter counter;
        MonoInternalThread *thread;
+       gint64 current_ticks;
        gint32 now;
 
        mono_coop_mutex_lock (&threadpool->worker_creation_lock);
 
        mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_THREADPOOL, "[%p] try create worker", mono_native_thread_id_get ());
-
-       if ((now = mono_100ns_ticks () / 10 / 1000 / 1000) == 0) {
+       current_ticks = mono_100ns_ticks ();
+       now = current_ticks / (10 * 1000 * 1000);
+       if (0 == current_ticks) {
                g_warning ("failed to get 100ns ticks");
        } else {
                if (threadpool->worker_creation_current_second != now) {
@@ -855,7 +857,7 @@ monitor_should_keep_running (void)
 static gboolean
 monitor_sufficient_delay_since_last_dequeue (void)
 {
-       guint32 threshold;
+       gint64 threshold;
 
        g_assert (threadpool);
 
@@ -893,7 +895,7 @@ monitor_thread (void)
                mono_gc_set_skip_thread (TRUE);
 
                do {
-                       guint32 ts;
+                       gint64 ts;
                        gboolean alerted = FALSE;
 
                        if (mono_runtime_is_shutting_down ())
@@ -1052,7 +1054,7 @@ hill_climbing_get_wave_component (gdouble *samples, guint sample_count, gdouble
 }
 
 static gint16
-hill_climbing_update (gint16 current_thread_count, guint32 sample_duration, gint32 completions, guint32 *adjustment_interval)
+hill_climbing_update (gint16 current_thread_count, guint32 sample_duration, gint32 completions, gint64 *adjustment_interval)
 {
        ThreadPoolHillClimbing *hc;
        ThreadPoolHeuristicStateTransition transition;
@@ -1292,8 +1294,8 @@ heuristic_adjust (void)
 
        if (mono_coop_mutex_trylock (&threadpool->heuristic_lock) == 0) {
                gint32 completions = InterlockedExchange (&threadpool->heuristic_completions, 0);
-               guint32 sample_end = mono_msec_ticks ();
-               guint32 sample_duration = sample_end - threadpool->heuristic_sample_start;
+               gint64 sample_end = mono_msec_ticks ();
+               gint64 sample_duration = sample_end - threadpool->heuristic_sample_start;
 
                if (sample_duration >= threadpool->heuristic_adjustment_interval / 2) {
                        ThreadPoolCounter counter;
@@ -1341,7 +1343,8 @@ mono_threadpool_ms_begin_invoke (MonoDomain *domain, MonoObject *target, MonoMet
 
        mono_error_init (error);
 
-       message = mono_method_call_message_new (method, params, mono_get_delegate_invoke (method->klass), (params != NULL) ? (&async_callback) : NULL, (params != NULL) ? (&state) : NULL);
+       message = mono_method_call_message_new (method, params, mono_get_delegate_invoke (method->klass), (params != NULL) ? (&async_callback) : NULL, (params != NULL) ? (&state) : NULL, error);
+       return_val_if_nok (error, NULL);
 
        async_call = (MonoAsyncCall*) mono_object_new_checked (domain, async_call_klass, error);
        return_val_if_nok (error, NULL);
@@ -1354,7 +1357,8 @@ mono_threadpool_ms_begin_invoke (MonoDomain *domain, MonoObject *target, MonoMet
                MONO_OBJECT_SETREF (async_call, cb_target, async_callback);
        }
 
-       async_result = mono_async_result_new (domain, NULL, async_call->state, NULL, (MonoObject*) async_call);
+       async_result = mono_async_result_new (domain, NULL, async_call->state, NULL, (MonoObject*) async_call, error);
+       return_val_if_nok (error, NULL);
        MONO_OBJECT_SETREF (async_result, async_delegate, target);
 
        mono_threadpool_ms_enqueue_work_item (domain, (MonoObject*) async_result, error);
@@ -1364,11 +1368,11 @@ mono_threadpool_ms_begin_invoke (MonoDomain *domain, MonoObject *target, MonoMet
 }
 
 MonoObject *
-mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, MonoObject **exc)
+mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, MonoObject **exc, MonoError *error)
 {
-       MonoError error;
        MonoAsyncCall *ac;
 
+       mono_error_init (error);
        g_assert (exc);
        g_assert (out_args);
 
@@ -1379,7 +1383,7 @@ mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, Mono
        mono_monitor_enter ((MonoObject*) ares);
 
        if (ares->endinvoke_called) {
-               *exc = (MonoObject*) mono_get_exception_invalid_operation (NULL);
+               mono_error_set_invalid_operation(error, "Delegate EndInvoke method called more than once");
                mono_monitor_exit ((MonoObject*) ares);
                return NULL;
        }
@@ -1396,14 +1400,17 @@ mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, Mono
                } else {
                        wait_event = CreateEvent (NULL, TRUE, FALSE, NULL);
                        g_assert(wait_event);
-                       MonoWaitHandle *wait_handle = mono_wait_handle_new (mono_object_domain (ares), wait_event, &error);
-                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                       MonoWaitHandle *wait_handle = mono_wait_handle_new (mono_object_domain (ares), wait_event, error);
+                       if (!is_ok (error)) {
+                               CloseHandle (wait_event);
+                               return NULL;
+                       }
                        MONO_OBJECT_SETREF (ares, handle, (MonoObject*) wait_handle);
                }
                mono_monitor_exit ((MonoObject*) ares);
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
                WaitForSingleObjectEx (wait_event, INFINITE, TRUE);
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
        }
 
        ac = (MonoAsyncCall*) ares->object_data;
@@ -1418,7 +1425,7 @@ gboolean
 mono_threadpool_ms_remove_domain_jobs (MonoDomain *domain, int timeout)
 {
        gboolean res = TRUE;
-       guint32 start;
+       gint64 end;
        gpointer sem;
 
        g_assert (domain);
@@ -1427,13 +1434,12 @@ mono_threadpool_ms_remove_domain_jobs (MonoDomain *domain, int timeout)
        g_assert (mono_domain_is_unloading (domain));
 
        if (timeout != -1)
-               start = mono_msec_ticks ();
+               end = mono_msec_ticks () + timeout;
 
 #ifndef DISABLE_SOCKETS
        mono_threadpool_ms_io_remove_domain_jobs (domain);
        if (timeout != -1) {
-               timeout -= mono_msec_ticks () - start;
-               if (timeout < 0)
+               if (mono_msec_ticks () > end)
                        return FALSE;
        }
 #endif
@@ -1452,16 +1458,19 @@ mono_threadpool_ms_remove_domain_jobs (MonoDomain *domain, int timeout)
        mono_memory_write_barrier ();
 
        while (domain->threadpool_jobs) {
-               MONO_PREPARE_BLOCKING;
-               WaitForSingleObject (sem, timeout);
-               MONO_FINISH_BLOCKING;
+               gint64 now;
+
                if (timeout != -1) {
-                       timeout -= mono_msec_ticks () - start;
-                       if (timeout <= 0) {
+                       now = mono_msec_ticks ();
+                       if (now > end) {
                                res = FALSE;
                                break;
                        }
                }
+
+               MONO_ENTER_GC_SAFE;
+               WaitForSingleObject (sem, timeout != -1 ? end - now : timeout);
+               MONO_EXIT_GC_SAFE;
        }
 
        domain->cleanup_semaphore = NULL;
index 9812ee57ba2a989617ac1b96f54997a3cc3c0b58..1603e3a15d998d18b152aa88eb104ec6e4ee1e03 100644 (file)
@@ -17,7 +17,7 @@ mono_threadpool_ms_cleanup (void);
 MonoAsyncResult *
 mono_threadpool_ms_begin_invoke (MonoDomain *domain, MonoObject *target, MonoMethod *method, gpointer *params, MonoError *error);
 MonoObject *
-mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, MonoObject **exc);
+mono_threadpool_ms_end_invoke (MonoAsyncResult *ares, MonoArray **out_args, MonoObject **exc, MonoError *error);
 
 gboolean
 mono_threadpool_ms_remove_domain_jobs (MonoDomain *domain, int timeout);
index add9a4a3b04aecadf4cbe2f498abb4e5b4ba350f..8ecabdb0e0becc4aa7c2748ce5ea3ab85240d6d2 100644 (file)
@@ -87,8 +87,8 @@ void ves_icall_System_Threading_Thread_SetCachedCurrentUICulture (MonoThread *th
 HANDLE ves_icall_System_Threading_Mutex_CreateMutex_internal(MonoBoolean owned, MonoString *name, MonoBoolean *created);
 MonoBoolean ves_icall_System_Threading_Mutex_ReleaseMutex_internal (HANDLE handle );
 HANDLE ves_icall_System_Threading_Mutex_OpenMutex_internal (MonoString *name, gint32 rights, gint32 *error);
-HANDLE ves_icall_System_Threading_Semaphore_CreateSemaphore_internal (gint32 initialCount, gint32 maximumCount, MonoString *name, MonoBoolean *created);
-gint32 ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal (HANDLE handle, gint32 releaseCount, MonoBoolean *fail);
+HANDLE ves_icall_System_Threading_Semaphore_CreateSemaphore_internal (gint32 initialCount, gint32 maximumCount, MonoString *name, gint32 *error);
+MonoBoolean ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal (HANDLE handle, gint32 releaseCount, gint32 *prevcount);
 HANDLE ves_icall_System_Threading_Semaphore_OpenSemaphore_internal (MonoString *name, gint32 rights, gint32 *error);
 HANDLE ves_icall_System_Threading_Events_CreateEvent_internal (MonoBoolean manual, MonoBoolean initial, MonoString *name, MonoBoolean *created);
 gboolean ves_icall_System_Threading_Events_SetEvent_internal (HANDLE handle);
@@ -193,6 +193,7 @@ MonoInternalThread *mono_thread_internal_current (void);
 void mono_thread_internal_check_for_interruption_critical (MonoInternalThread *thread);
 
 void mono_thread_internal_stop (MonoInternalThread *thread);
+void mono_thread_internal_abort (MonoInternalThread *thread);
 
 gboolean mono_thread_internal_has_appdomain_ref (MonoInternalThread *thread, MonoDomain *domain);
 
@@ -201,7 +202,7 @@ void mono_thread_internal_reset_abort (MonoInternalThread *thread);
 void mono_thread_internal_unhandled_exception (MonoObject* exc);
 
 void mono_alloc_special_static_data_free (GHashTable *special_static_fields);
-void mono_thread_current_check_pending_interrupt (void);
+gboolean mono_thread_current_check_pending_interrupt (void);
 
 void mono_thread_set_state (MonoInternalThread *thread, MonoThreadState state);
 void mono_thread_clr_state (MonoInternalThread *thread, MonoThreadState state);
@@ -216,7 +217,7 @@ gunichar2* mono_thread_get_name (MonoInternalThread *this_obj, guint32 *name_len
 
 MONO_API MonoException* mono_thread_get_undeniable_exception (void);
 
-void mono_thread_set_name_internal (MonoInternalThread *this_obj, MonoString *name, gboolean managed, MonoError *error);
+void mono_thread_set_name_internal (MonoInternalThread *this_obj, MonoString *name, gboolean permanent, MonoError *error);
 
 void mono_runtime_set_has_tls_get (gboolean val);
 gboolean mono_runtime_has_tls_get (void);
@@ -247,7 +248,7 @@ gboolean
 mono_thread_create_checked (MonoDomain *domain, gpointer func, gpointer arg, MonoError *error);
 
 MonoThread *
-mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *error);
+mono_thread_attach_full (MonoDomain *domain, gboolean force_attach);
 
 void mono_thread_init_tls (void);
 
@@ -260,4 +261,10 @@ void mono_thread_detach_internal (MonoInternalThread *thread);
 
 void ves_icall_System_Threading_Thread_GetStackTraces (MonoArray **out_threads, MonoArray **out_stack_traces);
 
+MONO_API gpointer
+mono_threads_attach_coop (MonoDomain *domain, gpointer *dummy);
+
+MONO_API void
+mono_threads_detach_coop (gpointer cookie, gpointer *dummy);
+
 #endif /* _MONO_METADATA_THREADS_TYPES_H_ */
index 2f7fcabf081a4d25662147a77241d59472c17981..b4f3f09159770eda404b8011b8fb8c3f1d7ebdb4 100644 (file)
 #include <mono/utils/mono-membar.h>
 #include <mono/utils/mono-time.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/hazard-pointer.h>
 #include <mono/utils/mono-tls.h>
 #include <mono/utils/atomic.h>
 #include <mono/utils/mono-memory-model.h>
+#include <mono/utils/mono-threads-coop.h>
+#include <mono/utils/mono-error-internals.h>
 
 #include <mono/metadata/gc-internals.h>
 #include <mono/metadata/reflection-internals.h>
@@ -79,15 +82,6 @@ extern int tkill (pid_t tid, int signal);
 #define LOCK_THREAD(thread) lock_thread((thread))
 #define UNLOCK_THREAD(thread) unlock_thread((thread))
 
-/* Provide this for systems with glib < 2.6 */
-#ifndef G_GSIZE_FORMAT
-#   if GLIB_SIZEOF_LONG == 8
-#       define G_GSIZE_FORMAT "lu"
-#   else
-#       define G_GSIZE_FORMAT "u"
-#   endif
-#endif
-
 typedef struct
 {
        guint32 (*func)(void *);
@@ -204,7 +198,7 @@ static void mono_init_static_data_info (StaticDataInfo *static_data);
 static guint32 mono_alloc_static_data_slot (StaticDataInfo *static_data, guint32 size, guint32 align);
 static gboolean mono_thread_resume (MonoInternalThread* thread);
 static void async_abort_internal (MonoInternalThread *thread, gboolean install_async_abort);
-static void self_abort_internal (void);
+static void self_abort_internal (MonoError *error);
 static void async_suspend_internal (MonoInternalThread *thread, gboolean interrupt);
 static void self_suspend_internal (void);
 
@@ -257,8 +251,14 @@ mono_thread_get_tls_key (void)
 gint32
 mono_thread_get_tls_offset (void)
 {
-       int offset;
+       int offset = -1;
+
+#ifdef HOST_WIN32
+       if (current_object_key)
+               offset = current_object_key;
+#else
        MONO_THREAD_VAR_OFFSET (tls_current_object,offset);
+#endif
        return offset;
 }
 
@@ -458,6 +458,8 @@ static void thread_cleanup (MonoInternalThread *thread)
        if (!mono_thread_info_lookup (MONO_UINT_TO_NATIVE_THREAD_ID (thread->tid))->tools_thread)
                mono_profiler_thread_end (thread->tid);
 
+       mono_hazard_pointer_clear (mono_hazard_pointer_get (), 1);
+
        if (thread == mono_thread_internal_current ()) {
                /*
                 * This will signal async signal handlers that the thread has exited.
@@ -573,21 +575,23 @@ set_current_thread_for_domain (MonoDomain *domain, MonoInternalThread *thread, M
 }
 
 static MonoThread*
-create_thread_object (MonoDomain *domain, MonoError *error)
+create_thread_object (MonoDomain *domain)
 {
+       MonoError error;
        MonoVTable *vt = mono_class_vtable (domain, mono_defaults.thread_class);
-       MonoThread *t = (MonoThread*)mono_object_new_mature (vt, error);
+       MonoThread *t = (MonoThread*)mono_object_new_mature (vt, &error);
+       /* only possible failure mode is OOM, from which we don't expect to recover. */
+       mono_error_assert_ok (&error);
        return t;
 }
 
 static MonoThread*
-new_thread_with_internal (MonoDomain *domain, MonoInternalThread *internal, MonoError *error)
+new_thread_with_internal (MonoDomain *domain, MonoInternalThread *internal)
 {
        MonoThread *thread;
 
-       thread = create_thread_object (domain, error);
-       if (!mono_error_ok (error))
-               return NULL;
+       thread = create_thread_object (domain);
+       thread->priority = THREAD_PRIORITY_NORMAL;
 
        MONO_OBJECT_SETREF (thread, internal_thread, internal);
 
@@ -595,15 +599,16 @@ new_thread_with_internal (MonoDomain *domain, MonoInternalThread *internal, Mono
 }
 
 static MonoInternalThread*
-create_internal_thread (MonoError *error)
+create_internal_thread (void)
 {
+       MonoError error;
        MonoInternalThread *thread;
        MonoVTable *vt;
 
        vt = mono_class_vtable (mono_get_root_domain (), mono_defaults.internal_thread_class);
-       thread = (MonoInternalThread*) mono_object_new_mature (vt, error);
-       if (!mono_error_ok (error))
-               return NULL;
+       thread = (MonoInternalThread*) mono_object_new_mature (vt, &error);
+       /* only possible failure mode is OOM, from which we don't exect to recover */
+       mono_error_assert_ok (&error);
 
        thread->synch_cs = g_new0 (MonoCoopMutex, 1);
        mono_coop_mutex_init_recursive (thread->synch_cs);
@@ -619,14 +624,12 @@ create_internal_thread (MonoError *error)
 }
 
 static gboolean
-init_root_domain_thread (MonoInternalThread *thread, MonoThread *candidate, MonoError *error)
+init_root_domain_thread (MonoInternalThread *thread, MonoThread *candidate)
 {
        MonoDomain *domain = mono_get_root_domain ();
 
-       mono_error_init (error);
        if (!candidate || candidate->obj.vtable->domain != domain) {
-               candidate = new_thread_with_internal (domain, thread, error);
-               return_val_if_nok (error, FALSE);
+               candidate = new_thread_with_internal (domain, thread);
        }
        set_current_thread_for_domain (domain, thread, candidate);
        g_assert (!thread->root_domain_thread);
@@ -685,8 +688,7 @@ static guint32 WINAPI start_wrapper_internal(void *data)
        /* We have to do this here because mono_thread_new_init()
           requires that root_domain_thread is set up. */
        thread_adjust_static_data (internal);
-       init_root_domain_thread (internal, start_info->obj, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       init_root_domain_thread (internal, start_info->obj);
 
        /* This MUST be called before any managed code can be
         * executed, as it calls the callback function that (for the
@@ -727,12 +729,13 @@ static guint32 WINAPI start_wrapper_internal(void *data)
        mono_profiler_thread_start (tid);
 
        /* if the name was set before starting, we didn't invoke the profiler callback */
-       if (internal->name && (internal->flags & MONO_THREAD_FLAG_NAME_SET)) {
+       if (internal->name) {
                char *tname = g_utf16_to_utf8 (internal->name, internal->name_len, NULL, NULL, NULL);
                mono_profiler_thread_name (internal->tid, tname);
-               mono_thread_info_set_name (MONO_UINT_TO_NATIVE_THREAD_ID (internal->tid), tname);
+               mono_native_thread_set_name (MONO_UINT_TO_NATIVE_THREAD_ID (internal->tid), tname);
                g_free (tname);
        }
+
        /* start_func is set only for unmanaged start functions */
        if (start_func) {
                start_func (start_arg);
@@ -741,7 +744,8 @@ static guint32 WINAPI start_wrapper_internal(void *data)
                g_assert (start_delegate != NULL);
                args [0] = start_arg;
                /* we may want to handle the exception here. See comment below on unhandled exceptions */
-               mono_runtime_delegate_invoke (start_delegate, args, NULL);
+               mono_runtime_delegate_invoke_checked (start_delegate, args, &error);
+               mono_error_raise_exception (&error); /* OK, triggers unhandled exn handler */
        }
 
        /* If the thread calls ExitThread at all, this remaining code
@@ -797,7 +801,7 @@ create_thread (MonoThread *thread, MonoInternalThread *internal, StartInfo *star
 {
        HANDLE thread_handle;
        MonoNativeThreadId tid;
-       guint32 create_flags;
+       MonoThreadParm tp;
 
        /*
         * Join joinable threads to prevent running out of threads since the finalizer
@@ -836,10 +840,11 @@ create_thread (MonoThread *thread, MonoInternalThread *internal, StartInfo *star
        /* Create suspended, so we can do some housekeeping before the thread
         * starts
         */
-       create_flags = CREATE_SUSPENDED;
+       tp.priority = thread->priority;
+       tp.stack_size = stack_size;
+       tp.creation_flags = CREATE_SUSPENDED;
 
-       thread_handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)start_wrapper, start_info,
-                                                                                               stack_size, create_flags, &tid);
+       thread_handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)start_wrapper, start_info, &tp, &tid);
 
        if (thread_handle == NULL) {
                /* The thread couldn't be created, so set an exception */
@@ -879,9 +884,9 @@ create_thread (MonoThread *thread, MonoInternalThread *internal, StartInfo *star
                 */
                THREAD_DEBUG (g_message ("%s: (%"G_GSIZE_FORMAT") waiting for thread %p (%"G_GSIZE_FORMAT") to start", __func__, mono_native_thread_id_get (), internal, (gsize)internal->tid));
 
-               MONO_PREPARE_BLOCKING;
+               MONO_ENTER_GC_SAFE;
                WaitForSingleObjectEx (internal->start_notify, INFINITE, FALSE);
-               MONO_FINISH_BLOCKING;
+               MONO_EXIT_GC_SAFE;
 
                CloseHandle (internal->start_notify);
                internal->start_notify = NULL;
@@ -924,11 +929,9 @@ mono_thread_create_internal (MonoDomain *domain, gpointer func, gpointer arg, gb
 
        mono_error_init (error);
 
-       thread = create_thread_object (domain, error);
-       return_val_if_nok (error, NULL);
+       thread = create_thread_object (domain);
 
-       internal = create_internal_thread (error);
-       return_val_if_nok (error, NULL);
+       internal = create_internal_thread ();
 
        MONO_OBJECT_SETREF (thread, internal_thread, internal);
 
@@ -966,15 +969,13 @@ mono_thread_create_checked (MonoDomain *domain, gpointer func, gpointer arg, Mon
 MonoThread *
 mono_thread_attach (MonoDomain *domain)
 {
-       MonoError error;
-       MonoThread *thread = mono_thread_attach_full (domain, FALSE, &error);
-       mono_error_raise_exception (&error);
+       MonoThread *thread = mono_thread_attach_full (domain, FALSE);
 
        return thread;
 }
 
 MonoThread *
-mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *error)
+mono_thread_attach_full (MonoDomain *domain, gboolean force_attach)
 {
        MonoThreadInfo *info;
        MonoInternalThread *thread;
@@ -982,8 +983,6 @@ mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *e
        HANDLE thread_handle;
        MonoNativeThreadId tid;
 
-       mono_error_init (error);
-
        if ((thread = mono_thread_internal_current ())) {
                if (domain != mono_domain_get ())
                        mono_domain_set (domain, TRUE);
@@ -995,9 +994,7 @@ mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *e
                g_error ("Thread %"G_GSIZE_FORMAT" calling into managed code is not registered with the GC. On UNIX, this can be fixed by #include-ing <gc.h> before <pthread.h> in the file containing the thread creation code.", mono_native_thread_id_get ());
        }
 
-       thread = create_internal_thread (error);
-       if (!mono_error_ok (error))
-               return NULL;
+       thread = create_internal_thread ();
 
        thread_handle = mono_thread_info_open_handle ();
        g_assert (thread_handle);
@@ -1015,9 +1012,7 @@ mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *e
        thread->thread_info = info;
        thread->small_id = info->small_id;
 
-       current_thread = new_thread_with_internal (domain, thread, error);
-       if (!mono_error_ok (error))
-               return NULL;
+       current_thread = new_thread_with_internal (domain, thread);
 
        if (!handle_store (current_thread, force_attach)) {
                /* Mono is shutting down, so just wait for the end */
@@ -1032,8 +1027,7 @@ mono_thread_attach_full (MonoDomain *domain, gboolean force_attach, MonoError *e
 
        thread_adjust_static_data (thread);
 
-       init_root_domain_thread (thread, current_thread, error);
-       return_val_if_nok (error, NULL);
+       init_root_domain_thread (thread, current_thread);
 
        if (domain != mono_get_root_domain ())
                set_current_thread_for_domain (domain, thread, current_thread);
@@ -1091,7 +1085,7 @@ mono_thread_detach (MonoThread *thread)
  * This should be used at the end of embedding code which calls into managed code, and which
  * can be called from pthread dtors, like dealloc: implementations in objective-c.
  */
-void
+mono_bool
 mono_thread_detach_if_exiting (void)
 {
        if (mono_thread_info_is_exiting ()) {
@@ -1101,8 +1095,10 @@ mono_thread_detach_if_exiting (void)
                if (thread) {
                        mono_thread_detach_internal (thread);
                        mono_thread_info_detach ();
+                       return TRUE;
                }
        }
+       return FALSE;
 }
 
 void
@@ -1125,11 +1121,9 @@ mono_thread_exit ()
 void
 ves_icall_System_Threading_Thread_ConstructInternalThread (MonoThread *this_obj)
 {
-       MonoError error;
        MonoInternalThread *internal;
 
-       internal = create_internal_thread (&error);
-       mono_error_raise_exception (&error);
+       internal = create_internal_thread ();
 
        internal->state = ThreadState_Unstarted;
 
@@ -1224,7 +1218,8 @@ ves_icall_System_Threading_Thread_Sleep_internal(gint32 ms)
 
        THREAD_DEBUG (g_message ("%s: Sleeping for %d ms", __func__, ms));
 
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return;
 
        while (TRUE) {
                gboolean alerted = FALSE;
@@ -1358,19 +1353,20 @@ ves_icall_System_Threading_Thread_GetName_internal (MonoInternalThread *this_obj
        
        UNLOCK_THREAD (this_obj);
 
-       mono_error_raise_exception (&error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        
        return str;
 }
 
 void 
-mono_thread_set_name_internal (MonoInternalThread *this_obj, MonoString *name, gboolean managed, MonoError *error)
+mono_thread_set_name_internal (MonoInternalThread *this_obj, MonoString *name, gboolean permanent, MonoError *error)
 {
        LOCK_THREAD (this_obj);
 
        mono_error_init (error);
 
-       if ((this_obj->flags & MONO_THREAD_FLAG_NAME_SET) && !this_obj->threadpool_thread) {
+       if ((this_obj->flags & MONO_THREAD_FLAG_NAME_SET)) {
                UNLOCK_THREAD (this_obj);
                
                mono_error_set_invalid_operation (error, "Thread.Name can only be set once.");
@@ -1384,19 +1380,21 @@ mono_thread_set_name_internal (MonoInternalThread *this_obj, MonoString *name, g
                this_obj->name = g_new (gunichar2, mono_string_length (name));
                memcpy (this_obj->name, mono_string_chars (name), mono_string_length (name) * 2);
                this_obj->name_len = mono_string_length (name);
+
+               if (permanent)
+                       this_obj->flags |= MONO_THREAD_FLAG_NAME_SET;
        }
        else
                this_obj->name = NULL;
 
-       if (managed)
-               this_obj->flags |= MONO_THREAD_FLAG_NAME_SET;
        
        UNLOCK_THREAD (this_obj);
 
        if (this_obj->name && this_obj->tid) {
-               char *tname = mono_string_to_utf8 (name);
+               char *tname = mono_string_to_utf8_checked (name, error);
+               return_if_nok (error);
                mono_profiler_thread_name (this_obj->tid, tname);
-               mono_thread_info_set_name (thread_get_tid (this_obj), tname);
+               mono_native_thread_set_name (thread_get_tid (this_obj), tname);
                mono_free (tname);
        }
 }
@@ -1423,7 +1421,10 @@ ves_icall_System_Threading_Thread_GetPriority (MonoThread *this_obj)
        MonoInternalThread *internal = this_obj->internal_thread;
 
        LOCK_THREAD (internal);
-       priority = GetThreadPriority (internal->handle) + 2;
+       if (internal->handle != NULL)
+               priority = GetThreadPriority (internal->handle) + 2;
+       else
+               priority = this_obj->priority + 2;
        UNLOCK_THREAD (internal);
        return priority;
 }
@@ -1441,7 +1442,9 @@ ves_icall_System_Threading_Thread_SetPriority (MonoThread *this_obj, int priorit
        MonoInternalThread *internal = this_obj->internal_thread;
 
        LOCK_THREAD (internal);
-       SetThreadPriority (internal->handle, priority - 2);
+       this_obj->priority = priority - 2;
+       if (internal->handle != NULL)
+               SetThreadPriority (internal->handle, this_obj->priority);
        UNLOCK_THREAD (internal);
 }
 
@@ -1485,7 +1488,6 @@ ves_icall_System_Threading_Thread_ByteArrayToCurrentDomain (MonoArray *arr)
 MonoThread *
 mono_thread_current (void)
 {
-       MonoError error;
        MonoDomain *domain = mono_domain_get ();
        MonoInternalThread *internal = mono_thread_internal_current ();
        MonoThread **current_thread_ptr;
@@ -1495,8 +1497,7 @@ mono_thread_current (void)
 
        if (!*current_thread_ptr) {
                g_assert (domain != mono_get_root_domain ());
-               *current_thread_ptr = new_thread_with_internal (domain, internal, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               *current_thread_ptr = new_thread_with_internal (domain, internal);
        }
        return *current_thread_ptr;
 }
@@ -1505,7 +1506,6 @@ mono_thread_current (void)
 static MonoThread *
 mono_thread_current_for_thread (MonoInternalThread *internal)
 {
-       MonoError error;
        MonoDomain *domain = mono_domain_get ();
        MonoThread **current_thread_ptr;
 
@@ -1514,8 +1514,7 @@ mono_thread_current_for_thread (MonoInternalThread *internal)
 
        if (!*current_thread_ptr) {
                g_assert (domain != mono_get_root_domain ());
-               *current_thread_ptr = new_thread_with_internal (domain, internal, &error);
-               mono_error_raise_exception (&error); /* FIXME don't raise here */
+               *current_thread_ptr = new_thread_with_internal (domain, internal);
        }
        return *current_thread_ptr;
 }
@@ -1536,7 +1535,8 @@ ves_icall_System_Threading_Thread_Join_internal(MonoThread *this_obj, int ms)
        MonoInternalThread *cur_thread = mono_thread_internal_current ();
        gboolean ret;
 
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return FALSE;
 
        LOCK_THREAD (thread);
        
@@ -1556,9 +1556,9 @@ ves_icall_System_Threading_Thread_Join_internal(MonoThread *this_obj, int ms)
        
        mono_thread_set_state (cur_thread, ThreadState_WaitSleepJoin);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret=WaitForSingleObjectEx (handle, ms, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        mono_thread_clr_state (cur_thread, ThreadState_WaitSleepJoin);
        
@@ -1573,8 +1573,17 @@ ves_icall_System_Threading_Thread_Join_internal(MonoThread *this_obj, int ms)
        return(FALSE);
 }
 
+#define MANAGED_WAIT_FAILED 0x7fffffff
+
+static gint32
+map_native_wait_result_to_managed (gint32 val)
+{
+       /* WAIT_FAILED in waithandle.cs is different from WAIT_FAILED in Win32 API */
+       return val == WAIT_FAILED ? MANAGED_WAIT_FAILED : val;
+}
+
 static gint32
-mono_wait_uninterrupted (MonoInternalThread *thread, gboolean multiple, guint32 numhandles, gpointer *handles, gboolean waitall, gint32 ms, gboolean alertable)
+mono_wait_uninterrupted (MonoInternalThread *thread, guint32 numhandles, gpointer *handles, gboolean waitall, gint32 ms, MonoError *error)
 {
        MonoException *exc;
        guint32 ret;
@@ -1582,21 +1591,25 @@ mono_wait_uninterrupted (MonoInternalThread *thread, gboolean multiple, guint32
        gint32 diff_ms;
        gint32 wait = ms;
 
+       mono_error_init (error);
+
        start = (ms == -1) ? 0 : mono_100ns_ticks ();
        do {
-               MONO_PREPARE_BLOCKING;
-                       if (multiple)
-                       ret = WaitForMultipleObjectsEx (numhandles, handles, waitall, wait, alertable);
+               MONO_ENTER_GC_SAFE;
+               if (numhandles != 1)
+                       ret = WaitForMultipleObjectsEx (numhandles, handles, waitall, wait, TRUE);
                else
-                       ret = WaitForSingleObjectEx (handles [0], ms, alertable);
-               MONO_FINISH_BLOCKING;
+                       ret = WaitForSingleObjectEx (handles [0], ms, TRUE);
+               MONO_EXIT_GC_SAFE;
 
                if (ret != WAIT_IO_COMPLETION)
                        break;
 
                exc = mono_thread_execute_interruption ();
-               if (exc)
-                       mono_raise_exception (exc);
+               if (exc) {
+                       mono_error_set_exception_instance (error, exc);
+                       break;
+               }
 
                if (ms == -1)
                        continue;
@@ -1615,6 +1628,7 @@ mono_wait_uninterrupted (MonoInternalThread *thread, gboolean multiple, guint32
 
 gint32 ves_icall_System_Threading_WaitHandle_WaitAll_internal(MonoArray *mono_handles, gint32 ms)
 {
+       MonoError error;
        HANDLE *handles;
        guint32 numhandles;
        guint32 ret;
@@ -1623,7 +1637,8 @@ gint32 ves_icall_System_Threading_WaitHandle_WaitAll_internal(MonoArray *mono_ha
        MonoInternalThread *thread = mono_thread_internal_current ();
 
        /* Do this WaitSleepJoin check before creating objects */
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return map_native_wait_result_to_managed (WAIT_FAILED);
 
        /* We fail in managed if the array has more than 64 elements */
        numhandles = (guint32)mono_array_length(mono_handles);
@@ -1639,19 +1654,22 @@ gint32 ves_icall_System_Threading_WaitHandle_WaitAll_internal(MonoArray *mono_ha
        }
 
        mono_thread_set_state (thread, ThreadState_WaitSleepJoin);
-       
-       ret = mono_wait_uninterrupted (thread, TRUE, numhandles, handles, TRUE, ms, TRUE);
+
+       ret = mono_wait_uninterrupted (thread, numhandles, handles, TRUE, ms, &error);
 
        mono_thread_clr_state (thread, ThreadState_WaitSleepJoin);
 
        g_free(handles);
 
+       mono_error_set_pending_exception (&error);
+
        /* WAIT_FAILED in waithandle.cs is different from WAIT_FAILED in Win32 API */
-       return ret == WAIT_FAILED ? 0x7fffffff : ret;
+       return map_native_wait_result_to_managed (ret);
 }
 
 gint32 ves_icall_System_Threading_WaitHandle_WaitAny_internal(MonoArray *mono_handles, gint32 ms)
 {
+       MonoError error;
        HANDLE handles [MAXIMUM_WAIT_OBJECTS];
        uintptr_t numhandles;
        guint32 ret;
@@ -1660,11 +1678,12 @@ gint32 ves_icall_System_Threading_WaitHandle_WaitAny_internal(MonoArray *mono_ha
        MonoInternalThread *thread = mono_thread_internal_current ();
 
        /* Do this WaitSleepJoin check before creating objects */
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return map_native_wait_result_to_managed (WAIT_FAILED);
 
        numhandles = mono_array_length(mono_handles);
        if (numhandles > MAXIMUM_WAIT_OBJECTS)
-               return WAIT_FAILED;
+               return map_native_wait_result_to_managed (WAIT_FAILED);
 
        for(i = 0; i < numhandles; i++) {       
                waitHandle = mono_array_get(mono_handles, MonoObject*, i);
@@ -1677,29 +1696,31 @@ gint32 ves_icall_System_Threading_WaitHandle_WaitAny_internal(MonoArray *mono_ha
 
        mono_thread_set_state (thread, ThreadState_WaitSleepJoin);
 
-       ret = mono_wait_uninterrupted (thread, TRUE, numhandles, handles, FALSE, ms, TRUE);
+       ret = mono_wait_uninterrupted (thread, numhandles, handles, FALSE, ms, &error);
 
        mono_thread_clr_state (thread, ThreadState_WaitSleepJoin);
 
        THREAD_WAIT_DEBUG (g_message ("%s: (%"G_GSIZE_FORMAT") returning %d", __func__, mono_native_thread_id_get (), ret));
 
+       mono_error_set_pending_exception (&error);
        /*
         * These need to be here.  See MSDN dos on WaitForMultipleObjects.
         */
        if (ret >= WAIT_OBJECT_0 && ret <= WAIT_OBJECT_0 + numhandles - 1) {
-               return ret - WAIT_OBJECT_0;
+               return map_native_wait_result_to_managed (ret - WAIT_OBJECT_0);
        }
        else if (ret >= WAIT_ABANDONED_0 && ret <= WAIT_ABANDONED_0 + numhandles - 1) {
-               return ret - WAIT_ABANDONED_0;
+               return map_native_wait_result_to_managed (ret - WAIT_ABANDONED_0);
        }
        else {
                /* WAIT_FAILED in waithandle.cs is different from WAIT_FAILED in Win32 API */
-               return ret == WAIT_FAILED ? 0x7fffffff : ret;
+               return map_native_wait_result_to_managed (ret);
        }
 }
 
 gint32 ves_icall_System_Threading_WaitHandle_WaitOne_internal(HANDLE handle, gint32 ms)
 {
+       MonoError error;
        guint32 ret;
        MonoInternalThread *thread = mono_thread_internal_current ();
 
@@ -1709,16 +1730,17 @@ gint32 ves_icall_System_Threading_WaitHandle_WaitOne_internal(HANDLE handle, gin
                ms=INFINITE;
        }
        
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return map_native_wait_result_to_managed (WAIT_FAILED);
 
        mono_thread_set_state (thread, ThreadState_WaitSleepJoin);
        
-       ret = mono_wait_uninterrupted (thread, FALSE, 1, &handle, FALSE, ms, TRUE);
+       ret = mono_wait_uninterrupted (thread, 1, &handle, FALSE, ms, &error);
        
        mono_thread_clr_state (thread, ThreadState_WaitSleepJoin);
-       
-       /* WAIT_FAILED in waithandle.cs is different from WAIT_FAILED in Win32 API */
-       return ret == WAIT_FAILED ? 0x7fffffff : ret;
+
+       mono_error_set_pending_exception (&error);
+       return map_native_wait_result_to_managed (ret);
 }
 
 gint32
@@ -1730,18 +1752,18 @@ ves_icall_System_Threading_WaitHandle_SignalAndWait_Internal (HANDLE toSignal, H
        if (ms == -1)
                ms = INFINITE;
 
-       mono_thread_current_check_pending_interrupt ();
+       if (mono_thread_current_check_pending_interrupt ())
+               return map_native_wait_result_to_managed (WAIT_FAILED);
 
        mono_thread_set_state (thread, ThreadState_WaitSleepJoin);
        
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret = SignalObjectAndWait (toSignal, toWait, ms, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        
        mono_thread_clr_state (thread, ThreadState_WaitSleepJoin);
 
-       /* WAIT_FAILED in waithandle.cs is different from WAIT_FAILED in Win32 API */
-       return ret == WAIT_FAILED ? 0x7fffffff : ret;
+       return map_native_wait_result_to_managed (ret);
 }
 
 HANDLE ves_icall_System_Threading_Mutex_CreateMutex_internal (MonoBoolean owned, MonoString *name, MonoBoolean *created)
@@ -1784,47 +1806,34 @@ HANDLE ves_icall_System_Threading_Mutex_OpenMutex_internal (MonoString *name,
 }
 
 
-HANDLE ves_icall_System_Threading_Semaphore_CreateSemaphore_internal (gint32 initialCount, gint32 maximumCount, MonoString *name, MonoBoolean *created)
+HANDLE ves_icall_System_Threading_Semaphore_CreateSemaphore_internal (gint32 initialCount, gint32 maximumCount, MonoString *name, gint32 *error)
 { 
        HANDLE sem;
        
-       *created = TRUE;
-       
        if (name == NULL) {
                sem = CreateSemaphore (NULL, initialCount, maximumCount, NULL);
        } else {
                sem = CreateSemaphore (NULL, initialCount, maximumCount,
                                       mono_string_chars (name));
-               
-               if (GetLastError () == ERROR_ALREADY_EXISTS) {
-                       *created = FALSE;
-               }
        }
 
+       *error = GetLastError ();
        return(sem);
 }                                                                   
 
-gint32 ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal (HANDLE handle, gint32 releaseCount, MonoBoolean *fail)
+MonoBoolean ves_icall_System_Threading_Semaphore_ReleaseSemaphore_internal (HANDLE handle, gint32 releaseCount, gint32 *prevcount)
 { 
-       gint32 prevcount;
-       
-       *fail = !ReleaseSemaphore (handle, releaseCount, &prevcount);
-
-       return (prevcount);
+       return ReleaseSemaphore (handle, releaseCount, prevcount);
 }
 
 HANDLE ves_icall_System_Threading_Semaphore_OpenSemaphore_internal (MonoString *name, gint32 rights, gint32 *error)
 {
-       HANDLE ret;
-       
-       *error = ERROR_SUCCESS;
-       
-       ret = OpenSemaphore (rights, FALSE, mono_string_chars (name));
-       if (ret == NULL) {
-               *error = GetLastError ();
-       }
-       
-       return(ret);
+       HANDLE sem;
+
+       sem = OpenSemaphore (rights, FALSE, mono_string_chars (name));
+       *error = GetLastError ();
+
+       return(sem);
 }
 
 HANDLE ves_icall_System_Threading_Events_CreateEvent_internal (MonoBoolean manual, MonoBoolean initial, MonoString *name, MonoBoolean *created)
@@ -2172,7 +2181,15 @@ void ves_icall_System_Threading_Thread_Interrupt_internal (MonoThread *this_obj)
        }
 }
 
-void mono_thread_current_check_pending_interrupt ()
+/**
+ * mono_thread_current_check_pending_interrupt:
+ *
+ * Checks if there's a interruption request and set the pending exception if so.
+ *
+ * @returns true if a pending exception was set
+ */
+gboolean
+mono_thread_current_check_pending_interrupt (void)
 {
        MonoInternalThread *thread = mono_thread_internal_current ();
        gboolean throw_ = FALSE;
@@ -2186,13 +2203,13 @@ void mono_thread_current_check_pending_interrupt ()
        
        UNLOCK_THREAD (thread);
 
-       if (throw_) {
-               mono_raise_exception (mono_get_exception_thread_interrupted ());
-       }
+       if (throw_)
+               mono_set_pending_exception (mono_get_exception_thread_interrupted ());
+       return throw_;
 }
 
-void
-ves_icall_System_Threading_Thread_Abort (MonoInternalThread *thread, MonoObject *state)
+static gboolean
+request_thread_abort (MonoInternalThread *thread, MonoObject *state)
 {
        LOCK_THREAD (thread);
        
@@ -2201,13 +2218,13 @@ ves_icall_System_Threading_Thread_Abort (MonoInternalThread *thread, MonoObject
                (thread->state & ThreadState_Stopped) != 0)
        {
                UNLOCK_THREAD (thread);
-               return;
+               return FALSE;
        }
 
        if ((thread->state & ThreadState_Unstarted) != 0) {
                thread->state |= ThreadState_Aborted;
                UNLOCK_THREAD (thread);
-               return;
+               return FALSE;
        }
 
        thread->state |= ThreadState_AbortRequested;
@@ -2229,11 +2246,39 @@ ves_icall_System_Threading_Thread_Abort (MonoInternalThread *thread, MonoObject
                mono_thread_resume (thread);
 
        UNLOCK_THREAD (thread);
+       return TRUE;
+}
 
-       if (thread == mono_thread_internal_current ())
-               self_abort_internal ();
-       else
+void
+ves_icall_System_Threading_Thread_Abort (MonoInternalThread *thread, MonoObject *state)
+{
+       if (!request_thread_abort (thread, state))
+               return;
+
+       if (thread == mono_thread_internal_current ()) {
+               MonoError error;
+               self_abort_internal (&error);
+               mono_error_set_pending_exception (&error);
+       } else {
                async_abort_internal (thread, TRUE);
+       }
+}
+
+/**
+ * mono_thread_internal_abort:
+ *
+ * Request thread @thread to be aborted.
+ *
+ * @thread MUST NOT be the current thread.
+ */
+void
+mono_thread_internal_abort (MonoInternalThread *thread)
+{
+       g_assert (thread != mono_thread_internal_current ());
+
+       if (!request_thread_abort (thread, NULL))
+               return;
+       async_abort_internal (thread, TRUE);
 }
 
 void
@@ -2433,7 +2478,8 @@ is_running_protected_wrapper (void)
        return found;
 }
 
-void mono_thread_internal_stop (MonoInternalThread *thread)
+static gboolean
+request_thread_stop (MonoInternalThread *thread)
 {
        LOCK_THREAD (thread);
 
@@ -2441,7 +2487,7 @@ void mono_thread_internal_stop (MonoInternalThread *thread)
                (thread->state & ThreadState_Stopped) != 0)
        {
                UNLOCK_THREAD (thread);
-               return;
+               return FALSE;
        }
        
        /* Make sure the thread is awake */
@@ -2451,16 +2497,45 @@ void mono_thread_internal_stop (MonoInternalThread *thread)
        thread->state &= ~ThreadState_AbortRequested;
        
        UNLOCK_THREAD (thread);
+       return TRUE;
+}
+
+/**
+ * mono_thread_internal_stop:
+ *
+ * Request thread @thread to stop.
+ *
+ * @thread MUST NOT be the current thread.
+ */
+void
+mono_thread_internal_stop (MonoInternalThread *thread)
+{
+       g_assert (thread != mono_thread_internal_current ());
+
+       if (!request_thread_stop (thread))
+               return;
        
-       if (thread == mono_thread_internal_current ())
-               self_abort_internal ();
-       else
-               async_abort_internal (thread, TRUE);
+       async_abort_internal (thread, TRUE);
 }
 
 void mono_thread_stop (MonoThread *thread)
 {
-       mono_thread_internal_stop (thread->internal_thread);
+       MonoInternalThread *internal = thread->internal_thread;
+
+       if (!request_thread_stop (internal))
+               return;
+       
+       if (internal == mono_thread_internal_current ()) {
+               MonoError error;
+               self_abort_internal (&error);
+               /*
+               This function is part of the embeding API and has no way to return the exception
+               to be thrown. So what we do is keep the old behavior and raise the exception.
+               */
+               mono_error_raise_exception (&error); /* OK to throw, see note */
+       } else {
+               async_abort_internal (internal, TRUE);
+       }
 }
 
 gint8
@@ -2905,9 +2980,9 @@ static void wait_for_tids (struct wait_data *wait, guint32 timeout)
        
        THREAD_DEBUG (g_message("%s: %d threads to wait for in this batch", __func__, wait->num));
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret=WaitForMultipleObjectsEx(wait->num, wait->handles, TRUE, timeout, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if(ret==WAIT_FAILED) {
                /* See the comment in build_wait_tids() */
@@ -2968,9 +3043,9 @@ static void wait_for_tids_or_state_change (struct wait_data *wait, guint32 timeo
                count++;
        }
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret=WaitForMultipleObjectsEx (count, wait->handles, FALSE, timeout, TRUE);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if(ret==WAIT_FAILED) {
                /* See the comment in build_wait_tids() */
@@ -3077,9 +3152,8 @@ remove_and_abort_threads (gpointer key, gpointer value, gpointer user)
                if (handle == NULL)
                        return FALSE;
 
-               /* printf ("A: %d\n", wait->num); */
-               wait->handles[wait->num]=thread->handle;
-               wait->threads[wait->num]=thread;
+               wait->handles[wait->num] = handle;
+               wait->threads[wait->num] = thread;
                wait->num++;
 
                THREAD_DEBUG (g_print ("%s: Aborting id: %"G_GSIZE_FORMAT"\n", __func__, (gsize)thread->tid));
@@ -3520,10 +3594,9 @@ mono_threads_perform_thread_dump (void)
 }
 
 /* Obtain the thread dump of all threads */
-static void
-mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_frames)
+static gboolean
+mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_frames, MonoError *error)
 {
-       MonoError error;
 
        ThreadDumpUserData ud;
        MonoInternalThread *thread_array [128];
@@ -3531,7 +3604,7 @@ mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_fra
        MonoDebugSourceLocation *location;
        int tindex, nthreads;
 
-       mono_error_init (&error);
+       mono_error_init (error);
        
        *out_threads = NULL;
        *out_stack_frames = NULL;
@@ -3543,11 +3616,11 @@ mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_fra
        ud.frames = g_new0 (MonoStackFrameInfo, 256);
        ud.max_frames = 256;
 
-       *out_threads = mono_array_new_checked (domain, mono_defaults.thread_class, nthreads, &error);
-       if (!is_ok (&error))
+       *out_threads = mono_array_new_checked (domain, mono_defaults.thread_class, nthreads, error);
+       if (!is_ok (error))
                goto leave;
-       *out_stack_frames = mono_array_new_checked (domain, mono_defaults.array_class, nthreads, &error);
-       if (!is_ok (&error))
+       *out_stack_frames = mono_array_new_checked (domain, mono_defaults.array_class, nthreads, error);
+       if (!is_ok (error))
                goto leave;
 
        for (tindex = 0; tindex < nthreads; ++tindex) {
@@ -3567,16 +3640,16 @@ mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_fra
 
                mono_array_setref_fast (*out_threads, tindex, mono_thread_current_for_thread (thread));
 
-               thread_frames = mono_array_new_checked (domain, mono_defaults.stack_frame_class, ud.nframes, &error);
-               if (!is_ok (&error))
+               thread_frames = mono_array_new_checked (domain, mono_defaults.stack_frame_class, ud.nframes, error);
+               if (!is_ok (error))
                        goto leave;
                mono_array_setref_fast (*out_stack_frames, tindex, thread_frames);
 
                for (i = 0; i < ud.nframes; ++i) {
                        MonoStackFrameInfo *frame = &ud.frames [i];
                        MonoMethod *method = NULL;
-                       MonoStackFrame *sf = (MonoStackFrame *)mono_object_new_checked (domain, mono_defaults.stack_frame_class, &error);
-                       if (!mono_error_ok (&error))
+                       MonoStackFrame *sf = (MonoStackFrame *)mono_object_new_checked (domain, mono_defaults.stack_frame_class, error);
+                       if (!is_ok (error))
                                goto leave;
 
                        sf->native_offset = frame->native_offset;
@@ -3587,8 +3660,9 @@ mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_fra
                        if (method) {
                                sf->method_address = (gsize) frame->ji->code_start;
 
-                               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, method, NULL, &error);
-                               mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               MonoReflectionMethod *rm = mono_method_get_object_checked (domain, method, NULL, error);
+                               if (!is_ok (error))
+                                       goto leave;
                                MONO_OBJECT_SETREF (sf, method, rm);
 
                                location = mono_debug_lookup_source_location (method, frame->native_offset, domain);
@@ -3611,7 +3685,7 @@ mono_threads_get_thread_dump (MonoArray **out_threads, MonoArray **out_stack_fra
 
 leave:
        g_free (ud.frames);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       return is_ok (error);
 }
 
 /**
@@ -3790,7 +3864,7 @@ mono_threads_abort_appdomain_threads (MonoDomain *domain, int timeout)
 #endif
 
        abort_appdomain_data user_data;
-       guint32 start_time;
+       gint64 start_time;
        int orig_timeout = timeout;
        int i;
 
@@ -3809,7 +3883,7 @@ mono_threads_abort_appdomain_threads (MonoDomain *domain, int timeout)
                if (user_data.wait.num > 0) {
                        /* Abort the threads outside the threads lock */
                        for (i = 0; i < user_data.wait.num; ++i)
-                               ves_icall_System_Threading_Thread_Abort (user_data.wait.threads [i], NULL);
+                               mono_thread_internal_abort (user_data.wait.threads [i]);
 
                        /*
                         * We should wait for the threads either to abort, or to leave the
@@ -4327,17 +4401,6 @@ mono_alloc_special_static_data_free (GHashTable *special_static_fields)
        mono_threads_unlock ();
 }
 
-static void
-mono_special_static_data_free_slot (guint32 offset, guint32 size)
-{
-       /* Only ever called for ThreadLocal instances */
-       g_assert (ACCESS_SPECIAL_STATIC_OFFSET (offset, type) == SPECIAL_STATIC_OFFSET_TYPE_THREAD);
-
-       mono_threads_lock ();
-       do_free_special_slot (offset, size);
-       mono_threads_unlock ();
-}
-
 #ifdef HOST_WIN32
 static void CALLBACK dummy_apc (ULONG_PTR param)
 {
@@ -4370,8 +4433,18 @@ mono_thread_execute_interruption (void)
                mono_thread_info_clear_self_interrupt ();
        }
 
-       if ((thread->state & ThreadState_AbortRequested) != 0) {
+       /* If there's a pending exception and an AbortRequested, the pending exception takes precedence */
+       if (sys_thread->pending_exception) {
+               MonoException *exc;
+
+               exc = sys_thread->pending_exception;
+               sys_thread->pending_exception = NULL;
+
                UNLOCK_THREAD (thread);
+               return exc;
+       } else if ((thread->state & ThreadState_AbortRequested) != 0) {
+               UNLOCK_THREAD (thread);
+               g_assert (sys_thread->pending_exception == NULL);
                if (thread->abort_exc == NULL) {
                        /* 
                         * This might be racy, but it has to be called outside the lock
@@ -4393,14 +4466,6 @@ mono_thread_execute_interruption (void)
                
                mono_thread_exit ();
                return NULL;
-       } else if (sys_thread->pending_exception) {
-               MonoException *exc;
-
-               exc = sys_thread->pending_exception;
-               sys_thread->pending_exception = NULL;
-
-        UNLOCK_THREAD (thread);
-        return exc;
        } else if (thread->thread_interrupt_requested) {
 
                thread->thread_interrupt_requested = FALSE;
@@ -4764,18 +4829,20 @@ async_abort_internal (MonoInternalThread *thread, gboolean install_async_abort)
 }
 
 static void
-self_abort_internal (void)
+self_abort_internal (MonoError *error)
 {
        MonoException *exc;
 
+       mono_error_init (error);
+
        /* FIXME this is insanely broken, it doesn't cause interruption to happen synchronously
         * since passing FALSE to mono_thread_request_interruption makes sure it returns NULL */
 
        exc = mono_thread_request_interruption (TRUE);
        if (exc)
-               mono_raise_exception (exc);
-
-       mono_thread_info_self_interrupt ();
+               mono_error_set_exception_instance (error, exc);
+       else
+               mono_thread_info_self_interrupt ();
 }
 
 typedef struct {
@@ -4922,9 +4989,12 @@ mono_threads_join_threads (void)
                }
                joinable_threads_unlock ();
                if (found) {
-                       if (thread != pthread_self ())
+                       if (thread != pthread_self ()) {
+                               MONO_ENTER_GC_SAFE;
                                /* This shouldn't block */
                                pthread_join (thread, NULL);
+                               MONO_EXIT_GC_SAFE;
+                       }
                } else {
                        break;
                }
@@ -4957,7 +5027,9 @@ mono_thread_join (gpointer tid)
        if (!found)
                return;
        thread = (pthread_t)tid;
+       MONO_ENTER_GC_SAFE;
        pthread_join (thread, NULL);
+       MONO_EXIT_GC_SAFE;
 #endif
 }
 
@@ -4998,5 +5070,105 @@ mono_thread_internal_unhandled_exception (MonoObject* exc)
 void
 ves_icall_System_Threading_Thread_GetStackTraces (MonoArray **out_threads, MonoArray **out_stack_traces)
 {
-       mono_threads_get_thread_dump (out_threads, out_stack_traces);
+       MonoError error;
+       mono_threads_get_thread_dump (out_threads, out_stack_traces, &error);
+       mono_error_set_pending_exception (&error);
+}
+
+/*
+ * mono_threads_attach_coop: called by native->managed wrappers
+ *
+ * In non-coop mode:
+ *  - @dummy: is NULL
+ *  - @return: the original domain which needs to be restored, or NULL.
+ *
+ * In coop mode:
+ *  - @dummy: contains the original domain
+ *  - @return: a cookie containing current MonoThreadInfo*.
+ */
+gpointer
+mono_threads_attach_coop (MonoDomain *domain, gpointer *dummy)
+{
+       MonoDomain *orig;
+       gboolean fresh_thread = FALSE;
+
+       if (!domain) {
+               /* Happens when called from AOTed code which is only used in the root domain. */
+               domain = mono_get_root_domain ();
+       }
+
+       g_assert (domain);
+
+       /* On coop, when we detached, we moved the thread from  RUNNING->BLOCKING.
+        * If we try to reattach we do a BLOCKING->RUNNING transition.  If the thread
+        * is fresh, mono_thread_attach() will do a STARTING->RUNNING transition so
+        * we're only responsible for making the cookie. */
+       if (mono_threads_is_coop_enabled ()) {
+               MonoThreadInfo *info = mono_thread_info_current_unchecked ();
+               fresh_thread = !info || !mono_thread_info_is_live (info);
+       }
+
+       if (!mono_thread_internal_current ()) {
+               mono_thread_attach_full (domain, FALSE);
+
+               // #678164
+               mono_thread_set_state (mono_thread_internal_current (), ThreadState_Background);
+       }
+
+       orig = mono_domain_get ();
+       if (orig != domain)
+               mono_domain_set (domain, TRUE);
+
+       if (!mono_threads_is_coop_enabled ())
+               return orig != domain ? orig : NULL;
+
+       if (fresh_thread) {
+               *dummy = NULL;
+               /* mono_thread_attach put the thread in RUNNING mode from STARTING, but we need to
+                * return the right cookie. */
+               return mono_threads_enter_gc_unsafe_region_cookie ();
+       } else {
+               *dummy = orig;
+               /* thread state (BLOCKING|RUNNING) -> RUNNING */
+               return mono_threads_enter_gc_unsafe_region (dummy);
+       }
+}
+
+/*
+ * mono_threads_detach_coop: called by native->managed wrappers
+ *
+ * In non-coop mode:
+ *  - @cookie: the original domain which needs to be restored, or NULL.
+ *  - @dummy: is NULL
+ *
+ * In coop mode:
+ *  - @cookie: contains current MonoThreadInfo* if it was in BLOCKING mode, NULL otherwise
+ *  - @dummy: contains the original domain
+ */
+void
+mono_threads_detach_coop (gpointer cookie, gpointer *dummy)
+{
+       MonoDomain *domain, *orig;
+
+       if (!mono_threads_is_coop_enabled ()) {
+               orig = (MonoDomain*) cookie;
+               if (orig)
+                       mono_domain_set (orig, TRUE);
+       } else {
+               orig = (MonoDomain*) *dummy;
+
+               domain = mono_domain_get ();
+               g_assert (domain);
+
+               /* it won't do anything if cookie is NULL
+                * thread state RUNNING -> (RUNNING|BLOCKING) */
+               mono_threads_exit_gc_unsafe_region (cookie, dummy);
+
+               if (orig != domain) {
+                       if (!orig)
+                               mono_domain_unset ();
+                       else
+                               mono_domain_set (orig, TRUE);
+               }
+       }
 }
index 5a0c79c7cca732b1ffeff80292a6ad943d1114e5..2ab8b09ea066069f17df38e3deb1ab59945ed9dc 100644 (file)
@@ -30,7 +30,7 @@ extern MONO_API MonoThread *mono_thread_current (void);
 extern MONO_API void        mono_thread_set_main (MonoThread *thread);
 extern MONO_API MonoThread *mono_thread_get_main (void);
 
-extern MONO_API void mono_thread_stop (MonoThread *thread);
+extern MONO_RT_EXTERNAL_ONLY MONO_API void mono_thread_stop (MonoThread *thread);
 
 extern MONO_API void mono_thread_new_init (intptr_t tid, void* stack_start,
                                  void* func);
@@ -54,7 +54,7 @@ MONO_API void mono_threads_request_thread_dump (void);
 
 MONO_API mono_bool mono_thread_is_foreign (MonoThread *thread);
 
-extern MONO_API void mono_thread_detach_if_exiting (void);
+extern MONO_API mono_bool mono_thread_detach_if_exiting (void);
 
 MONO_END_DECLS
 
index 72ca453eb88436fc1b4c71764ef571566c8abe66..909113cae8e97077451a2dedf70dea6fbf87b99f 100644 (file)
@@ -17,7 +17,6 @@ WRAPPER(XDOMAIN_INVOKE, "xdomain-invoke")
 WRAPPER(XDOMAIN_DISPATCH, "xdomain-dispatch")
 WRAPPER(LDFLD, "ldfld")
 WRAPPER(STFLD, "stfld")
-WRAPPER(LDFLD_REMOTE, "ldfld-remote")
 WRAPPER(STFLD_REMOTE, "stfld-remote")
 WRAPPER(SYNCHRONIZED, "synchronized")
 WRAPPER(DYNAMIC_METHOD, "dynamic-method")
index ce3c864090f6279345a817fbd51bb370d4d85b29..59422581b173255cb7f8eb001581972d47b9294b 100755 (executable)
@@ -49,7 +49,7 @@ MINI_RUNTIME = MONO_PATH=$(CLASS) $(RUNTIME_EXECUTABLE)
 RUNTIME_AOTCHECK = MONO_PATH="$(CLASS)$(PLATFORM_PATH_SEPARATOR)." $(RUNTIME_EXECUTABLE)
 
 CSC = $(mcs_topdir)/class/lib/build/mcs.exe
-MCS = CSC_SDK_PATH_DISABLED= $(MINI_RUNTIME) $(CSC) -unsafe -nowarn:0162 -nologo -noconfig -r:$(CLASS)/mscorlib.dll -r:$(CLASS)/System.dll
+MCS = CSC_SDK_PATH_DISABLED= $(MINI_RUNTIME) $(CSC) -unsafe -nowarn:0162 -nologo -noconfig -r:$(CLASS)/mscorlib.dll -r:$(CLASS)/System.dll -r:$(CLASS)/System.Core.dll
 ILASM = $(MINI_RUNTIME) $(CLASS)/ilasm.exe
 
 AM_CFLAGS = \
@@ -340,6 +340,7 @@ arm64_sources = \
        exceptions-arm64.c      \
        tramp-arm64.c   \
        mini-arm64-gsharedvt.c  \
+       mini-arm64-gsharedvt.h  \
        tramp-arm64-gsharedvt.c
 
 mips_sources = \
@@ -501,7 +502,7 @@ if AMD64
 arch_sources = $(amd64_sources)
 arch_built=cpu-amd64.h
 arch_define=__x86_64__
-ARCH_FULLAOT_EXCLUDE=--exclude DYNCALL
+ARCH_FULLAOT_EXCLUDE=
 endif
 
 if POWERPC
@@ -825,7 +826,11 @@ version.h: Makefile
        if test -d $(top_srcdir)/.git; then \
                (cd $(top_srcdir); \
                        LANG=C; export LANG; \
-                       branch=`git branch | grep '^\*' | sed 's/(detached from .*/explicit/' | cut -d ' ' -f 2`; \
+                       if test -z "$$ghprbPullId"; then \
+                               branch=`git branch | grep '^\*' | sed 's/(detached from .*/explicit/' | cut -d ' ' -f 2`; \
+                       else \
+                               branch="pull-request-$$ghprbPullId"; \
+                       fi; \
                        version=`git log --no-color --first-parent -n1 --pretty=format:%h`; \
                        echo "#define FULL_VERSION \"$$branch/$$version\""; \
                ); \
index fddbef9d9cb64556dc4f726d1adfb3a5a9260bce..17a8e84d91a9da461fd4b40e08d5040b4d624d1e 100644 (file)
@@ -183,10 +183,9 @@ print_evaluation_context_ranges (MonoRelationsEvaluationRanges *ranges) {
 }
 
 static void
-print_evaluation_context (MonoRelationsEvaluationContext *context) {
-       printf ("Context status: ");
-       print_evaluation_context_status (context->status);
-       if (context->status & (MONO_RELATIONS_EVALUATION_IN_PROGRESS|MONO_RELATIONS_EVALUATION_COMPLETED)) {
+print_evaluation_context (MonoRelationsEvaluationContext *context, MonoRelationsEvaluationStatus status) {
+       print_evaluation_context_status (status);
+       if (status & (MONO_RELATIONS_EVALUATION_IN_PROGRESS|MONO_RELATIONS_EVALUATION_COMPLETED)) {
                print_evaluation_context_ranges (&(context->ranges));
        }
        printf ("\n");
@@ -537,12 +536,9 @@ remove_change_from_evaluation_area (MonoAdditionalVariableRelation *change)
 
 
 static void
-clean_contexts (MonoRelationsEvaluationContext *contexts, int number)
+clean_contexts (MonoVariableRelationsEvaluationArea *area, int number)
 {
-       int i;
-       for (i = 0; i < number; i++) {
-               contexts [i].status = MONO_RELATIONS_EVALUATION_NOT_STARTED;
-       }
+       memset(area->statuses, MONO_RELATIONS_EVALUATION_NOT_STARTED, number * sizeof(MonoRelationsEvaluationStatus));
 }
 
 
@@ -655,13 +651,14 @@ intersect_ranges( MonoRelationsEvaluationRanges *ranges, MonoRelationsEvaluation
  *                 (or NULL for the first invocation)
  */
 static void
-evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *area, int variable, int target_variable, MonoRelationsEvaluationContext *father_context)
+evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *area, const int variable, const int target_variable, MonoRelationsEvaluationContext *father_context)
 {
-       MonoRelationsEvaluationContext *context = &(area->contexts [variable]);
+       MonoRelationsEvaluationContext * const context = &(area->contexts [variable]);
+       MonoRelationsEvaluationStatus * const status = &(area->statuses [variable]);
        
        // First of all, we check the evaluation status
        // (what must be done is *very* different in each case)
-       switch (context->status) {
+       switch (*status) {
        case MONO_RELATIONS_EVALUATION_NOT_STARTED: {
                MonoSummarizedValueRelation *relation = &(area->relations [variable]);
                
@@ -672,7 +669,7 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                }
                
                // We properly inizialize the context
-               context->status = MONO_RELATIONS_EVALUATION_IN_PROGRESS;
+               *status = MONO_RELATIONS_EVALUATION_IN_PROGRESS;
                context->father = father_context;
                MONO_MAKE_RELATIONS_EVALUATION_RANGES_WEAK (context->ranges);
                
@@ -714,24 +711,25 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                                if (relation->relation != MONO_ANY_RELATION) {
                                        int related_variable = relation->related_value.value.variable.variable;
                                        MonoRelationsEvaluationContext *related_context = &(area->contexts [related_variable]);
+                                       MonoRelationsEvaluationStatus related_status = area->statuses [related_variable];
                                        
                                        // The second condition in the "or" avoids messing with "back edges" in the graph traversal
                                        // (they are simply ignored instead of triggering the handling of recursion)
-                                       if ( (related_context->status == MONO_RELATIONS_EVALUATION_NOT_STARTED) || !
+                                       if ( (related_status == MONO_RELATIONS_EVALUATION_NOT_STARTED) || !
                                                        ((related_context->current_relation->related_value.type == MONO_VARIABLE_SUMMARIZED_VALUE) &&
                                                        (related_context->current_relation->related_value.value.variable.variable == variable))) {
                                                // Evaluate the related variable
                                                evaluate_relation_with_target_variable (area, related_variable, target_variable, context);
                                                
                                                // Check if we are part of a recursive loop
-                                               if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
+                                               if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
                                                        if (TRACE_ABC_REMOVAL) {
                                                                printf ("Recursivity detected for variable %d (target variable %d), status ", variable, target_variable);
-                                                               print_evaluation_context_status (context->status);
+                                                               print_evaluation_context_status (*status);
                                                        }
                                                        
                                                        // If we are, check if the evaluation of the related variable is complete
-                                                       if (related_context->status == MONO_RELATIONS_EVALUATION_COMPLETED) {
+                                                       if (related_status == MONO_RELATIONS_EVALUATION_COMPLETED) {
                                                                // If it is complete, we are part of a recursive definition.
                                                                // Since it is a *definition* (and definitions are evaluated *before*
                                                                // conditions because they are first in the list), intersection is not
@@ -739,7 +737,7 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                                                                context->ranges = related_context->ranges;
                                                                /* Delta has already been checked for over/under-flow when evaluating values */
                                                                MONO_ADD_DELTA_SAFELY_TO_RANGES (context->ranges, relation->related_value.value.variable.delta);
-                                                               context->status = MONO_RELATIONS_EVALUATION_COMPLETED;
+                                                               *status = MONO_RELATIONS_EVALUATION_COMPLETED;
                                                                if (TRACE_ABC_REMOVAL) {
                                                                        printf (", ranges already computed, result: \n");
                                                                        print_evaluation_context_ranges (&(context->ranges));
@@ -777,25 +775,25 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                                        evaluate_relation_with_target_variable (area, phi_alternative, target_variable, context);
                                        
                                        // This means we are part of a recursive loop
-                                       if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
+                                       if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
                                                if (TRACE_ABC_REMOVAL) {
                                                        printf ("Recursivity detected for variable %d (target variable %d), status ", variable, target_variable);
-                                                       print_evaluation_context_status (context->status);
+                                                       print_evaluation_context_status (*status);
                                                        printf ("\n");
                                                }
-                                               if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_ASCENDING) {
+                                               if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_ASCENDING) {
                                                        is_ascending = TRUE;
                                                }
-                                               if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_DESCENDING) {
+                                               if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_DESCENDING) {
                                                        is_descending = TRUE;
                                                }
-                                               if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_INDEFINITE) {
+                                               if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVELY_INDEFINITE) {
                                                        is_ascending = TRUE;
                                                        is_descending = TRUE;
                                                }
                                                
                                                // Clear "recursivity" bits in the status (recursion has been handled)
-                                               context->status = MONO_RELATIONS_EVALUATION_IN_PROGRESS;
+                                               *status = MONO_RELATIONS_EVALUATION_IN_PROGRESS;
                                        } else {
                                                MONO_RELATIONS_EVALUATION_RANGES_UNION (phi_ranges, area->contexts [phi_alternative].ranges);
                                        }
@@ -824,16 +822,16 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                }
                
                // Check if any recursivity bits are still in the status, and in any case clear them
-               if (context->status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
+               if (*status & MONO_RELATIONS_EVALUATION_IS_RECURSIVE) {
                        if (TRACE_ABC_REMOVAL) {
                                printf ("Recursivity for variable %d (target variable %d) discards computation, status ", variable, target_variable);
-                               print_evaluation_context_status (context->status);
+                               print_evaluation_context_status (*status);
                                printf ("\n");
                        }
                        // If yes, we did not have enough information (most likely we were evaluated inside a PHI, but we also
                        // depended on the same PHI, which was still in evaluation...), so clear the status to "NOT_STARTED"
                        // (if we will be evaluated again, the PHI will be already done, so our evaluation will succeed)
-                       context->status = MONO_RELATIONS_EVALUATION_NOT_STARTED;
+                       *status = MONO_RELATIONS_EVALUATION_NOT_STARTED;
                } else {
                        if (TRACE_ABC_REMOVAL) {
                                printf ("Ranges for variable %d (target variable %d) computed: ", variable, target_variable);
@@ -841,7 +839,7 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                                printf ("\n");
                        }
                        // If not (the common case) the evaluation is complete, and the result is in the context
-                       context->status = MONO_RELATIONS_EVALUATION_COMPLETED;
+                       *status = MONO_RELATIONS_EVALUATION_COMPLETED;
                }
                break;
        }
@@ -855,7 +853,7 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                
                if (TRACE_ABC_REMOVAL) {
                        printf ("Evaluation of variable %d (target variable %d) already in progress\n", variable, target_variable);
-                       print_evaluation_context (context);
+                       print_evaluation_context (context, *status);
                        print_summarized_value_relation (context->current_relation);
                        printf ("\n");
                }
@@ -905,7 +903,9 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
                        
                        current_context = father_context;
                        while (current_context != last_context) {
-                               current_context->status = (MonoRelationsEvaluationStatus)(current_context->status | recursive_status);
+                               int index = father_context - area->contexts;
+                               MonoRelationsEvaluationStatus *current_status = &(area->statuses [index]);
+                               *current_status = (MonoRelationsEvaluationStatus)(*current_status | recursive_status);
                                current_context = current_context->father;
                        }
                } else {
@@ -921,7 +921,7 @@ evaluate_relation_with_target_variable (MonoVariableRelationsEvaluationArea *are
        default:
                if (TRACE_ABC_REMOVAL) {
                        printf ("Variable %d (target variable %d) already in a recursive ring, skipping\n", variable, target_variable);
-                       print_evaluation_context (context);
+                       print_evaluation_context (context, *status);
                        print_summarized_value_relation (context->current_relation);
                        printf ("\n");
                }
@@ -986,7 +986,7 @@ remove_abc_from_inst (MonoInst *ins, MonoVariableRelationsEvaluationArea *area)
        MonoRelationsEvaluationContext *array_context = &(area->contexts [array_variable]);
        MonoRelationsEvaluationContext *index_context = &(area->contexts [index_variable]);
                                
-       clean_contexts (area->contexts, area->cfg->next_vreg);
+       clean_contexts (area, area->cfg->next_vreg);
                                
        evaluate_relation_with_target_variable (area, index_variable, array_variable, NULL);
        evaluate_relation_with_target_variable (area, array_variable, array_variable, NULL);
@@ -1017,7 +1017,7 @@ eval_non_null (MonoVariableRelationsEvaluationArea *area, int reg)
 {
        MonoRelationsEvaluationContext *context = &(area->contexts [reg]);
 
-       clean_contexts (area->contexts, area->cfg->next_vreg);
+       clean_contexts (area, area->cfg->next_vreg);
        evaluate_relation_with_target_variable (area, reg, reg, NULL);
                                
        return context->ranges.zero.lower > 0;
@@ -1271,8 +1271,13 @@ mono_perform_abc_removal (MonoCompile *cfg)
        area.cfg = cfg;
        area.relations = (MonoSummarizedValueRelation *)
                mono_mempool_alloc (cfg->mempool, sizeof (MonoSummarizedValueRelation) * (cfg->next_vreg) * 2);
+
        area.contexts = (MonoRelationsEvaluationContext *)
-               mono_mempool_alloc (cfg->mempool, sizeof (MonoRelationsEvaluationContext) * (cfg->next_vreg));
+               mono_mempool_alloc0 (cfg->mempool, sizeof (MonoRelationsEvaluationContext) * (cfg->next_vreg));
+
+       area.statuses = (MonoRelationsEvaluationStatus *)
+               mono_mempool_alloc0 (cfg->mempool, sizeof (MonoRelationsEvaluationStatus) * (cfg->next_vreg));
+
        area.variable_value_kind = (MonoIntegerValueKind *)
                mono_mempool_alloc (cfg->mempool, sizeof (MonoIntegerValueKind) * (cfg->next_vreg));
        area.defs = (MonoInst **)mono_mempool_alloc (cfg->mempool, sizeof (MonoInst*) * cfg->next_vreg);
index c9896af4033ae3dd77561f1becc54b1b45fc327c..0d00454a9da7304b4425afd9eea2ff14c40c1cc5 100644 (file)
@@ -179,14 +179,12 @@ typedef struct MonoRelationsEvaluationRanges {
 
 /**
  * The context of a variable evaluation.
- * status: the evaluation status
  * current_relation: the relation that is currently evaluated.
  * ranges: the result of the evaluation.
  * father: the context of the evaluation that invoked this one (used to
  *         perform the backtracking when loops are detected.
  */
 typedef struct MonoRelationsEvaluationContext {
-       MonoRelationsEvaluationStatus status;
        MonoSummarizedValueRelation *current_relation;
        MonoRelationsEvaluationRanges ranges;
        struct MonoRelationsEvaluationContext *father;
@@ -308,7 +306,17 @@ typedef struct MonoRelationsEvaluationContext {
 typedef struct MonoVariableRelationsEvaluationArea {
        MonoCompile *cfg;
        MonoSummarizedValueRelation *relations;
+
+/**
+ * statuses and contexts are parallel arrays. A given index into each refers to
+ * the same context. This is a performance optimization. Clean_context was
+ * coming to dominate the running time of abcremoval. By
+ * storing the statuses together, we can memset the entire
+ * region.
+ */ 
+       MonoRelationsEvaluationStatus *statuses;
        MonoRelationsEvaluationContext *contexts;
+
        MonoIntegerValueKind *variable_value_kind;
        MonoInst **defs;
 } MonoVariableRelationsEvaluationArea;
index 167c06d95469ccdd8b3813425af33ecc9b9ea9c5..b69f7de2c98e733233e5603f3fee62c88e3d41af 100644 (file)
@@ -52,6 +52,7 @@
 #include <mono/utils/mono-time.h>
 #include <mono/utils/mono-mmap.h>
 #include <mono/utils/json.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include "aot-compiler.h"
 #include "seq-points.h"
@@ -245,7 +246,7 @@ typedef struct MonoAotCompile {
        MonoAotFileFlags flags;
        MonoDynamicStream blob;
        gboolean blob_closed;
-       MonoClass **typespec_classes;
+       GHashTable *typespec_classes;
        GString *llc_args;
        GString *as_args;
        char *assembly_name_sym;
@@ -568,14 +569,6 @@ emit_byte (MonoAotCompile *acfg, guint8 val)
        mono_img_writer_emit_byte (acfg->w, val); 
 }
 
-#ifdef __native_client_codegen__
-static inline void
-emit_nacl_call_alignment (MonoAotCompile *acfg)
-{
-       mono_img_writer_emit_nacl_call_alignment (acfg->w);
-}
-#endif
-
 #if defined(TARGET_WIN32) && defined(TARGET_X86)
 
 static G_GNUC_UNUSED void
@@ -821,10 +814,6 @@ emit_code_bytes (MonoAotCompile *acfg, const guint8* buf, int size)
 #else
 #define AOT_FUNC_ALIGNMENT 16
 #endif
-#if (defined(TARGET_X86) || defined(TARGET_AMD64)) && defined(__native_client_codegen__)
-#undef AOT_FUNC_ALIGNMENT
-#define AOT_FUNC_ALIGNMENT 32
-#endif
  
 #if defined(TARGET_POWERPC64) && !defined(__mono_ilp32__)
 #define PPC_LD_OP "ld"
@@ -1491,54 +1480,18 @@ static void
 arch_emit_plt_entry (MonoAotCompile *acfg, const char *got_symbol, int offset, int info_offset)
 {
 #if defined(TARGET_X86)
-#if defined(__default_codegen__)
                /* jmp *<offset>(%ebx) */
                emit_byte (acfg, 0xff);
                emit_byte (acfg, 0xa3);
                emit_int32 (acfg, offset);
                /* Used by mono_aot_get_plt_info_offset */
                emit_int32 (acfg, info_offset);
-#elif defined(__native_client_codegen__)
-               const guint8 kSizeOfNaClJmp = 11;
-               guint8 bytes[kSizeOfNaClJmp];
-               guint8 *pbytes = &bytes[0];
-               
-               x86_jump_membase32 (pbytes, X86_EBX, offset);
-               emit_bytes (acfg, bytes, kSizeOfNaClJmp);
-               /* four bytes of data, used by mono_arch_patch_plt_entry              */
-               /* For Native Client, make this work with data embedded in push.      */
-               emit_byte (acfg, 0x68);  /* hide data in a push */
-               emit_int32 (acfg, info_offset);
-               emit_alignment (acfg, AOT_FUNC_ALIGNMENT);
-#endif /*__native_client_codegen__*/
 #elif defined(TARGET_AMD64)
-#if defined(__default_codegen__)
                emit_unset_mode (acfg);
                fprintf (acfg->fp, "jmp *%s+%d(%%rip)\n", got_symbol, offset);
                /* Used by mono_aot_get_plt_info_offset */
                emit_int32 (acfg, info_offset);
                acfg->stats.plt_size += 10;
-#elif defined(__native_client_codegen__)
-               guint8 buf [256];
-               guint8 *buf_aligned = ALIGN_TO(buf, kNaClAlignment);
-               guint8 *code = buf_aligned;
-
-               /* mov <OFFSET>(%rip), %r11d */
-               emit_byte (acfg, '\x45');
-               emit_byte (acfg, '\x8b');
-               emit_byte (acfg, '\x1d');
-               emit_symbol_diff (acfg, got_symbol, ".", offset - 4);
-
-               amd64_jump_reg (code, AMD64_R11);
-               /* This should be constant for the plt patch */
-               g_assert ((size_t)(code-buf_aligned) == 10);
-               emit_bytes (acfg, buf_aligned, code - buf_aligned);
-
-               /* Hide data in a push imm32 so it passes validation */
-               emit_byte (acfg, 0x68);  /* push */
-               emit_int32 (acfg, info_offset);
-               emit_alignment (acfg, AOT_FUNC_ALIGNMENT);
-#endif /*__native_client_codegen__*/
 #elif defined(TARGET_ARM)
                guint8 buf [256];
                guint8 *code;
@@ -1878,7 +1831,6 @@ arch_emit_specific_trampoline (MonoAotCompile *acfg, int offset, int *tramp_size
         * - all the trampolines should be of the same length.
         */
 #if defined(TARGET_AMD64)
-#if defined(__default_codegen__)
        /* This should be exactly 8 bytes long */
        *tramp_size = 8;
        /* call *<offset>(%rip) */
@@ -1893,59 +1845,6 @@ arch_emit_specific_trampoline (MonoAotCompile *acfg, int offset, int *tramp_size
                emit_symbol_diff (acfg, acfg->got_symbol, ".", (offset * sizeof (gpointer)) - 4);
                emit_zero_bytes (acfg, 1);
        }
-#elif defined(__native_client_codegen__)
-       guint8 buf [256];
-       guint8 *buf_aligned = ALIGN_TO(buf, kNaClAlignment);
-       guint8 *code = buf_aligned;
-       guint8 *call_start;
-       size_t call_len;
-       int got_offset;
-
-       /* Emit this call in 'code' so we can find out how long it is. */
-       amd64_call_reg (code, AMD64_R11);
-       call_start = mono_arch_nacl_skip_nops (buf_aligned);
-       call_len = code - call_start;
-
-       /* The tramp_size is twice the NaCl alignment because it starts with */ 
-       /* a call which needs to be aligned to the end of the boundary.      */
-       *tramp_size = kNaClAlignment*2;
-       {
-               /* Emit nops to align call site below which is 7 bytes plus */
-               /* the length of the call sequence emitted above.           */
-               /* Note: this requires the specific trampoline starts on a  */
-               /* kNaclAlignedment aligned address, which it does because  */
-               /* it's its own function that is aligned.                   */
-               guint8 nop_buf[256];
-               guint8 *nopbuf_aligned = ALIGN_TO (nop_buf, kNaClAlignment);
-               guint8 *nopbuf_end = mono_arch_nacl_pad (nopbuf_aligned, kNaClAlignment - 7 - (call_len));
-               emit_bytes (acfg, nopbuf_aligned, nopbuf_end - nopbuf_aligned);
-       }
-       /* The trampoline is stored at the offset'th pointer, the -4 is  */
-       /* present because RIP relative addressing starts at the end of  */
-       /* the current instruction, while the label "." is relative to   */
-       /* the beginning of the current asm location, which in this case */
-       /* is not the mov instruction, but the offset itself, due to the */
-       /* way the bytes and ints are emitted here.                      */
-       got_offset = (offset * sizeof(gpointer)) - 4;
-
-       /* mov <OFFSET>(%rip), %r11d */
-       emit_byte (acfg, '\x45');
-       emit_byte (acfg, '\x8b');
-       emit_byte (acfg, '\x1d');
-       emit_symbol_diff (acfg, acfg->got_symbol, ".", got_offset);
-
-       /* naclcall %r11 */
-       emit_bytes (acfg, call_start, call_len);
-
-       /* The arg is stored at the offset+1 pointer, relative to beginning */
-       /* of trampoline: 7 for mov, plus the call length, and 1 for push.  */
-       got_offset = ((offset + 1) * sizeof(gpointer)) + 7 + call_len + 1;
-
-       /* We can't emit this data directly, hide in a "push imm32" */
-       emit_byte (acfg, '\x68'); /* push */
-       emit_symbol_diff (acfg, acfg->got_symbol, ".", got_offset);
-       emit_alignment (acfg, kNaClAlignment);
-#endif /*__native_client_codegen__*/
 #elif defined(TARGET_ARM)
        guint8 buf [128];
        guint8 *code;
@@ -2027,16 +1926,9 @@ arch_emit_specific_trampoline (MonoAotCompile *acfg, int offset, int *tramp_size
        /* Branch to generic trampoline */
        x86_jump_reg (code, X86_ECX);
 
-#ifdef __native_client_codegen__
-       {
-               /* emit nops to next 32 byte alignment */
-               int a = (~kNaClAlignmentMask) & ((code - buf) + kNaClAlignment - 1);
-               while (code < (buf + a)) x86_nop(code);
-       }
-#endif
        emit_bytes (acfg, buf, code - buf);
 
-       *tramp_size = NACL_SIZE(17, kNaClAlignment);
+       *tramp_size = 17;
        g_assert (code - buf == *tramp_size);
 #else
        g_assert_not_reached ();
@@ -2132,7 +2024,6 @@ static void
 arch_emit_static_rgctx_trampoline (MonoAotCompile *acfg, int offset, int *tramp_size)
 {
 #if defined(TARGET_AMD64)
-#if defined(__default_codegen__)
        /* This should be exactly 13 bytes long */
        *tramp_size = 13;
 
@@ -2152,31 +2043,6 @@ arch_emit_static_rgctx_trampoline (MonoAotCompile *acfg, int offset, int *tramp_
                emit_byte (acfg, '\x25');
                emit_symbol_diff (acfg, acfg->got_symbol, ".", ((offset + 1) * sizeof (gpointer)) - 4);
        }
-#elif defined(__native_client_codegen__)
-       guint8 buf [128];
-       guint8 *buf_aligned = ALIGN_TO(buf, kNaClAlignment);
-       guint8 *code = buf_aligned;
-
-       /* mov <OFFSET>(%rip), %r10d */
-       emit_byte (acfg, '\x45');
-       emit_byte (acfg, '\x8b');
-       emit_byte (acfg, '\x15');
-       emit_symbol_diff (acfg, acfg->got_symbol, ".", (offset * sizeof (gpointer)) - 4);
-
-       /* mov <OFFSET>(%rip), %r11d */
-       emit_byte (acfg, '\x45');
-       emit_byte (acfg, '\x8b');
-       emit_byte (acfg, '\x1d');
-       emit_symbol_diff (acfg, acfg->got_symbol, ".", ((offset + 1) * sizeof (gpointer)) - 4);
-
-       /* nacljmp *%r11 */
-       amd64_jump_reg (code, AMD64_R11);
-       emit_bytes (acfg, buf_aligned, code - buf_aligned);
-
-       emit_alignment (acfg, kNaClAlignment);
-       *tramp_size = kNaClAlignment;
-#endif /*__native_client_codegen__*/
-
 #elif defined(TARGET_ARM)
        guint8 buf [128];
        guint8 *code;
@@ -2253,17 +2119,9 @@ arch_emit_static_rgctx_trampoline (MonoAotCompile *acfg, int offset, int *tramp_
        /* Branch to the target address */
        x86_jump_membase (code, X86_ECX, (offset + 1) * sizeof (gpointer));
 
-#ifdef __native_client_codegen__
-       {
-               /* emit nops to next 32 byte alignment */
-               int a = (~kNaClAlignmentMask) & ((code - buf) + kNaClAlignment - 1);
-               while (code < (buf + a)) x86_nop(code);
-       }
-#endif
-
        emit_bytes (acfg, buf, code - buf);
 
-       *tramp_size = NACL_SIZE (15, kNaClAlignment);
+       *tramp_size = 15;
        g_assert (code - buf == *tramp_size);
 #else
        g_assert_not_reached ();
@@ -2286,23 +2144,13 @@ arch_emit_imt_thunk (MonoAotCompile *acfg, int offset, int *tramp_size)
 {
 #if defined(TARGET_AMD64)
        guint8 *buf, *code;
-#if defined(__native_client_codegen__)
-       guint8 *buf_alloc;
-#endif
        guint8 *labels [16];
        guint8 mov_buf[3];
        guint8 *mov_buf_ptr = mov_buf;
 
        const int kSizeOfMove = 7;
-#if defined(__default_codegen__)
+
        code = buf = (guint8 *)g_malloc (256);
-#elif defined(__native_client_codegen__)
-       buf_alloc = g_malloc (256 + kNaClAlignment + kSizeOfMove);
-       buf = ((guint)buf_alloc + kNaClAlignment) & ~kNaClAlignmentMask;
-       /* The RIP relative move below is emitted first */
-       buf += kSizeOfMove;
-       code = buf;
-#endif
 
        /* FIXME: Optimize this, i.e. use binary search etc. */
        /* Maybe move the body into a separate function (slower, but much smaller) */
@@ -2359,30 +2207,14 @@ arch_emit_imt_thunk (MonoAotCompile *acfg, int offset, int *tramp_size)
        emit_bytes (acfg, buf, code - buf);
 
        *tramp_size = code - buf + kSizeOfMove;
-#if defined(__native_client_codegen__)
-       /* The tramp will be padded to the next kNaClAlignment bundle. */
-       *tramp_size = ALIGN_TO ((*tramp_size), kNaClAlignment);
-#endif
 
-#if defined(__default_codegen__)
        g_free (buf);
-#elif defined(__native_client_codegen__)
-       g_free (buf_alloc); 
-#endif
 
 #elif defined(TARGET_X86)
        guint8 *buf, *code;
-#ifdef __native_client_codegen__
-       guint8 *buf_alloc;
-#endif
        guint8 *labels [16];
 
-#if defined(__default_codegen__)
        code = buf = g_malloc (256);
-#elif defined(__native_client_codegen__)
-       buf_alloc = g_malloc (256 + kNaClAlignment);
-       code = buf = ((guint)buf_alloc + kNaClAlignment) & ~kNaClAlignmentMask;
-#endif
 
        /* Allocate a temporary stack slot */
        x86_push_reg (code, X86_EAX);
@@ -2435,22 +2267,11 @@ arch_emit_imt_thunk (MonoAotCompile *acfg, int offset, int *tramp_size)
        mono_x86_patch (labels [3], code);
        x86_breakpoint (code);
 
-#ifdef __native_client_codegen__
-       {
-               /* emit nops to next 32 byte alignment */
-               int a = (~kNaClAlignmentMask) & ((code - buf) + kNaClAlignment - 1);
-               while (code < (buf + a)) x86_nop(code);
-       }
-#endif
        emit_bytes (acfg, buf, code - buf);
        
        *tramp_size = code - buf;
 
-#if defined(__default_codegen__)
        g_free (buf);
-#elif defined(__native_client_codegen__)
-       g_free (buf_alloc); 
-#endif
 
 #elif defined(TARGET_ARM)
        guint8 buf [128];
@@ -2606,17 +2427,9 @@ arch_emit_gsharedvt_arg_trampoline (MonoAotCompile *acfg, int offset, int *tramp
        /* Branch to the target address */
        x86_jump_membase (code, X86_ECX, (offset + 1) * sizeof (gpointer));
 
-#ifdef __native_client_codegen__
-       {
-               /* emit nops to next 32 byte alignment */
-               int a = (~kNaClAlignmentMask) & ((code - buf) + kNaClAlignment - 1);
-               while (code < (buf + a)) x86_nop(code);
-       }
-#endif
-
        emit_bytes (acfg, buf, code - buf);
 
-       *tramp_size = NACL_SIZE (15, kNaClAlignment);
+       *tramp_size = 15;
        g_assert (code - buf == *tramp_size);
 #elif defined(TARGET_ARM)
        guint8 buf [128];
@@ -2907,22 +2720,19 @@ find_typespec_for_class (MonoAotCompile *acfg, MonoClass *klass)
 
        /* FIXME: Search referenced images as well */
        if (!acfg->typespec_classes) {
-               acfg->typespec_classes = (MonoClass **)mono_mempool_alloc0 (acfg->mempool, sizeof (MonoClass*) * len);
-               for (i = 0; i < len; ++i) {
+               acfg->typespec_classes = g_hash_table_new (NULL, NULL);
+               for (i = 0; i < len; i++) {
                        MonoError error;
-                       acfg->typespec_classes [i] = mono_class_get_and_inflate_typespec_checked (acfg->image, MONO_TOKEN_TYPE_SPEC | (i + 1), NULL, &error);
-                       g_assert (mono_error_ok (&error)); /* FIXME error handling */
+                       int typespec = MONO_TOKEN_TYPE_SPEC | (i + 1);
+                       MonoClass *klass_key = mono_class_get_and_inflate_typespec_checked (acfg->image, typespec, NULL, &error);
+                       if (!is_ok (&error)) {
+                               mono_error_cleanup (&error);
+                               continue;
+                       }
+                       g_hash_table_insert (acfg->typespec_classes, klass_key, GINT_TO_POINTER (typespec));
                }
        }
-       for (i = 0; i < len; ++i) {
-               if (acfg->typespec_classes [i] == klass)
-                       break;
-       }
-
-       if (i < len)
-               return MONO_TOKEN_TYPE_SPEC | (i + 1);
-       else
-               return 0;
+       return GPOINTER_TO_INT (g_hash_table_lookup (acfg->typespec_classes, klass));
 }
 
 static void
@@ -3290,7 +3100,6 @@ encode_method_ref (MonoAotCompile *acfg, MonoMethod *method, guint8 *buf, guint8
                        encode_klass_ref (acfg, info->d.proxy.klass, p, &p);
                        break;
                }
-               case MONO_WRAPPER_LDFLD_REMOTE:
                case MONO_WRAPPER_STFLD_REMOTE:
                        break;
                case MONO_WRAPPER_ALLOC: {
@@ -4069,13 +3878,9 @@ add_wrappers (MonoAotCompile *acfg)
                        /* Managed Allocators */
                        nallocators = mono_gc_get_managed_allocator_types ();
                        for (i = 0; i < nallocators; ++i) {
-                               m = mono_gc_get_managed_allocator_by_type (i, TRUE);
-                               if (m)
+                               if ((m = mono_gc_get_managed_allocator_by_type (i, MANAGED_ALLOCATOR_REGULAR)))
                                        add_method (acfg, m);
-                       }
-                       for (i = 0; i < nallocators; ++i) {
-                               m = mono_gc_get_managed_allocator_by_type (i, FALSE);
-                               if (m)
+                               if ((m = mono_gc_get_managed_allocator_by_type (i, MANAGED_ALLOCATOR_SLOW_PATH)))
                                        add_method (acfg, m);
                        }
                }
@@ -5137,23 +4942,23 @@ add_generic_instances (MonoAotCompile *acfg)
                }
 
                /* object[] accessor wrappers. */
-               {
-                       MonoClass *obj_array_class = mono_array_class_get (mono_defaults.object_class, 1);
+               for (i = 1; i < 3; ++i) {
+                       MonoClass *obj_array_class = mono_array_class_get (mono_defaults.object_class, i);
                        MonoMethod *m;
 
-                       m = mono_class_get_method_from_name (obj_array_class, "Get", 1);
+                       m = mono_class_get_method_from_name (obj_array_class, "Get", i);
                        g_assert (m);
 
                        m = mono_marshal_get_array_accessor_wrapper (m);
                        add_extra_method (acfg, m);
 
-                       m = mono_class_get_method_from_name (obj_array_class, "Address", 1);
+                       m = mono_class_get_method_from_name (obj_array_class, "Address", i);
                        g_assert (m);
 
                        m = mono_marshal_get_array_accessor_wrapper (m);
                        add_extra_method (acfg, m);
 
-                       m = mono_class_get_method_from_name (obj_array_class, "Set", 2);
+                       m = mono_class_get_method_from_name (obj_array_class, "Set", i + 1);
                        g_assert (m);
 
                        m = mono_marshal_get_array_accessor_wrapper (m);
@@ -6529,7 +6334,7 @@ emit_plt (MonoAotCompile *acfg)
        emit_line (acfg);
 
        emit_section_change (acfg, ".text", 0);
-       emit_alignment_code (acfg, NACL_SIZE(16, kNaClAlignment));
+       emit_alignment_code (acfg, 16);
        emit_info_symbol (acfg, "plt");
        emit_label (acfg, acfg->plt_symbol);
 
@@ -6667,10 +6472,6 @@ emit_trampoline_full (MonoAotCompile *acfg, int got_offset, MonoTrampInfo *info,
        ji = info->ji;
        unwind_ops = info->unwind_ops;
 
-#ifdef __native_client_codegen__
-       mono_nacl_fix_patches (code, ji);
-#endif
-
        /* Emit code */
 
        sprintf (start_symbol, "%s%s", acfg->user_symbol_prefix, name);
@@ -6958,11 +6759,6 @@ emit_trampolines (MonoAotCompile *acfg)
                                default:
                                        g_assert_not_reached ();
                                }
-#ifdef __native_client_codegen__
-                               /* align to avoid 32-byte boundary crossings */
-                               emit_alignment (acfg, AOT_FUNC_ALIGNMENT);
-#endif
-
                                if (!acfg->trampoline_size [ntype]) {
                                        g_assert (tramp_size);
                                        acfg->trampoline_size [ntype] = tramp_size;
@@ -7236,6 +7032,8 @@ mono_aot_parse_options (const char *aot_options, MonoAotOptions *opts)
                        opts->ntrampolines = atoi (arg + strlen ("ntrampolines="));
                } else if (str_begins_with (arg, "nrgctx-trampolines=")) {
                        opts->nrgctx_trampolines = atoi (arg + strlen ("nrgctx-trampolines="));
+               } else if (str_begins_with (arg, "nrgctx-fetch-trampolines=")) {
+                       opts->nrgctx_fetch_trampolines = atoi (arg + strlen ("nrgctx-fetch-trampolines="));
                } else if (str_begins_with (arg, "nimt-trampolines=")) {
                        opts->nimt_trampolines = atoi (arg + strlen ("nimt-trampolines="));
                } else if (str_begins_with (arg, "ngsharedvt-trampolines=")) {
@@ -7384,7 +7182,6 @@ can_encode_method (MonoAotCompile *acfg, MonoMethod *method)
                        case MONO_WRAPPER_STFLD:
                        case MONO_WRAPPER_LDFLD:
                        case MONO_WRAPPER_LDFLDA:
-                       case MONO_WRAPPER_LDFLD_REMOTE:
                        case MONO_WRAPPER_STFLD_REMOTE:
                        case MONO_WRAPPER_STELEMREF:
                        case MONO_WRAPPER_ISINST:
@@ -8104,6 +7901,8 @@ mono_aot_get_method_name (MonoCompile *cfg)
 gboolean
 mono_aot_is_linkonce_method (MonoMethod *method)
 {
+       return FALSE;
+#if 0
        WrapperInfo *info;
 
        // FIXME: Add more cases
@@ -8113,6 +7912,7 @@ mono_aot_is_linkonce_method (MonoMethod *method)
        if ((info && (info->subtype == WRAPPER_SUBTYPE_GSHAREDVT_IN_SIG || info->subtype == WRAPPER_SUBTYPE_GSHAREDVT_OUT_SIG)))
                return TRUE;
        return FALSE;
+#endif
 }
 
 static gboolean
@@ -8532,16 +8332,7 @@ emit_code (MonoAotCompile *acfg)
         * Emit some padding so the local symbol for the first method doesn't have the
         * same address as 'methods'.
         */
-#if defined(__default_codegen__)
        emit_padding (acfg, 16);
-#elif defined(__native_client_codegen__)
-       {
-               const int kPaddingSize = 16;
-               guint8 pad_buffer[kPaddingSize];
-               mono_arch_nacl_pad (pad_buffer, kPaddingSize);
-               emit_bytes (acfg, pad_buffer, kPaddingSize);
-       }
-#endif
 
        for (oindex = 0; oindex < acfg->method_order->len; ++oindex) {
                MonoCompile *cfg;
@@ -8561,9 +8352,6 @@ emit_code (MonoAotCompile *acfg)
                        sprintf (symbol, "ut_%d", get_method_index (acfg, method));
 
                        emit_section_change (acfg, ".text", 0);
-#ifdef __native_client_codegen__
-                       emit_alignment (acfg, AOT_FUNC_ALIGNMENT);
-#endif
 
                        if (acfg->thumb_mixed && cfg->compile_llvm) {
                                emit_set_thumb_mode (acfg);
@@ -9928,6 +9716,7 @@ compile_methods (MonoAotCompile *acfg)
                HANDLE handle;
                gpointer *user_data;
                MonoMethod **methods;
+               MonoThreadParm tp;
 
                methods_len = acfg->methods->len;
 
@@ -9958,7 +9747,10 @@ compile_methods (MonoAotCompile *acfg)
                        user_data [1] = acfg;
                        user_data [2] = frag;
                        
-                       handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)compile_thread_main, user_data, 0, 0, NULL);
+                       tp.priority = 0;
+                       tp.stack_size = 0;
+                       tp.creation_flags = 0;
+                       handle = mono_threads_create_thread ((LPTHREAD_START_ROUTINE)compile_thread_main, user_data, &tp, NULL);
                        g_ptr_array_add (threads, handle);
                }
                g_free (methods);
@@ -10277,6 +10069,8 @@ acfg_free (MonoAotCompile *acfg)
        g_hash_table_destroy (acfg->image_hash);
        g_hash_table_destroy (acfg->unwind_info_offsets);
        g_hash_table_destroy (acfg->method_label_hash);
+       if (acfg->typespec_classes)
+               g_hash_table_destroy (acfg->typespec_classes);
        g_hash_table_destroy (acfg->export_names);
        g_hash_table_destroy (acfg->plt_entry_debug_sym_cache);
        g_hash_table_destroy (acfg->klass_blob_hash);
index 5cf86261d209f157fec8532671096931307e719f..5aa2ca6d88adbd0f277161acc20065472074ea20 100644 (file)
@@ -56,6 +56,7 @@
 #include <mono/utils/mono-compiler.h>
 #include <mono/utils/mono-counters.h>
 #include <mono/utils/mono-digest.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include "mini.h"
 #include "seq-points.h"
@@ -921,17 +922,17 @@ decode_method_ref_with_target (MonoAotModule *module, MethodRef *ref, MonoMethod
                        }
                        break;
                }
-               case MONO_WRAPPER_LDFLD_REMOTE:
-                       ref->method = mono_marshal_get_ldfld_remote_wrapper (NULL);
-                       break;
                case MONO_WRAPPER_STFLD_REMOTE:
                        ref->method = mono_marshal_get_stfld_remote_wrapper (NULL);
                        break;
 #endif
                case MONO_WRAPPER_ALLOC: {
                        int atype = decode_value (p, &p);
+                       ManagedAllocatorVariant variant =
+                               mono_profiler_get_events () & MONO_PROFILE_ALLOCATIONS ?
+                               MANAGED_ALLOCATOR_SLOW_PATH : MANAGED_ALLOCATOR_REGULAR;
 
-                       ref->method = mono_gc_get_managed_allocator_by_type (atype, !!(mono_profiler_get_events () & MONO_PROFILE_ALLOCATIONS));
+                       ref->method = mono_gc_get_managed_allocator_by_type (atype, variant);
                        if (!ref->method) {
                                mono_error_set_bad_image_name (error, module->aot_name, "Error: No managed allocator, but we need one for AOT.\nAre you using non-standard GC options?\n");
                                return FALSE;
@@ -2400,9 +2401,8 @@ decode_cached_class_info (MonoAotModule *module, MonoCachedClassInfo *info, guin
 }      
 
 gpointer
-mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int slot)
+mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int slot, MonoError *error)
 {
-       MonoError error;
        int i;
        MonoClass *klass = vtable->klass;
        MonoAotModule *amodule = (MonoAotModule *)klass->image->aot_module;
@@ -2411,6 +2411,10 @@ mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int sl
        gboolean err;
        MethodRef ref;
        gboolean res;
+       gpointer addr;
+       MonoError inner_error;
+
+       mono_error_init (error);
 
        if (MONO_CLASS_IS_INTERFACE (klass) || klass->rank || !amodule)
                return NULL;
@@ -2423,12 +2427,12 @@ mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int sl
                return NULL;
 
        for (i = 0; i < slot; ++i) {
-               decode_method_ref (amodule, &ref, p, &p, &error);
-               mono_error_cleanup (&error); /* FIXME don't swallow the error */
+               decode_method_ref (amodule, &ref, p, &p, &inner_error);
+               mono_error_cleanup (&inner_error); /* FIXME don't swallow the error */
        }
 
-       res = decode_method_ref (amodule, &ref, p, &p, &error);
-       mono_error_cleanup (&error); /* FIXME don't swallow the error */
+       res = decode_method_ref (amodule, &ref, p, &p, &inner_error);
+       mono_error_cleanup (&inner_error); /* FIXME don't swallow the error */
        if (!res)
                return NULL;
        if (ref.no_aot_trampoline)
@@ -2437,7 +2441,8 @@ mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int sl
        if (mono_metadata_token_index (ref.token) == 0 || mono_metadata_token_table (ref.token) != MONO_TABLE_METHOD)
                return NULL;
 
-       return mono_aot_get_method_from_token (domain, ref.image, ref.token);
+       addr = mono_aot_get_method_from_token (domain, ref.image, ref.token, error);
+       return addr;
 }
 
 gboolean
@@ -3822,12 +3827,15 @@ register_jump_target_got_slot (MonoDomain *domain, MonoMethod *method, gpointer
  * METHOD might not be set if the caller only has the image/token info.
  */
 static gpointer
-load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoMethod *method, guint32 token, int method_index)
+load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoMethod *method, guint32 token, int method_index,
+                        MonoError *error)
 {
        MonoJitInfo *jinfo = NULL;
        guint8 *code = NULL, *info;
        gboolean res;
 
+       mono_error_init (error);
+
        init_amodule_got (amodule);
 
        if (mono_profiler_get_events () & MONO_PROFILE_ENTER_LEAVE) {
@@ -3859,9 +3867,9 @@ load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoM
                                char *full_name;
 
                                if (!method) {
-                                       MonoError error;
-                                       method = mono_get_method_checked (image, token, NULL, NULL, &error);
-                                       g_assert (mono_error_ok (&error)); /* FIXME don't swallow the error */
+                                       method = mono_get_method_checked (image, token, NULL, NULL, error);
+                                       if (!method)
+                                               return NULL;
                                }
                                full_name = mono_method_full_name (method, TRUE);
                                mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_AOT, "AOT: NOT FOUND: %s.", full_name);
@@ -3894,10 +3902,9 @@ load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoM
                                return NULL;
                else if (mono_jit_stats.methods_aot == mono_last_aot_method - 1) {
                        if (!method) {
-                               MonoError error;
-                               method = mono_get_method_checked (image, token, NULL, NULL, &error);
+                               method = mono_get_method_checked (image, token, NULL, NULL, error);
                                if (!method)
-                                       mono_error_cleanup (&error);/* FIXME don't swallow the error */
+                                       return NULL;
                        }
                        if (method) {
                                char *name = mono_method_full_name (method, TRUE);
@@ -3910,11 +3917,7 @@ load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoM
        }
 
        if (!(is_llvm_code (amodule, code) && (amodule->info.flags & MONO_AOT_FILE_FLAG_LLVM_ONLY))) {
-               MonoError error;
-
-               res = init_method (amodule, method_index, method, NULL, NULL, &error);
-               if (!mono_error_ok (&error))
-                       mono_error_raise_exception (&error); /* FIXME: Don't raise here */
+               res = init_method (amodule, method_index, method, NULL, NULL, error);
                if (!res)
                        goto cleanup;
        }
@@ -3923,10 +3926,9 @@ load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoM
                char *full_name;
 
                if (!method) {
-                       MonoError error;
-                       method = mono_get_method_checked (image, token, NULL, NULL, &error);
+                       method = mono_get_method_checked (image, token, NULL, NULL, error);
                        if (!method)
-                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (&error)); /* FIXME don't swallow the error */
+                               return NULL;
                }
 
                full_name = mono_method_full_name (method, TRUE);
@@ -3955,10 +3957,9 @@ load_method (MonoDomain *domain, MonoAotModule *amodule, MonoImage *image, MonoM
                MonoJitInfo *jinfo;
 
                if (!method) {
-                       MonoError error;
-                       method = mono_get_method_checked (amodule->assembly->image, token, NULL, NULL, &error);
+                       method = mono_get_method_checked (amodule->assembly->image, token, NULL, NULL, error);
                        if (!method)
-                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (&error)); /* FIXME don't swallow the error */
+                               return NULL;
                }
                mono_profiler_method_jit (method);
                jinfo = mono_jit_info_table_find (domain, (char*)code);
@@ -4258,27 +4259,36 @@ init_method (MonoAotModule *amodule, guint32 method_index, MonoMethod *method, M
        return FALSE;
 }
 
+static void
+init_llvmonly_method (MonoAotModule *amodule, guint32 method_index, MonoMethod *method, MonoClass *init_class, MonoGenericContext *context)
+{
+       gboolean res;
+       MonoError error;
+
+       res = init_method (amodule, method_index, method, init_class, context, &error);
+       if (!is_ok (&error)) {
+               MonoException *ex = mono_error_convert_to_exception (&error);
+               /* Its okay to raise in llvmonly mode */
+               if (ex)
+                       mono_llvm_throw_exception ((MonoObject*)ex);
+       }
+}
+
 void
 mono_aot_init_llvm_method (gpointer aot_module, guint32 method_index)
 {
        MonoAotModule *amodule = (MonoAotModule *)aot_module;
-       gboolean res;
-       MonoError error;
 
-       // FIXME: Handle errors
-       res = init_method (amodule, method_index, NULL, NULL, NULL, &error);
-       g_assert (res);
+       init_llvmonly_method (amodule, method_index, NULL, NULL, NULL);
 }
 
 void
 mono_aot_init_gshared_method_this (gpointer aot_module, guint32 method_index, MonoObject *this_obj)
 {
        MonoAotModule *amodule = (MonoAotModule *)aot_module;
-       gboolean res;
        MonoClass *klass;
        MonoGenericContext *context;
        MonoMethod *method;
-       MonoError error;
 
        // FIXME:
        g_assert (this_obj);
@@ -4292,18 +4302,15 @@ mono_aot_init_gshared_method_this (gpointer aot_module, guint32 method_index, Mo
        context = mono_method_get_context (method);
        g_assert (context);
 
-       res = init_method (amodule, method_index, NULL, klass, context, &error);
-       g_assert (res);
+       init_llvmonly_method (amodule, method_index, NULL, klass, context);
 }
 
 void
 mono_aot_init_gshared_method_mrgctx (gpointer aot_module, guint32 method_index, MonoMethodRuntimeGenericContext *rgctx)
 {
        MonoAotModule *amodule = (MonoAotModule *)aot_module;
-       gboolean res;
        MonoGenericContext context = { NULL, NULL };
        MonoClass *klass = rgctx->class_vtable->klass;
-       MonoError error;
 
        if (klass->generic_class)
                context.class_inst = klass->generic_class->context.class_inst;
@@ -4311,19 +4318,16 @@ mono_aot_init_gshared_method_mrgctx (gpointer aot_module, guint32 method_index,
                context.class_inst = klass->generic_container->context.class_inst;
        context.method_inst = rgctx->method_inst;
 
-       res = init_method (amodule, method_index, NULL, rgctx->class_vtable->klass, &context, &error);
-       g_assert (res);
+       init_llvmonly_method (amodule, method_index, NULL, rgctx->class_vtable->klass, &context);
 }
 
 void
 mono_aot_init_gshared_method_vtable (gpointer aot_module, guint32 method_index, MonoVTable *vtable)
 {
        MonoAotModule *amodule = (MonoAotModule *)aot_module;
-       gboolean res;
        MonoClass *klass;
        MonoGenericContext *context;
        MonoMethod *method;
-       MonoError error;
 
        klass = vtable->klass;
 
@@ -4335,19 +4339,18 @@ mono_aot_init_gshared_method_vtable (gpointer aot_module, guint32 method_index,
        context = mono_method_get_context (method);
        g_assert (context);
 
-       res = init_method (amodule, method_index, NULL, klass, context, &error);
-       g_assert (res);
+       init_llvmonly_method (amodule, method_index, NULL, klass, context);
 }
 
 /*
- * mono_aot_get_method:
+ * mono_aot_get_method_checked:
  *
  *   Return a pointer to the AOTed native code for METHOD if it can be found,
  * NULL otherwise.
  * On platforms with function pointers, this doesn't return a function pointer.
  */
 gpointer
-mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
+mono_aot_get_method_checked (MonoDomain *domain, MonoMethod *method, MonoError *error)
 {
        MonoClass *klass = method->klass;
        MonoMethod *orig_method = method;
@@ -4355,6 +4358,9 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
        MonoAotModule *amodule = (MonoAotModule *)klass->image->aot_module;
        guint8 *code;
        gboolean cache_result = FALSE;
+       MonoError inner_error;
+
+       mono_error_init (error);
 
        if (domain != mono_get_root_domain ())
                /* Non shared AOT code can't be used in other appdomains */
@@ -4387,7 +4393,7 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
         * remoting.
         */
        if (mono_aot_only && method->wrapper_type == MONO_WRAPPER_REMOTING_INVOKE_WITH_CHECK)
-               return mono_aot_get_method (domain, mono_marshal_method_from_wrapper (method));
+               return mono_aot_get_method_checked (domain, mono_marshal_method_from_wrapper (method), error);
 
        g_assert (klass->inited);
 
@@ -4427,7 +4433,8 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                if (method_index == 0xffffff && method->wrapper_type == MONO_WRAPPER_MANAGED_TO_MANAGED && method->klass->rank && strstr (method->name, "System.Collections.Generic")) {
                        MonoMethod *m = mono_aot_get_array_helper_from_wrapper (method);
 
-                       code = (guint8 *)mono_aot_get_method (domain, m);
+                       code = (guint8 *)mono_aot_get_method_checked (domain, m, &inner_error);
+                       mono_error_cleanup (&inner_error);
                        if (code)
                                return code;
                }
@@ -4438,7 +4445,6 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                 * an out parameter, so the managed-to-native wrappers can share the same code.
                 */
                if (method_index == 0xffffff && method->wrapper_type == MONO_WRAPPER_MANAGED_TO_NATIVE && method->klass == mono_defaults.array_class && !strcmp (method->name, "GetGenericValueImpl")) {
-                       MonoError error;
                        MonoMethod *m;
                        MonoGenericContext ctx;
                        MonoType *args [16];
@@ -4454,15 +4460,16 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                        args [0] = &mono_defaults.object_class->byval_arg;
                        ctx.method_inst = mono_metadata_get_generic_inst (1, args);
 
-                       m = mono_marshal_get_native_wrapper (mono_class_inflate_generic_method_checked (m, &ctx, &error), TRUE, TRUE);
+                       m = mono_marshal_get_native_wrapper (mono_class_inflate_generic_method_checked (m, &ctx, error), TRUE, TRUE);
                        if (!m)
-                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (&error)); /* FIXME don't swallow the error */
+                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (error)); /* FIXME don't swallow the error */
 
                        /* 
                         * Get the code for the <object> instantiation which should be emitted into
                         * the mscorlib aot image by the AOT compiler.
                         */
-                       code = (guint8 *)mono_aot_get_method (domain, m);
+                       code = (guint8 *)mono_aot_get_method_checked (domain, m, &inner_error);
+                       mono_error_cleanup (&inner_error);
                        if (code)
                                return code;
                }
@@ -4473,7 +4480,6 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                        ((!strcmp (method->klass->name_space, "System.Threading") && !strcmp (method->klass->name, "Interlocked") && (!strcmp (method->name, "CompareExchange") || !strcmp (method->name, "Exchange")) && MONO_TYPE_IS_REFERENCE (mini_type_get_underlying_type (mono_method_signature (method)->params [1]))) ||
                         (!strcmp (method->klass->name_space, "System.Threading") && !strcmp (method->klass->name, "Volatile") && (!strcmp (method->name, "Read") && MONO_TYPE_IS_REFERENCE (mini_type_get_underlying_type (mono_method_signature (method)->ret)))) ||
                         (!strcmp (method->klass->name_space, "System.Threading") && !strcmp (method->klass->name, "Volatile") && (!strcmp (method->name, "Write") && MONO_TYPE_IS_REFERENCE (mini_type_get_underlying_type (mono_method_signature (method)->params [1])))))) {
-                       MonoError error;
                        MonoMethod *m;
                        MonoGenericContext ctx;
                        MonoType *args [16];
@@ -4489,9 +4495,9 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                        args [0] = &mono_defaults.object_class->byval_arg;
                        ctx.method_inst = mono_metadata_get_generic_inst (1, args);
 
-                       m = mono_marshal_get_native_wrapper (mono_class_inflate_generic_method_checked (m, &ctx, &error), TRUE, TRUE);
+                       m = mono_marshal_get_native_wrapper (mono_class_inflate_generic_method_checked (m, &ctx, error), TRUE, TRUE);
                        if (!m)
-                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (&error)); /* FIXME don't swallow the error */
+                               g_error ("AOT runtime could not load method due to %s", mono_error_get_message (error)); /* FIXME don't swallow the error */
 
                        /* Avoid recursion */
                        if (method == m)
@@ -4501,7 +4507,8 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                         * Get the code for the <object> instantiation which should be emitted into
                         * the mscorlib aot image by the AOT compiler.
                         */
-                       code = (guint8 *)mono_aot_get_method (domain, m);
+                       code = (guint8 *)mono_aot_get_method_checked (domain, m, &inner_error);
+                       mono_error_cleanup (&inner_error);
                        if (code)
                                return code;
                }
@@ -4513,13 +4520,22 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                        if (info->subtype == WRAPPER_SUBTYPE_ARRAY_ACCESSOR) {
                                MonoMethod *array_method = info->d.array_accessor.method;
                                if (MONO_TYPE_IS_REFERENCE (&array_method->klass->element_class->byval_arg)) {
-                                       MonoClass *obj_array_class = mono_array_class_get (mono_defaults.object_class, 1);
+                                       int rank;
+
+                                       if (!strcmp (array_method->name, "Set"))
+                                               rank = mono_method_signature (array_method)->param_count - 1;
+                                       else if (!strcmp (array_method->name, "Get") || !strcmp (array_method->name, "Address"))
+                                               rank = mono_method_signature (array_method)->param_count;
+                                       else
+                                               g_assert_not_reached ();
+                                       MonoClass *obj_array_class = mono_array_class_get (mono_defaults.object_class, rank);
                                        MonoMethod *m = mono_class_get_method_from_name (obj_array_class, array_method->name, mono_method_signature (array_method)->param_count);
                                        g_assert (m);
 
                                        m = mono_marshal_get_array_accessor_wrapper (m);
                                        if (m != method) {
-                                               code = (guint8 *)mono_aot_get_method (domain, m);
+                                               code = (guint8 *)mono_aot_get_method_checked (domain, m, &inner_error);
+                                               mono_error_cleanup (&inner_error);
                                                if (code)
                                                        return code;
                                        }
@@ -4570,7 +4586,9 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
                method_index = mono_metadata_token_index (method->token) - 1;
        }
 
-       code = (guint8 *)load_method (domain, amodule, klass->image, method, method->token, method_index);
+       code = (guint8 *)load_method (domain, amodule, klass->image, method, method->token, method_index, error);
+       if (!is_ok (error))
+               return NULL;
        if (code && cache_result) {
                amodule_lock (amodule);
                g_hash_table_insert (amodule->method_to_code, orig_method, code);
@@ -4579,22 +4597,44 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
        return code;
 }
 
+/*
+ * mono_aot_get_method:
+ *
+ *   Return a pointer to the AOTed native code for METHOD if it can be found,
+ * NULL otherwise.
+ * On platforms with function pointers, this doesn't return a function pointer.
+ */
+gpointer
+mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
+{
+       MonoError error;
+
+       gpointer res = mono_aot_get_method_checked (domain, method, &error);
+       /* This is external only, so its ok to raise here */
+       mono_error_raise_exception (&error); /* OK to throw, external only without a good alternative */
+       return res;
+}
+
 /**
  * Same as mono_aot_get_method, but we try to avoid loading any metadata from the
  * method.
  */
 gpointer
-mono_aot_get_method_from_token (MonoDomain *domain, MonoImage *image, guint32 token)
+mono_aot_get_method_from_token (MonoDomain *domain, MonoImage *image, guint32 token, MonoError *error)
 {
        MonoAotModule *aot_module = (MonoAotModule *)image->aot_module;
        int method_index;
+       gpointer res;
+
+       mono_error_init (error);
 
        if (!aot_module)
                return NULL;
 
        method_index = mono_metadata_token_index (token) - 1;
 
-       return load_method (domain, aot_module, image, NULL, token, method_index);
+       res = load_method (domain, aot_module, image, NULL, token, method_index, error);
+       return res;
 }
 
 typedef struct {
@@ -5800,6 +5840,14 @@ mono_aot_get_method (MonoDomain *domain, MonoMethod *method)
        return NULL;
 }
 
+gpointer
+mono_aot_get_method_checked (MonoDomain *domain,
+                                                        MonoMethod *method, MonoError *error);
+{
+       mono_error_init (error);
+       return NULL;
+}
+
 gboolean
 mono_aot_is_got_entry (guint8 *code, guint8 *addr)
 {
@@ -5825,8 +5873,9 @@ mono_aot_find_jit_info (MonoDomain *domain, MonoImage *image, gpointer addr)
 }
 
 gpointer
-mono_aot_get_method_from_token (MonoDomain *domain, MonoImage *image, guint32 token)
+mono_aot_get_method_from_token (MonoDomain *domain, MonoImage *image, guint32 token, MonoError *error)
 {
+       mono_error_init (error);
        return NULL;
 }
 
@@ -5848,8 +5897,10 @@ mono_aot_patch_plt_entry (guint8 *code, guint8 *plt_entry, gpointer *got, mgreg_
 }
 
 gpointer
-mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int slot)
+mono_aot_get_method_from_vt_slot (MonoDomain *domain, MonoVTable *vtable, int slot, MonoError *error)
 {
+       mono_error_init (error);
+
        return NULL;
 }
 
index bd823f2b9062cce310ff2791ed9c39a5876c1d44..36c7a15a3e8fe91e1c44ebe8d40cf6546c441994 100644 (file)
@@ -84,6 +84,7 @@ class Tests
        }
 
        [Category ("DYNCALL")]
+       [Category ("!FULLAOT-AMD64")]
        static int test_0_arm64_dyncall_hfa_double () {
                double arg1 = 1.0f;
                // HFA with double members
@@ -97,6 +98,7 @@ class Tests
        }
 
        [Category ("DYNCALL")]
+       [Category ("!FULLAOT-AMD64")]
        static int test_0_arm64_dyncall_hfa_float () {
                double arg1 = 1.0f;
                var s = new Struct2 ();
@@ -110,6 +112,7 @@ class Tests
 
        [Category ("DYNCALL")]
        [Category ("GSHAREDVT")]
+       [Category ("!FULLAOT-AMD64")]
        static int test_0_arm64_dyncall_gsharedvt_out_hfa_double () {
                /* gsharedvt out trampoline with double hfa argument */
                double arg1 = 1.0f;
@@ -129,6 +132,7 @@ class Tests
 
        [Category ("DYNCALL")]
        [Category ("GSHAREDVT")]
+       [Category ("!FULLAOT-AMD64")]
        static int test_0_arm64_dyncall_gsharedvt_out_hfa_float () {
                /* gsharedvt out trampoline with double hfa argument */
                double arg1 = 1.0f;
@@ -190,6 +194,8 @@ class Tests
        }
 
        [Category ("DYNCALL")]
+       [Category ("GSHAREDVT")]
+       [Category ("!FULLAOT-AMD64")]
        static int test_0_arm64_dyncall_vtypebyref_ret () {
                var s = new VTypeByRefStruct () { o1 = 1, o2 = 2, o3 = 3 };
                Type t = typeof (Foo5<>).MakeGenericType (new Type [] { typeof (VTypeByRefStruct) });
@@ -210,7 +216,8 @@ class Tests
                }
        }
 
-       [Category("DYNCALL")]
+       [Category ("DYNCALL")]
+       [Category ("GSHAREDVT")]
        static int test_0_arm_dyncall_reg_stack_split () {
                var m = typeof (Foo6).GetMethod ("reg_stack_split_inner").MakeGenericMethod (new Type[] { typeof (long) });
                var o = new Foo6 ();
@@ -251,6 +258,7 @@ class Tests
        }
 
        [Category ("DYNCALL")]
+       [Category ("!FULLAOT-AMD64")]
        public static int test_0_dyncall_nullable () {
                int? v;
 
@@ -367,6 +375,7 @@ class Tests
                return 0;
        }
 
+       [Category ("DYNCALL")]
        public static int test_0_array_accessor_runtime_invoke_ref () {
                var t = typeof (string[]);
                var arr = Array.CreateInstance (typeof (string), 1);
@@ -399,6 +408,7 @@ class Tests
        }
 
        [Category ("DYNCALL")]
+       [Category ("!FULLAOT-AMD64")]
        public static int test_0_large_nullable_invoke () {
                var s = new LargeStruct () { a = 1, b = 2, c = 3, d = 4 };
 
index ca8289b81c8313619b3f5c3e5fec193c4a503298..cab90f84d3de89b717e58beaf13e98419f440afa 100644 (file)
@@ -209,9 +209,11 @@ mono_replace_ins (MonoCompile *cfg, MonoBasicBlock *bb, MonoInst *ins, MonoInst
 
                /* Multiple BBs */
 
-               /* Set region */
-               for (tmp = first_bb; tmp; tmp = tmp->next_bb)
+               /* Set region/real_offset */
+               for (tmp = first_bb; tmp; tmp = tmp->next_bb) {
                        tmp->region = bb->region;
+                       tmp->real_offset = bb->real_offset;
+               }
 
                /* Split the original bb */
                if (ins->next)
index 7b9cfd320ab60e682c2356632b61a48507850c7a..fb4f06fb9bed0356940ade628058ec623d250af1 100644 (file)
@@ -401,9 +401,9 @@ instruction_hash (MonoInst *insn)
        res ^= insn->sreg1  << 0x10;
        res ^= insn->sreg2  << 0x14;
        res ^= insn->sreg3  << 0x18;
-       res ^= (guint) insn->next;
-       res ^= (guint) insn->prev;
-       res ^= (guint) insn;
+       res ^= (gsize) insn->next;
+       res ^= (gsize) insn->prev;
+       res ^= (gsize) insn;
        return res;
 }
 
index 4de253ba88306bebd026fdab4f1353ac27acb8c2..01219b452680de3f456877078820114f54b48f73 100755 (executable)
 #
 # See the code in mini-x86.c for more details on how the specifiers are used.
 #
-#
-# Native Client Note: NaCl call sequences do not really reach > 32 bytes but 
-# the maximum length can be high, so if we get unlucky and wind up trying to 
-# emit a call sequence such that we are one or two bytes too long, we need to
-# pad out almost an entire 32 bytes.
-#
 
 break: len:2
 tailcall: len:120 clob:c
@@ -69,8 +63,8 @@ label: len:0
 seq_point: len:46 clob:c
 il_seq_point: len:0
 
-long_add: dest:i src1:i src2:i len:3 clob:1 nacl:6
-long_sub: dest:i src1:i src2:i len:3 clob:1 nacl:6
+long_add: dest:i src1:i src2:i len:3 clob:1
+long_sub: dest:i src1:i src2:i len:3 clob:1
 long_mul: dest:i src1:i src2:i len:4 clob:1
 long_div: dest:a src1:a src2:i len:16 clob:d
 long_div_un: dest:a src1:a src2:i len:16 clob:d
@@ -105,11 +99,11 @@ long_min_un: dest:i src1:i src2:i len:16 clob:1
 long_max: dest:i src1:i src2:i len:16 clob:1
 long_max_un: dest:i src1:i src2:i len:16 clob:1
 
-throw: src1:i len:18 nacl:50
-rethrow: src1:i len:18 nacl:50
+throw: src1:i len:18
+rethrow: src1:i len:18
 start_handler: len:16
-endfinally: len:9 nacl:22
-endfilter: src1:a len:9 nacl:19
+endfinally: len:9
+endfilter: src1:a len:9
 get_ex_obj: dest:a len:16
 
 ckfinite: dest:f src1:f len:43
@@ -127,11 +121,11 @@ icompare_imm: src1:i len:8
 fcompare: src1:f src2:f clob:a len:13
 rcompare: src1:f src2:f clob:a len:13
 oparglist: src1:b len:11
-checkthis: src1:b len:5 nacl:8
-call: dest:a clob:c len:32 nacl:64
-voidcall: clob:c len:32 nacl:64
-voidcall_reg: src1:i clob:c len:32 nacl:64
-voidcall_membase: src1:b clob:c len:32 nacl:64
+checkthis: src1:b len:5
+call: dest:a clob:c len:32
+voidcall: clob:c len:32
+voidcall_reg: src1:i clob:c len:32
+voidcall_membase: src1:b clob:c len:32
 fcall: dest:f len:64 clob:c
 fcall_reg: dest:f src1:i len:64 clob:c
 fcall_membase: dest:f src1:b len:64 clob:c
@@ -144,39 +138,39 @@ lcall_membase: dest:a src1:b len:64 clob:c
 vcall: len:64 clob:c
 vcall_reg: src1:i len:64 clob:c
 vcall_membase: src1:b len:64 clob:c
-call_reg: dest:a src1:i len:32 clob:c nacl:64
-call_membase: dest:a src1:b len:32 clob:c nacl:64
+call_reg: dest:a src1:i len:32 clob:c
+call_membase: dest:a src1:b len:32 clob:c
 iconst: dest:i len:10
 i8const: dest:i len:10
 r4const: dest:f len:14
 r8const: dest:f len:9
 store_membase_imm: dest:b len:15
-store_membase_reg: dest:b src1:i len:9 nacl:11
-storei8_membase_reg: dest:b src1:i len:9 nacl:11
-storei1_membase_imm: dest:b len:11 nacl:15
-storei1_membase_reg: dest:b src1:c len:9 nacl:11
-storei2_membase_imm: dest:b len:13 nacl:15
-storei2_membase_reg: dest:b src1:i len:9 nacl:11
-storei4_membase_imm: dest:b len:13 nacl:15
-storei4_membase_reg: dest:b src1:i len:9 nacl:11
+store_membase_reg: dest:b src1:i len:9
+storei8_membase_reg: dest:b src1:i len:9
+storei1_membase_imm: dest:b len:11
+storei1_membase_reg: dest:b src1:c len:9
+storei2_membase_imm: dest:b len:13
+storei2_membase_reg: dest:b src1:i len:9
+storei4_membase_imm: dest:b len:13
+storei4_membase_reg: dest:b src1:i len:9
 storei8_membase_imm: dest:b len:18
 storer4_membase_reg: dest:b src1:f len:15
 storer8_membase_reg: dest:b src1:f len:10
-load_membase: dest:i src1:b len:8 nacl:12
-loadi1_membase: dest:c src1:b len:9 nacl:12
-loadu1_membase: dest:c src1:b len:9 nacl:12
-loadi2_membase: dest:i src1:b len:9 nacl:12
-loadu2_membase: dest:i src1:b len:9 nacl:12
-loadi4_membase: dest:i src1:b len:9 nacl:12
-loadu4_membase: dest:i src1:b len:9 nacl:12
-loadi8_membase: dest:i src1:b len:18 nacl:14
+load_membase: dest:i src1:b len:8
+loadi1_membase: dest:c src1:b len:9
+loadu1_membase: dest:c src1:b len:9
+loadi2_membase: dest:i src1:b len:9
+loadu2_membase: dest:i src1:b len:9
+loadi4_membase: dest:i src1:b len:9
+loadu4_membase: dest:i src1:b len:9
+loadi8_membase: dest:i src1:b len:18
 loadr4_membase: dest:f src1:b len:16
 loadr8_membase: dest:f src1:b len:16
 loadu4_mem: dest:i len:10
 amd64_loadi8_memindex: dest:i src1:i src2:i len:10
 move: dest:i src1:i len:3
-add_imm: dest:i src1:i len:8 clob:1 nacl:11
-sub_imm: dest:i src1:i len:8 clob:1 nacl:11
+add_imm: dest:i src1:i len:8 clob:1
+sub_imm: dest:i src1:i len:8 clob:1
 mul_imm: dest:i src1:i len:12
 and_imm: dest:i src1:i len:8 clob:1
 or_imm: dest:i src1:i len:8 clob:1
@@ -294,7 +288,7 @@ move_f_to_i4: dest:i src1:f len:16
 move_i4_to_f: dest:f src1:i len:16
 move_f_to_i8: dest:i src1:f len:5
 move_i8_to_f: dest:f src1:i len:5
-call_handler: len:14 clob:c nacl:52
+call_handler: len:14 clob:c
 aot_const: dest:i len:10
 gc_safe_point: clob:c src1:i len:40
 x86_test_null: src1:i len:5
@@ -312,7 +306,7 @@ x86_push_imm: len:6
 x86_push_membase: src1:b len:8
 x86_push_obj: src1:b len:40
 x86_lea: dest:i src1:i src2:i len:8
-x86_lea_membase: dest:i src1:i len:11 nacl:14
+x86_lea_membase: dest:i src1:i len:11
 x86_xchg: src1:i src2:i clob:x len:2
 x86_fpop: src1:f len:3
 x86_seteq_membase: src1:b len:9
@@ -332,7 +326,7 @@ amd64_set_xmmreg_r4: dest:f src1:f len:14 clob:m
 amd64_set_xmmreg_r8: dest:f src1:f len:14 clob:m
 amd64_save_sp_to_lmf: len:16
 tls_get: dest:i len:32
-tls_get_reg: dest:i src1:i len:32
+tls_get_reg: dest:i src1:i len:64
 tls_set: src1:i len:16
 tls_set_reg: src1:i src2:i len:32
 atomic_add_i4: src1:b src2:i dest:i len:32
@@ -368,7 +362,7 @@ subcc: dest:i src1:i src2:i len:3 clob:1
 adc_imm: dest:i src1:i len:8 clob:1
 sbb: dest:i src1:i src2:i len:3 clob:1
 sbb_imm: dest:i src1:i len:8 clob:1
-br_reg: src1:i len:3 nacl:8
+br_reg: src1:i len:3
 sin: dest:f src1:f len:32
 cos: dest:f src1:f len:32
 abs: dest:f src1:f clob:1 len:32
@@ -383,8 +377,8 @@ laddcc: dest:i src1:i src2:i len:3 clob:1
 lsubcc: dest:i src1:i src2:i len:3 clob:1
 
 # 32 bit opcodes
-int_add: dest:i src1:i src2:i clob:1 len:4 nacl:7
-int_sub: dest:i src1:i src2:i clob:1 len:4 nacl:7
+int_add: dest:i src1:i src2:i clob:1 len:4
+int_sub: dest:i src1:i src2:i clob:1 len:4
 int_mul: dest:i src1:i src2:i clob:1 len:4
 int_mul_ovf: dest:i src1:i src2:i clob:1 len:32
 int_mul_ovf_un: dest:i src1:i src2:i clob:1 len:32
@@ -404,8 +398,8 @@ int_sbb: dest:i src1:i src2:i clob:1 len:4
 int_sbb_imm: dest:i src1:i clob:1 len:8
 int_addcc: dest:i src1:i src2:i clob:1 len:16
 int_subcc: dest:i src1:i src2:i clob:1 len:16
-int_add_imm: dest:i src1:i clob:1 len:8 nacl:10
-int_sub_imm: dest:i src1:i clob:1 len:8 nacl:10
+int_add_imm: dest:i src1:i clob:1 len:8
+int_sub_imm: dest:i src1:i clob:1 len:8
 int_mul_imm: dest:i src1:i clob:1 len:32
 int_div_imm: dest:a src1:i clob:d len:32
 int_div_un_imm: dest:a src1:i clob:d len:32
@@ -519,8 +513,8 @@ cmov_lgt_un: dest:i src1:i src2:i len:16 clob:1
 cmov_lle_un: dest:i src1:i src2:i len:16 clob:1
 cmov_llt_un: dest:i src1:i src2:i len:16 clob:1
 
-long_add_imm: dest:i src1:i clob:1 len:12 nacl:15
-long_sub_imm: dest:i src1:i clob:1 len:12 nacl:15
+long_add_imm: dest:i src1:i clob:1 len:12
+long_sub_imm: dest:i src1:i clob:1 len:12
 long_and_imm: dest:i src1:i clob:1 len:12
 long_or_imm: dest:i src1:i clob:1 len:12
 long_xor_imm: dest:i src1:i clob:1 len:12
@@ -567,7 +561,7 @@ vcall2: len:64 clob:c
 vcall2_reg: src1:i len:64 clob:c
 vcall2_membase: src1:b len:64 clob:c
 
-dyn_call: src1:i src2:i len:128 clob:c nacl:128
+dyn_call: src1:i src2:i len:192 clob:c
 
 localloc_imm: dest:i len:96
 
index 24694376aacce167ba9e25b15709d8863268d232..9be50f7ecb621080b5c6059a78ef3298e21dc326 100644 (file)
@@ -362,7 +362,7 @@ long_conv_to_ovf_i4_2: dest:i src1:i src2:i len:36
 vcall2: len:64 clob:c
 vcall2_reg: src1:i len:64 clob:c
 vcall2_membase: src1:b len:64 clob:c
-dyn_call: src1:i src2:i len:136 clob:c
+dyn_call: src1:i src2:i len:252 clob:c
 
 # This is different from the original JIT opcodes
 float_beq: len:32
index e9789f9461f375f76c0e242dff149d2dd0d6f68d..4afa31ecd47d6be7347e038a1e68522d2467cdce 100644 (file)
@@ -118,8 +118,8 @@ int_mul_ovf_un: dest:i src1:i src2:i len:16
 throw: src1:i len:13
 rethrow: src1:i len:13
 start_handler: len:16
-endfinally: len:16 nacl:21
-endfilter: src1:a len:16 nacl:21
+endfinally: len:16
+endfilter: src1:a len:16
 get_ex_obj: dest:a len:16
 
 ckfinite: dest:f src1:f len:32
@@ -136,18 +136,18 @@ oparglist: src1:b len:10
 checkthis: src1:b len:3
 voidcall: len:17 clob:c
 voidcall_reg: src1:i len:11 clob:c
-voidcall_membase: src1:b len:16 nacl:17 clob:c
+voidcall_membase: src1:b len:16 clob:c
 fcall: dest:f len:17 clob:c
 fcall_reg: dest:f src1:i len:11 clob:c
-fcall_membase: dest:f src1:b len:16 nacl:17 clob:c
+fcall_membase: dest:f src1:b len:16 clob:c
 lcall: dest:l len:17 clob:c
 lcall_reg: dest:l src1:i len:11 clob:c
-lcall_membase: dest:l src1:b len:16 nacl:17 clob:c
+lcall_membase: dest:l src1:b len:16 clob:c
 vcall: len:17 clob:c
 vcall_reg: src1:i len:11 clob:c
-vcall_membase: src1:b len:16 nacl:17 clob:c
-call_reg: dest:a src1:i len:11 nacl:14 clob:c
-call_membase: dest:a src1:b len:16 nacl:18 clob:c
+vcall_membase: src1:b len:16 clob:c
+call_reg: dest:a src1:i len:11 clob:c
+call_membase: dest:a src1:b len:16 clob:c
 iconst: dest:i len:5
 r4const: dest:f len:15
 r8const: dest:f len:16
@@ -291,7 +291,7 @@ subcc: dest:i src1:i src2:i len:2 clob:1
 adc_imm: dest:i src1:i len:6 clob:1
 sbb: dest:i src1:i src2:i len:2 clob:1
 sbb_imm: dest:i src1:i len:6 clob:1
-br_reg: src1:i len:2 nacl:5
+br_reg: src1:i len:2
 sin: dest:f src1:f len:6
 cos: dest:f src1:f len:6
 abs: dest:f src1:f len:2
@@ -423,7 +423,7 @@ loadu2_mem: dest:i len:9
 
 vcall2: len:17 clob:c
 vcall2_reg: src1:i len:11 clob:c
-vcall2_membase: src1:b len:16 nacl:17 clob:c
+vcall2_membase: src1:b len:16 clob:c
 
 localloc_imm: dest:i len:120
 
index 5b05e57c90e39af906a32a24d9f876a0e900d337..ece1fddf5e8044e456386d65d6d0ed7c212d1d0e 100644 (file)
@@ -1120,10 +1120,10 @@ socket_transport_recv (void *buf, int len)
        int total = 0;
        int fd = conn_fd;
        int flags = 0;
-       static gint32 last_keepalive;
-       gint32 msecs;
+       static gint64 last_keepalive;
+       gint64 msecs;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        do {
        again:
@@ -1149,7 +1149,7 @@ socket_transport_recv (void *buf, int len)
                }
        } while ((res > 0 && total < len) || (res == -1 && get_last_sock_error () == MONO_EINTR));
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return total;
 }
@@ -1173,9 +1173,9 @@ set_keepalive (void)
 static int
 socket_transport_accept (int socket_fd)
 {
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        conn_fd = accept (socket_fd, NULL, NULL);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (conn_fd == -1) {
                fprintf (stderr, "debugger-agent: Unable to listen on %d\n", socket_fd);
@@ -1191,13 +1191,13 @@ socket_transport_send (void *data, int len)
 {
        int res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        do {
                res = send (conn_fd, data, len, 0);
        } while (res == -1 && get_last_sock_error () == MONO_EINTR);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (res != len)
                return FALSE;
@@ -1316,9 +1316,9 @@ socket_transport_connect (const char *address)
                        FD_ZERO (&readfds);
                        FD_SET (sfd, &readfds);
 
-                       MONO_PREPARE_BLOCKING;
+                       MONO_ENTER_GC_SAFE;
                        res = select (sfd + 1, &readfds, NULL, NULL, &tv);
-                       MONO_FINISH_BLOCKING;
+                       MONO_EXIT_GC_SAFE;
 
                        if (res == 0) {
                                fprintf (stderr, "debugger-agent: Timed out waiting to connect.\n");
@@ -1345,16 +1345,16 @@ socket_transport_connect (const char *address)
                        if (sfd == -1)
                                continue;
 
-                       MONO_PREPARE_BLOCKING;
+                       MONO_ENTER_GC_SAFE;
                        res = connect (sfd, &sockaddr.addr, sock_len);
-                       MONO_FINISH_BLOCKING;
+                       MONO_EXIT_GC_SAFE;
 
                        if (res != -1)
                                break;       /* Success */
                        
-                       MONO_PREPARE_BLOCKING;
+                       MONO_ENTER_GC_SAFE;
                        close (sfd);
-                       MONO_FINISH_BLOCKING;
+                       MONO_EXIT_GC_SAFE;
                }
 
                if (rp == 0) {
@@ -1385,9 +1385,9 @@ socket_transport_close1 (void)
 #else
        shutdown (conn_fd, SHUT_RD);
        shutdown (listen_fd, SHUT_RDWR);
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        close (listen_fd);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 #endif
 }
 
@@ -1627,7 +1627,12 @@ stop_debugger_thread (void)
 static void
 start_debugger_thread (void)
 {
-       debugger_thread_handle = mono_threads_create_thread (debugger_thread, NULL, 0, 0, NULL);
+       MonoThreadParm tp;
+
+       tp.priority = 0;
+       tp.stack_size = 0;
+       tp.creation_flags = 0;
+       debugger_thread_handle = mono_threads_create_thread (debugger_thread, NULL, &tp, NULL);
        g_assert (debugger_thread_handle);
 }
 
@@ -1953,7 +1958,7 @@ get_objref (MonoObject *obj)
        int hash = 0;
 
        if (obj == NULL)
-               return 0;
+               return NULL;
 
        if (suspend_count) {
                /*
@@ -2028,7 +2033,10 @@ clear_suspended_objs (void)
 static inline int
 get_objid (MonoObject *obj)
 {
-       return get_objref (obj)->id;
+       if (!obj)
+               return 0;
+       else
+               return get_objref (obj)->id;
 }
 
 /*
@@ -2678,7 +2686,7 @@ notify_thread (gpointer key, gpointer value, gpointer user_data)
 
        DEBUG_PRINTF (1, "[%p] Interrupting %p...\n", (gpointer) (gsize) mono_native_thread_id_get (), (gpointer)tid);
 
-       /* This is _not_ equivalent to ves_icall_System_Threading_Thread_Abort () */
+       /* This is _not_ equivalent to mono_thread_internal_abort () */
        InterruptData interrupt_data = { 0 };
        interrupt_data.tls = tls;
 
@@ -3626,11 +3634,15 @@ process_event (EventKind event, gpointer arg, gint32 il_offset, MonoContext *ctx
 
                ecount ++;
 
-               if (!thread)
-                       thread = mono_thread_current ();
+               if (event == EVENT_KIND_VM_DEATH) {
+                       thread = NULL;
+               } else {
+                       if (!thread)
+                               thread = mono_thread_current ();
 
-               if (event == EVENT_KIND_VM_START && arg != NULL)
-                       thread = (MonoThread *)arg;
+                       if (event == EVENT_KIND_VM_START && arg != NULL)
+                               thread = (MonoThread *)arg;
+               }
 
                buffer_add_objid (&buf, (MonoObject*)thread); // thread
 
@@ -3792,7 +3804,7 @@ runtime_initialized (MonoProfiler *prof)
 static void
 runtime_shutdown (MonoProfiler *prof)
 {
-       process_profiler_event (EVENT_KIND_VM_DEATH, mono_thread_current ());
+       process_profiler_event (EVENT_KIND_VM_DEATH, NULL);
 
        mono_debugger_agent_cleanup ();
 }
@@ -4320,9 +4332,12 @@ set_bp_in_method (MonoDomain *domain, MonoMethod *method, MonoSeqPointInfo *seq_
 
        code = mono_jit_find_compiled_method_with_jit_info (domain, method, &ji);
        if (!code) {
+               MonoError oerror;
+
                /* Might be AOTed code */
-               code = mono_aot_get_method (domain, method);
+               code = mono_aot_get_method_checked (domain, method, &oerror);
                g_assert (code);
+               mono_error_assert_ok (&oerror);
                ji = mono_jit_info_table_find (domain, (char *)code);
                g_assert (ji);
        }
@@ -4505,6 +4520,18 @@ clear_breakpoints_for_domain (MonoDomain *domain)
        mono_loader_unlock ();
 }
 
+/*
+ * ss_calculate_framecount:
+ *
+ * Ensure DebuggerTlsData fields are filled out.
+ */
+static void ss_calculate_framecount (DebuggerTlsData *tls, MonoContext *ctx)
+{
+       if (!tls->context.valid)
+               mono_thread_state_init_from_monoctx (&tls->context, ctx);
+       compute_frame_info (tls->thread, tls);
+}
+
 /*
  * ss_update:
  *
@@ -4526,22 +4553,24 @@ ss_update (SingleStepReq *req, MonoJitInfo *ji, SeqPoint *sp, DebuggerTlsData *t
                return FALSE;
        }
 
-       if (req->depth == STEP_DEPTH_OVER && hit) {
-               if (!tls->context.valid)
-                       mono_thread_state_init_from_monoctx (&tls->context, ctx);
-               compute_frame_info (tls->thread, tls);
-               if (req->nframes && tls->frame_count && tls->frame_count > req->nframes) {
-                       /* Hit the breakpoint in a recursive call */
-                       DEBUG_PRINTF (1, "[%p] Breakpoint at lower frame while stepping over, continuing single stepping.\n", (gpointer) (gsize) mono_native_thread_id_get ());
+       if ((req->depth == STEP_DEPTH_OVER || req->depth == STEP_DEPTH_OUT) && hit) {
+               gboolean is_step_out = req->depth == STEP_DEPTH_OUT;
+
+               ss_calculate_framecount (tls, ctx);
+
+               // Because functions can call themselves recursively, we need to make sure we're stopping at the right stack depth.
+               // In case of step out, the target is the frame *enclosing* the one where the request was made.
+               int target_frames = req->nframes + (is_step_out ? -1 : 0);
+               if (req->nframes > 0 && tls->frame_count > 0 && tls->frame_count > target_frames) {
+                       /* Hit the breakpoint in a recursive call, don't halt */
+                       DEBUG_PRINTF (1, "[%p] Breakpoint at lower frame while stepping %s, continuing single stepping.\n", (gpointer) (gsize) mono_native_thread_id_get (), is_step_out ? "out" : "over");
                        return FALSE;
                }
        }
 
        if (req->depth == STEP_DEPTH_INTO && req->size == STEP_SIZE_MIN && (sp->flags & MONO_SEQ_POINT_FLAG_NONEMPTY_STACK) && ss_req->start_method){
                method = jinfo_get_method (ji);
-               if (!tls->context.valid)
-                       mono_thread_state_init_from_monoctx (&tls->context, ctx);
-               compute_frame_info (tls->thread, tls);
+               ss_calculate_framecount (tls, ctx);
                if (ss_req->start_method == method && req->nframes && tls->frame_count == req->nframes) {//Check also frame count(could be recursion)
                        DEBUG_PRINTF (1, "[%p] Seq point at nonempty stack %x while stepping in, continuing single stepping.\n", (gpointer) (gsize) mono_native_thread_id_get (), sp->il_offset);
                        return FALSE;
@@ -4563,8 +4592,11 @@ ss_update (SingleStepReq *req, MonoJitInfo *ji, SeqPoint *sp, DebuggerTlsData *t
                ss_req->last_method = method;
                hit = FALSE;
        } else if (loc && method == ss_req->last_method && loc->row == ss_req->last_line) {
-               DEBUG_PRINTF (1, "[%p] Same source line (%d), continuing single stepping.\n", (gpointer) (gsize) mono_native_thread_id_get (), loc->row);
-               hit = FALSE;
+               ss_calculate_framecount (tls, ctx);
+               if (tls->frame_count == req->nframes) { // If the frame has changed we're clearly not on the same source line.
+                       DEBUG_PRINTF (1, "[%p] Same source line (%d), continuing single stepping.\n", (gpointer) (gsize) mono_native_thread_id_get (), loc->row);
+                       hit = FALSE;
+               }
        }
                                
        if (loc) {
@@ -5070,6 +5102,85 @@ ss_stop (SingleStepReq *ss_req)
        }
 }
 
+/*
+ * ss_bp_is_unique:
+ *
+ * Reject breakpoint if it is a duplicate of one already in list or hash table.
+ */
+static gboolean
+ss_bp_is_unique (GSList *bps, GHashTable *ss_req_bp_cache, MonoMethod *method, guint32 il_offset)
+{
+       if (ss_req_bp_cache) {
+               MonoBreakpoint dummy = {method, il_offset, NULL, NULL};
+               return !g_hash_table_lookup (ss_req_bp_cache, &dummy);
+       }
+       for (GSList *l = bps; l; l = l->next) {
+               MonoBreakpoint *bp = (MonoBreakpoint *)l->data;
+               if (bp->method == method && bp->il_offset == il_offset)
+                       return FALSE;
+       }
+       return TRUE;
+}
+
+/*
+ * ss_bp_eq:
+ *
+ * GHashTable equality for a MonoBreakpoint (only care about method and il_offset fields)
+ */
+static gint
+ss_bp_eq (gconstpointer ka, gconstpointer kb)
+{
+       const MonoBreakpoint *s1 = (const MonoBreakpoint *)ka;
+       const MonoBreakpoint *s2 = (const MonoBreakpoint *)kb;
+       return (s1->method == s2->method && s1->il_offset == s2->il_offset) ? 1 : 0;
+}
+
+/*
+ * ss_bp_eq:
+ *
+ * GHashTable hash for a MonoBreakpoint (only care about method and il_offset fields)
+ */
+static guint
+ss_bp_hash (gconstpointer data)
+{
+       const MonoBreakpoint *s = (const MonoBreakpoint *)data;
+       guint hash = (guint) (uintptr_t) s->method;
+       hash ^= ((guint)s->il_offset) << 16; // Assume low bits are more interesting
+       hash ^= ((guint)s->il_offset) >> 16;
+       return hash;
+}
+
+#define MAX_LINEAR_SCAN_BPS 7
+
+/*
+ * ss_bp_add_one:
+ *
+ * Create a new breakpoint and add it to a step request.
+ * Will adjust the bp count and cache used by ss_start.
+ */
+static void
+ss_bp_add_one (SingleStepReq *ss_req, int *ss_req_bp_count, GHashTable **ss_req_bp_cache,
+                 MonoMethod *method, guint32 il_offset)
+{
+       // This list is getting too long, switch to using the hash table
+       if (!*ss_req_bp_cache && *ss_req_bp_count > MAX_LINEAR_SCAN_BPS) {
+               *ss_req_bp_cache = g_hash_table_new (ss_bp_hash, ss_bp_eq);
+               for (GSList *l = ss_req->bps; l; l = l->next)
+                       g_hash_table_insert (*ss_req_bp_cache, l->data, l->data);
+       }
+
+       if (ss_bp_is_unique (ss_req->bps, *ss_req_bp_cache, method, il_offset)) {
+               // Create and add breakpoint
+               MonoBreakpoint *bp = set_breakpoint (method, il_offset, ss_req->req, NULL);
+               ss_req->bps = g_slist_append (ss_req->bps, bp);
+               if (*ss_req_bp_cache)
+                       g_hash_table_insert (*ss_req_bp_cache, bp, bp);
+               (*ss_req_bp_count)++;
+       } else {
+               DEBUG_PRINTF (1, "[dbg] Candidate breakpoint at %s:[il=0x%x] is a duplicate for this step request, will not add.\n", mono_method_full_name (method, TRUE), (int)il_offset);
+       }
+}
+
 /*
  * ss_start:
  *
@@ -5086,11 +5197,15 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
        SeqPoint *next_sp, *parent_sp = NULL;
        SeqPoint local_sp, local_parent_sp;
        gboolean found_sp;
-       MonoBreakpoint *bp;
        MonoSeqPointInfo *parent_info;
        MonoMethod *parent_sp_method = NULL;
        gboolean enable_global = FALSE;
 
+       // When 8 or more entries are in bps, we build a hash table to serve as a set of breakpoints.
+       // Recreating this on each pass is a little wasteful but at least keeps behavior linear.
+       int ss_req_bp_count = g_slist_length (ss_req->bps);
+       GHashTable *ss_req_bp_cache = NULL;
+
        /* Stop the previous operation */
        ss_stop (ss_req);
 
@@ -5098,8 +5213,7 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
         * Implement single stepping using breakpoints if possible.
         */
        if (step_to_catch) {
-               bp = set_breakpoint (method, sp->il_offset, ss_req->req, NULL);
-               ss_req->bps = g_slist_append (ss_req->bps, bp);
+               ss_bp_add_one (ss_req, &ss_req_bp_count, &ss_req_bp_cache, method, sp->il_offset);
        } else {
                frame_index = 1;
 
@@ -5167,8 +5281,7 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
                        for (i = 0; i < sp->next_len; i++) {
                                next_sp = &next[i];
 
-                               bp = set_breakpoint (method, next_sp->il_offset, ss_req->req, NULL);
-                               ss_req->bps = g_slist_append (ss_req->bps, bp);
+                               ss_bp_add_one (ss_req, &ss_req_bp_count, &ss_req_bp_cache, method, next_sp->il_offset);
                        }
                        g_free (next);
                }
@@ -5180,8 +5293,7 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
                        for (i = 0; i < parent_sp->next_len; i++) {
                                next_sp = &next[i];
 
-                               bp = set_breakpoint (parent_sp_method, next_sp->il_offset, ss_req->req, NULL);
-                               ss_req->bps = g_slist_append (ss_req->bps, bp);
+                               ss_bp_add_one (ss_req, &ss_req_bp_count, &ss_req_bp_cache, parent_sp_method, next_sp->il_offset);
                        }
                        g_free (next);
                }
@@ -5212,10 +5324,8 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
 
                                                found_sp = mono_find_next_seq_point_for_native_offset (frame->domain, frame->method, (char*)ei->handler_start - (char*)jinfo->code_start, NULL, &local_sp);
                                                sp = (found_sp)? &local_sp : NULL;
-                                               if (sp) {
-                                                       bp = set_breakpoint (frame->method, sp->il_offset, ss_req->req, NULL);
-                                                       ss_req->bps = g_slist_append (ss_req->bps, bp);
-                                               }
+
+                                               ss_bp_add_one (ss_req, &ss_req_bp_count, &ss_req_bp_cache, frame->method, sp->il_offset);
                                        }
                                }
                        }
@@ -5245,6 +5355,9 @@ ss_start (SingleStepReq *ss_req, MonoMethod *method, SeqPoint* sp, MonoSeqPointI
        } else {
                ss_req->global = FALSE;
        }
+
+       if (ss_req_bp_cache)
+               g_hash_table_destroy (ss_req_bp_cache);
 }
 
 /*
@@ -5427,6 +5540,7 @@ ss_clear_for_assembly (SingleStepReq *req, MonoAssembly *assembly)
 void
 mono_debugger_agent_debug_log (int level, MonoString *category, MonoString *message)
 {
+       MonoError error;
        int suspend_policy;
        GSList *events;
        EventInfo ei;
@@ -5439,8 +5553,16 @@ mono_debugger_agent_debug_log (int level, MonoString *category, MonoString *mess
        mono_loader_unlock ();
 
        ei.level = level;
-       ei.category = category ? mono_string_to_utf8 (category) : NULL;
-       ei.message = message ? mono_string_to_utf8 (message) : NULL;
+       ei.category = NULL;
+       if (category) {
+               ei.category = mono_string_to_utf8_checked (category, &error);
+               mono_error_cleanup (&error);
+       }
+       ei.message = NULL;
+       if (message) {
+               ei.message = mono_string_to_utf8_checked (message, &error);
+               mono_error_cleanup  (&error);
+       }
 
        process_event (EVENT_KIND_USER_LOG, &ei, 0, NULL, events, suspend_policy);
 
@@ -6802,7 +6924,7 @@ invoke_method (void)
        /*
         * Take the loader lock to avoid race conditions with CMD_VM_ABORT_INVOKE:
         *
-        * It is possible that ves_icall_System_Threading_Thread_Abort () was called
+        * It is possible that mono_thread_internal_abort () was called
         * after the mono_runtime_invoke_checked() already returned, but it doesn't matter
         * because we reset the abort here.
         */
@@ -7114,7 +7236,7 @@ vm_commands (int command, int id, guint8 *p, guint8 *end, Buffer *buf)
 
                tls->abort_requested = TRUE;
 
-               ves_icall_System_Threading_Thread_Abort (THREAD_TO_INTERNAL (thread), NULL);
+               mono_thread_internal_abort (THREAD_TO_INTERNAL (thread));
                mono_loader_unlock ();
                break;
        }
@@ -7784,7 +7906,7 @@ field_commands (int command, guint8 *p, guint8 *end, Buffer *buf)
 static void
 buffer_add_cattr_arg (Buffer *buf, MonoType *t, MonoDomain *domain, MonoObject *val)
 {
-       if (val && val->vtable->klass == mono_defaults.monotype_class) {
+       if (val && val->vtable->klass == mono_defaults.runtimetype_class) {
                /* Special case these so the client doesn't have to handle Type objects */
                
                buffer_add_byte (buf, VALUE_TYPE_ID_TYPE);
@@ -8159,7 +8281,9 @@ type_commands_internal (int command, MonoClass *klass, MonoDomain *domain, guint
 
                        vtable = mono_class_vtable (domain, f->parent);
                        val = (guint8 *)g_malloc (mono_class_instance_size (mono_class_from_mono_type (f->type)));
-                       mono_field_static_get_value_for_thread (thread ? thread : mono_thread_internal_current (), vtable, f, val);
+                       mono_field_static_get_value_for_thread (thread ? thread : mono_thread_internal_current (), vtable, f, val, &error);
+                       if (!is_ok (&error))
+                               return ERR_INVALID_FIELDID;
                        buffer_add_value (buf, f->type, val, domain);
                        g_free (val);
                }
@@ -8664,13 +8788,15 @@ method_commands_internal (int command, MonoMethod *method, MonoDomain *domain, g
                // FIXME: Generics
                switch (mono_metadata_token_code (token)) {
                case MONO_TOKEN_STRING: {
+                       MonoError error;
                        MonoString *s;
                        char *s2;
 
-                       s = mono_ldstr (domain, method->klass->image, mono_metadata_token_index (token));
-                       g_assert (s);
+                       s = mono_ldstr_checked (domain, method->klass->image, mono_metadata_token_index (token), &error);
+                       mono_error_assert_ok (&error); /* FIXME don't swallow the error */
 
-                       s2 = mono_string_to_utf8 (s);
+                       s2 = mono_string_to_utf8_checked (s, &error);
+                       mono_error_assert_ok (&error);
 
                        buffer_add_byte (buf, TOKEN_TYPE_STRING);
                        buffer_add_string (buf, s2);
@@ -8678,6 +8804,7 @@ method_commands_internal (int command, MonoMethod *method, MonoDomain *domain, g
                        break;
                }
                default: {
+                       MonoError error;
                        gpointer val;
                        MonoClass *handle_class;
 
@@ -8691,7 +8818,6 @@ method_commands_internal (int command, MonoMethod *method, MonoDomain *domain, g
                                        break;
                                }
                        } else {
-                               MonoError error;
                                val = mono_ldtoken_checked (method->klass->image, token, &handle_class, NULL, &error);
                                if (!val)
                                        g_error ("Could not load token due to %s", mono_error_get_message (&error));
@@ -8712,7 +8838,8 @@ method_commands_internal (int command, MonoMethod *method, MonoDomain *domain, g
                        } else if (handle_class == mono_defaults.string_class) {
                                char *s;
 
-                               s = mono_string_to_utf8 ((MonoString *)val);
+                               s = mono_string_to_utf8_checked ((MonoString *)val, &error);
+                               mono_error_assert_ok (&error);
                                buffer_add_byte (buf, TOKEN_TYPE_STRING);
                                buffer_add_string (buf, s);
                                g_free (s);
@@ -9228,7 +9355,9 @@ string_commands (int command, guint8 *p, guint8 *end, Buffer *buf)
                        buffer_add_int (buf, mono_string_length (str) * 2);
                        buffer_add_data (buf, (guint8*)mono_string_chars (str), mono_string_length (str) * 2);
                } else {
-                       s = mono_string_to_utf8 (str);
+                       MonoError error;
+                       s = mono_string_to_utf8_checked (str, &error);
+                       mono_error_assert_ok (&error);
                        buffer_add_string (buf, s);
                        g_free (s);
                }
@@ -9324,7 +9453,11 @@ object_commands (int command, guint8 *p, guint8 *end, Buffer *buf)
                                g_assert (f->type->attrs & FIELD_ATTRIBUTE_STATIC);
                                vtable = mono_class_vtable (obj->vtable->domain, f->parent);
                                val = (guint8 *)g_malloc (mono_class_instance_size (mono_class_from_mono_type (f->type)));
-                               mono_field_static_get_value (vtable, f, val);
+                               mono_field_static_get_value_checked (vtable, f, val, &error);
+                               if (!is_ok (&error)) {
+                                       mono_error_cleanup (&error); /* FIXME report the error */
+                                       return ERR_INVALID_OBJECT;
+                               }
                                buffer_add_value (buf, f->type, val, obj->vtable->domain);
                                g_free (val);
                        } else {
@@ -9689,18 +9822,17 @@ debugger_thread (void *arg)
        ErrorCode err;
        gboolean no_reply;
        gboolean attach_failed = FALSE;
-       gpointer attach_cookie, attach_dummy;
 
        DEBUG_PRINTF (1, "[dbg] Agent thread started, pid=%p\n", (gpointer) (gsize) mono_native_thread_id_get ());
 
        debugger_thread_id = mono_native_thread_id_get ();
 
-       attach_cookie = mono_jit_thread_attach (mono_get_root_domain (), &attach_dummy);
-       MonoInternalThread *thread = mono_thread_internal_current ();
-       mono_thread_set_name_internal (thread, mono_string_new (mono_get_root_domain (), "Debugger agent"), TRUE, &error);
+       MonoThread *thread = mono_thread_attach (mono_get_root_domain ());
+       mono_thread_set_name_internal (thread->internal_thread, mono_string_new (mono_get_root_domain (), "Debugger agent"), TRUE, &error);
        mono_error_assert_ok (&error);
 
-       thread->flags |= MONO_THREAD_FLAG_DONT_MANAGE;
+       thread->internal_thread->state |= ThreadState_Background;
+       thread->internal_thread->flags |= MONO_THREAD_FLAG_DONT_MANAGE;
 
        mono_set_is_debugger_attached (TRUE);
        
@@ -9852,8 +9984,6 @@ debugger_thread (void *arg)
                start_debugger_thread ();
        }
 
-       mono_jit_thread_detach (attach_cookie, &attach_dummy);
-
        return 0;
 }
 
index 45849a824337eb2fd5dd7bb8d9eae312640afd27..0409cd7d78d0b20f7c73f59982a985442802ecfa 100644 (file)
@@ -1264,6 +1264,9 @@ mono_decompose_vtype_opts (MonoCompile *cfg)
                                case OP_STOREV_MEMBASE: {
                                        src_var = get_vreg_to_inst (cfg, ins->sreg1);
 
+                                       if (COMPILE_LLVM (cfg) && !mini_is_gsharedvt_klass (ins->klass) && !cfg->gen_write_barriers)
+                                               break;
+
                                        if (!src_var) {
                                                g_assert (ins->klass);
                                                src_var = mono_compile_create_var_for_vreg (cfg, &ins->klass->byval_arg, OP_LOCAL, ins->sreg1);
@@ -1922,9 +1925,9 @@ mono_local_emulate_ops (MonoCompile *cfg)
 
                                /* We emit the call on a separate dummy basic block */
                                cfg->cbb = mono_mempool_alloc0 ((cfg)->mempool, sizeof (MonoBasicBlock));
-                               first_bb = cfg->cbb;
+                               first_bb = cfg->cbb;
 
-                               call = mono_emit_jit_icall_by_info (cfg, info, args);
+                               call = mono_emit_jit_icall_by_info (cfg, bb->real_offset, info, args);
                                call->dreg = ins->dreg;
 
                                /* Replace ins with the emitted code and do the necessary bb linking */
index a955b44643373c24d61f2f2bb63f9fd2a49e1529..aba82d5ffcb99b4112210194768ec78050379d33 100644 (file)
@@ -124,9 +124,6 @@ opt_funcs [sizeof (int) * 8] = {
        NULL
 };
 
-#ifdef __native_client_codegen__
-extern gint8 nacl_align_byte;
-#endif
 #ifdef __native_client__
 extern char *nacl_mono_path;
 #endif
@@ -402,11 +399,14 @@ mini_regression_step (MonoImage *image, int verbose, int *total_run, int *total,
                                if (verbose >= 2)
                                        g_print ("Running '%s' ...\n", method->name);
 #ifdef MONO_USE_AOT_COMPILER
-                               if ((func = (TestMethod)mono_aot_get_method (mono_get_root_domain (), method)))
-                                       ;
-                               else
-#endif
+                               MonoError error;
+                               func = (TestMethod)mono_aot_get_method_checked (mono_get_root_domain (), method, &error);
+                               mono_error_cleanup (&error);
+                               if (!func)
+                                       func = (TestMethod)(gpointer)cfg->native_code;
+#else
                                        func = (TestMethod)(gpointer)cfg->native_code;
+#endif
                                func = (TestMethod)mono_create_ftnptr (mono_get_root_domain (), func);
                                result = func ();
                                if (result != expected) {
@@ -1026,10 +1026,10 @@ mono_jit_exec (MonoDomain *domain, MonoAssembly *assembly, int argc, char *argv[
        }
        
        if (mono_llvm_only) {
-               MonoObject *exc;
+               MonoObject *exc = NULL;
                int res;
 
-               res = mono_runtime_run_main (method, argc, argv, &exc);
+               res = mono_runtime_try_run_main (method, argc, argv, &exc);
                if (exc) {
                        mono_unhandled_exception (exc);
                        mono_invoke_unhandled_exception_hook (exc);
@@ -1037,7 +1037,13 @@ mono_jit_exec (MonoDomain *domain, MonoAssembly *assembly, int argc, char *argv[
                }
                return res;
        } else {
-               return mono_runtime_run_main (method, argc, argv, NULL);
+               int res = mono_runtime_run_main_checked (method, argc, argv, &error);
+               if (!is_ok (&error)) {
+                       MonoException *ex = mono_error_convert_to_exception (&error);
+                       if (ex)
+                               mono_unhandled_exception ((MonoObject*)ex);
+               }
+               return res;
        }
 }
 
@@ -1167,13 +1173,18 @@ load_agent (MonoDomain *domain, char *desc)
                return 1;
        }
        
-       g_free (agent);
 
        pa [0] = main_args;
        /* Pass NULL as 'exc' so unhandled exceptions abort the runtime */
        mono_runtime_invoke_checked (method, NULL, pa, &error);
-       mono_error_raise_exception (&error); /* FIXME don't raise here */
+       if (!is_ok (&error)) {
+               g_print ("The entry point method of assembly '%s' could not execute due to %s\n", agent, mono_error_get_message (&error));
+               mono_error_cleanup (&error);
+               g_free (agent);
+               return 1;
+       }
 
+       g_free (agent);
        return 0;
 }
 
@@ -1236,9 +1247,6 @@ mini_usage (void)
                "    --trace[=EXPR]         Enable tracing, use --help-trace for details\n"
                "    --jitmap               Output a jit method map to /tmp/perf-PID.map\n"
                "    --help-devel           Shows more options available to developers\n"
-#ifdef __native_client_codegen__
-               "    --nacl-align-mask-off  Turn off Native Client 32-byte alignment mask (for debug only)\n"
-#endif
                "\n"
                "Runtime:\n"
                "    --config FILE          Loads FILE as the Mono config\n"
@@ -1904,10 +1912,6 @@ mono_main (int argc, char* argv[])
 #endif
                } else if (strcmp (argv [i], "--nollvm") == 0){
                        mono_use_llvm = FALSE;
-#ifdef __native_client_codegen__
-               } else if (strcmp (argv [i], "--nacl-align-mask-off") == 0){
-                       nacl_align_byte = -1; /* 0xff */
-#endif
 #ifdef __native_client__
                } else if (strcmp (argv [i], "--nacl-mono-path") == 0){
                        nacl_mono_path = g_strdup(argv[++i]);
@@ -1922,17 +1926,13 @@ mono_main (int argc, char* argv[])
        }
 
 #ifdef __native_client_codegen__
-       if (g_getenv ("MONO_NACL_ALIGN_MASK_OFF"))
-       {
-               nacl_align_byte = -1; /* 0xff */
-       }
        if (!nacl_null_checks_off) {
                MonoDebugOptions *opt = mini_get_debug_options ();
                opt->explicit_null_checks = TRUE;
        }
 #endif
 
-#ifdef DISABLE_HW_TRAPS
+#if defined(DISABLE_HW_TRAPS) || defined(MONO_ARCH_DISABLE_HW_TRAPS)
        // Signal handlers not available
        {
                MonoDebugOptions *opt = mini_get_debug_options ();
@@ -1990,7 +1990,7 @@ mono_main (int argc, char* argv[])
         * We only set the native name of the thread since MS.NET leaves the
         * managed thread name for the main thread as null.
         */
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Main");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Main");
 
        if (enable_profile) {
                mono_profiler_load (profile_options);
index 973fa326105c25c0c958fbebcc45c54cef8a8573..919682acca6a9c5fb1d2d38456f16fabb01a9227 100644 (file)
@@ -175,10 +175,6 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        /* Restore all registers except %rip and %r11 */
        gregs_offset = MONO_STRUCT_OFFSET (MonoContext, gregs);
        for (i = 0; i < AMD64_NREG; ++i) {
-#if defined(__native_client_codegen__)
-               if (i == AMD64_R15)
-                       continue;
-#endif
                if (i != AMD64_RIP && i != AMD64_RSP && i != AMD64_R8 && i != AMD64_R9 && i != AMD64_R10 && i != AMD64_R11)
                        amd64_mov_reg_membase (code, i, AMD64_R11, gregs_offset + (i * 8), 8);
        }
@@ -198,8 +194,6 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        /* jump to the saved IP */
        amd64_jump_reg (code, AMD64_R11);
 
-       nacl_global_codeman_validate (&start, 256, &code);
-
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_EXCEPTION_HANDLING, NULL);
 
@@ -225,7 +219,7 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        guint32 pos;
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
-       const guint kMaxCodeSize = NACL_SIZE (128, 256);
+       const guint kMaxCodeSize = 128;
 
        start = code = (guint8 *)mono_global_codeman_reserve (kMaxCodeSize);
 
@@ -258,10 +252,6 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        amd64_mov_reg_membase (code, AMD64_RBP, AMD64_ARG_REG1, gregs_offset + (AMD64_RBP * 8), 8);
        /* load callee saved regs */
        for (i = 0; i < AMD64_NREG; ++i) {
-#if defined(__native_client_codegen__)
-               if (i == AMD64_R15)
-                       continue;
-#endif
                if (AMD64_IS_CALLEE_SAVED_REG (i) && i != AMD64_RBP)
                        amd64_mov_reg_membase (code, i, AMD64_ARG_REG1, gregs_offset + (i * 8), 8);
        }
@@ -287,8 +277,6 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
 
        g_assert ((code - start) < kMaxCodeSize);
 
-       nacl_global_codeman_validate(&start, kMaxCodeSize, &code);
-
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_EXCEPTION_HANDLING, NULL);
 
@@ -376,7 +364,7 @@ get_throw_trampoline (MonoTrampInfo **info, gboolean rethrow, gboolean corlib, g
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
        int i, stack_size, arg_offsets [16], ctx_offset, regs_offset, dummy_stack_space;
-       const guint kMaxCodeSize = NACL_SIZE (256, 512);
+       const guint kMaxCodeSize = 256;
 
 #ifdef TARGET_WIN32
        dummy_stack_space = 6 * sizeof(mgreg_t);        /* Windows expects stack space allocated for all 6 dummy args. */
@@ -465,7 +453,6 @@ get_throw_trampoline (MonoTrampInfo **info, gboolean rethrow, gboolean corlib, g
 
        g_assert ((code - start) < kMaxCodeSize);
 
-       nacl_global_codeman_validate(&start, kMaxCodeSize, &code);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_EXCEPTION_HANDLING, NULL);
 
        if (info)
@@ -1140,7 +1127,7 @@ mono_tasklets_arch_restore (void)
        static guint8* saved = NULL;
        guint8 *code, *start;
        int cont_reg = AMD64_R9; /* register usable on both call conventions */
-       const guint kMaxCodeSize = NACL_SIZE (64, 128);
+       const guint kMaxCodeSize = 64;
        
 
        if (saved)
@@ -1179,7 +1166,6 @@ mono_tasklets_arch_restore (void)
        amd64_jump_membase (code, cont_reg, MONO_STRUCT_OFFSET (MonoContinuation, return_ip));
        g_assert ((code - start) <= kMaxCodeSize);
 
-       nacl_global_codeman_validate(&start, kMaxCodeSize, &code);
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_EXCEPTION_HANDLING, NULL);
 
index 4c2b5ce821db200b5cbb1765ac463eb54cde8463..b036aa7a61f17f107c81766275f3162905d7f2fb 100644 (file)
@@ -111,6 +111,8 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        ARM_MOV_REG_REG (code, ARMREG_IP, ARMREG_SP);
        ARM_PUSH (code, MONO_ARM_REGSAVE_MASK);
 
+       ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 8);
+
        /* restore all the regs from ctx (in r0), but not sp, the stack pointer */
        ctx_reg = ARMREG_R0;
        ARM_LDR_IMM (code, ARMREG_IP, ctx_reg, MONO_STRUCT_OFFSET (MonoContext, pc));
@@ -121,6 +123,8 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
        ARM_MOV_REG_REG (code, ARMREG_PC, ARMREG_R1);
 
+       ARM_ADD_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 8);
+
        /* epilog */
        ARM_POP_NWB (code, 0xff0 | ((1 << ARMREG_SP) | (1 << ARMREG_PC)));
 
@@ -601,8 +605,6 @@ mono_arch_ip_from_context (void *sigctx)
 {
 #ifdef MONO_CROSS_COMPILE
        g_assert_not_reached ();
-#elif defined(__native_client__)
-       g_assert_not_reached ();
 #else
        arm_ucontext *my_uc = sigctx;
        return (void*) UCONTEXT_REG_PC (my_uc);
index df3c867f167982b16b16ecc6b59f99b9755ea459..d737bc7f7f0768ab51457bf6008fda554de519d0 100644 (file)
@@ -348,8 +348,6 @@ mono_arch_get_restore_context (MonoTrampInfo **info, gboolean aot)
        /* jump to the saved IP */
        x86_ret (code);
 
-       nacl_global_codeman_validate(&start, 128, &code);
-
        if (info)
                *info = mono_tramp_info_create ("restore_context", start, code - start, ji, unwind_ops);
        else {
@@ -380,7 +378,7 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        guint8 *code;
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
-       guint kMaxCodeSize = NACL_SIZE (64, 128);
+       guint kMaxCodeSize = 64;
 
        /* call_filter (MonoContext *ctx, unsigned long eip) */
        start = code = mono_global_codeman_reserve (kMaxCodeSize);
@@ -428,8 +426,6 @@ mono_arch_get_call_filter (MonoTrampInfo **info, gboolean aot)
        x86_leave (code);
        x86_ret (code);
 
-       nacl_global_codeman_validate(&start, kMaxCodeSize, &code);
-
        if (info)
                *info = mono_tramp_info_create ("call_filter", start, code - start, ji, unwind_ops);
        else {
@@ -544,7 +540,7 @@ get_throw_trampoline (const char *name, gboolean rethrow, gboolean llvm, gboolea
        int i, stack_size, stack_offset, arg_offsets [5], regs_offset;
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
-       guint kMaxCodeSize = NACL_SIZE (128, 256);
+       guint kMaxCodeSize = 128;
 
        start = code = mono_global_codeman_reserve (kMaxCodeSize);
 
@@ -654,8 +650,6 @@ get_throw_trampoline (const char *name, gboolean rethrow, gboolean llvm, gboolea
        }
        x86_breakpoint (code);
 
-       nacl_global_codeman_validate(&start, kMaxCodeSize, &code);
-
        g_assert ((code - start) < kMaxCodeSize);
 
        if (info)
@@ -895,7 +889,7 @@ mono_arch_unwind_frame (MonoDomain *domain, MonoJitTlsData *jit_tls,
 gpointer
 mono_arch_ip_from_context (void *sigctx)
 {
-#if defined(__native_client__) || defined(HOST_WATCHOS)
+#if defined(HOST_WATCHOS)
        printf("WARNING: mono_arch_ip_from_context() called!\n");
        return (NULL);
 #elif defined(MONO_ARCH_USE_SIGACTION)
@@ -1145,9 +1139,6 @@ mono_tasklets_arch_restore (void)
        static guint8* saved = NULL;
        guint8 *code, *start;
 
-#ifdef __native_client_codegen__
-       g_print("mono_tasklets_arch_restore needs to be aligned for Native Client\n");
-#endif
        if (saved)
                return (MonoContinuationRestore)saved;
        code = start = mono_global_codeman_reserve (48);
index 4992565ba0d162951515dee73e1177f56124f4f8..ab3bf8094a56e711648810e6ea8e7bfe3ea4c8dd 100644 (file)
@@ -372,22 +372,6 @@ bin_writer_emit_alignment (MonoImageWriter *acfg, int size)
        }
 }
 
-#ifdef __native_client_codegen__
-static void
-bin_writer_emit_nacl_call_alignment (MonoImageWriter *acfg) {
-  int offset = acfg->cur_section->cur_offset;
-  int padding = kNaClAlignment - (offset & kNaClAlignmentMask) - kNaClLengthOfCallImm;
-  guint8 padc = '\x90';
-
-  if (padding < 0) padding += kNaClAlignment;
-
-  while (padding > 0) {
-    bin_writer_emit_bytes(acfg, &padc, 1);
-    padding -= 1;
-  }
-}
-#endif  /* __native_client_codegen__ */
-
 static void
 bin_writer_emit_pointer_unaligned (MonoImageWriter *acfg, const char *target)
 {
@@ -1862,20 +1846,6 @@ asm_writer_emit_alignment_fill (MonoImageWriter *acfg, int size, int fill)
 }
 #endif
 
-#ifdef __native_client_codegen__
-static void
-asm_writer_emit_nacl_call_alignment (MonoImageWriter *acfg) {
-  int padding = kNaClAlignment - kNaClLengthOfCallImm;
-  guint8 padc = '\x90';
-
-  fprintf (acfg->fp, "\n\t.align %d", kNaClAlignment);
-  while (padding > 0) {
-    fprintf (acfg->fp, "\n\t.byte %d", padc);
-    padding -= 1;
-  }
-}
-#endif  /* __native_client_codegen__ */
-
 static void
 asm_writer_emit_pointer_unaligned (MonoImageWriter *acfg, const char *target)
 {
@@ -2182,20 +2152,6 @@ mono_img_writer_emit_alignment_fill (MonoImageWriter *acfg, int size, int fill)
 #endif
 }
 
-#ifdef __native_client_codegen__
-void
-mono_img_writer_emit_nacl_call_alignment (MonoImageWriter *acfg) {
-#ifdef USE_BIN_WRITER
-       if (acfg->use_bin_writer)
-               bin_writer_emit_nacl_call_alignment (acfg);
-       else
-               asm_writer_emit_nacl_call_alignment (acfg);
-#else
-       g_assert_not_reached();
-#endif
-}
-#endif  /* __native_client_codegen__ */
-
 void
 mono_img_writer_emit_pointer_unaligned (MonoImageWriter *acfg, const char *target)
 {
index 2af57cbe105d3e93fd8876e59a47fbdf16840694..cc8b5f3d556a2459ec8d45880352bc01e9bb67dc 100644 (file)
@@ -64,10 +64,6 @@ void mono_img_writer_emit_alignment (MonoImageWriter *w, int size);
 
 void mono_img_writer_emit_alignment_fill (MonoImageWriter *w, int size, int fill);
 
-#ifdef __native_client_codegen__
-void mono_img_writer_emit_nacl_call_alignment (MonoImageWriter *w);
-#endif
-
 void mono_img_writer_emit_pointer_unaligned (MonoImageWriter *w, const char *target);
 
 void mono_img_writer_emit_pointer (MonoImageWriter *w, const char *target);
index 8f7b81b30a217b43f87cf259b4fd02b59454e039..abfa1ffe73b3cf93737bc63885693e13034587f3 100644 (file)
@@ -262,7 +262,7 @@ alloc_dreg (MonoCompile *cfg, MonoStackType stack_type)
 
 #define NEW_LDSTRLITCONST(cfg,dest,val) NEW_AOTCONST ((cfg), (dest), MONO_PATCH_INFO_LDSTR_LIT, (val))
 
-#define NEW_TYPE_FROM_HANDLE_CONST(cfg,dest,image,token,generic_context) NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_TYPE_FROM_HANDLE, (image), (token), (generic_context), STACK_OBJ, mono_defaults.monotype_class)
+#define NEW_TYPE_FROM_HANDLE_CONST(cfg,dest,image,token,generic_context) NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_TYPE_FROM_HANDLE, (image), (token), (generic_context), STACK_OBJ, mono_defaults.runtimetype_class)
 
 #define NEW_LDTOKENCONST(cfg,dest,image,token,generic_context) NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_LDTOKEN, (image), (token), (generic_context), STACK_PTR, NULL)
 
@@ -448,7 +448,7 @@ handle_gsharedvt_ldaddr (MonoCompile *cfg)
 
 #define EMIT_NEW_LDSTRLITCONST(cfg,dest,val) do { NEW_AOTCONST ((cfg), (dest), MONO_PATCH_INFO_LDSTR_LIT, (val)); MONO_ADD_INS ((cfg)->cbb, (dest)); } while (0)
 
-#define EMIT_NEW_TYPE_FROM_HANDLE_CONST(cfg,dest,image,token,generic_context) do { NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_TYPE_FROM_HANDLE, (image), (token), (generic_context), STACK_OBJ, mono_defaults.monotype_class); MONO_ADD_INS ((cfg)->cbb, (dest)); } while (0)
+#define EMIT_NEW_TYPE_FROM_HANDLE_CONST(cfg,dest,image,token,generic_context) do { NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_TYPE_FROM_HANDLE, (image), (token), (generic_context), STACK_OBJ, mono_defaults.runtimetype_class); MONO_ADD_INS ((cfg)->cbb, (dest)); } while (0)
 
 #define EMIT_NEW_LDTOKENCONST(cfg,dest,image,token,generic_context) do { NEW_AOTCONST_TOKEN ((cfg), (dest), MONO_PATCH_INFO_LDTOKEN, (image), (token), (generic_context), STACK_PTR, NULL); MONO_ADD_INS ((cfg)->cbb, (dest)); } while (0)
 
index 6d87c74e92d01e1fb087a6f8c19e57dc65084c08..8651aa25ec497c574a6d492e6ae6e9b324be8e14 100644 (file)
@@ -19,6 +19,7 @@
 
 #include "jit-icalls.h"
 #include <mono/utils/mono-error-internals.h>
+#include <mono/metadata/exception-internals.h>
 #include <mono/metadata/threads-types.h>
 #include <mono/metadata/reflection-internals.h>
 
@@ -35,7 +36,8 @@ mono_ldftn (MonoMethod *method)
        if (mono_llvm_only) {
                // FIXME: No error handling
 
-               addr = mono_compile_method (method);
+               addr = mono_compile_method_checked (method, &error);
+               mono_error_assert_ok (&error);
                g_assert (addr);
 
                if (mono_method_needs_static_rgctx_invoke (method, FALSE))
@@ -1094,6 +1096,7 @@ mono_fmod(double a, double b)
 gpointer
 mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, gpointer *this_arg)
 {
+       MonoError error;
        MonoMethod *vmethod;
        gpointer addr;
        MonoGenericContext *context = mono_method_get_context (method);
@@ -1109,7 +1112,9 @@ mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, gpointe
        g_assert (!vmethod->klass->generic_class || !vmethod->klass->generic_class->context.class_inst->is_open);
        g_assert (!context->method_inst || !context->method_inst->is_open);
 
-       addr = mono_compile_method (vmethod);
+       addr = mono_compile_method_checked (vmethod, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
 
        addr = mini_add_method_trampoline (vmethod, addr, mono_method_needs_static_rgctx_invoke (vmethod, FALSE), FALSE);
 
@@ -1122,16 +1127,31 @@ mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, gpointe
        return addr;
 }
 
+MonoString*
+ves_icall_mono_ldstr (MonoDomain *domain, MonoImage *image, guint32 idx)
+{
+       MonoError error;
+       MonoString *result = mono_ldstr_checked (domain, image, idx, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
+}
+
 MonoString*
 mono_helper_ldstr (MonoImage *image, guint32 idx)
 {
-       return mono_ldstr (mono_domain_get (), image, idx);
+       MonoError error;
+       MonoString *result = mono_ldstr_checked (mono_domain_get (), image, idx, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 MonoString*
 mono_helper_ldstr_mscorlib (guint32 idx)
 {
-       return mono_ldstr (mono_domain_get (), mono_defaults.corlib, idx);
+       MonoError error;
+       MonoString *result = mono_ldstr_checked (mono_domain_get (), mono_defaults.corlib, idx, &error);
+       mono_error_set_pending_exception (&error);
+       return result;
 }
 
 MonoObject*
@@ -1170,13 +1190,21 @@ mono_create_corlib_exception_0 (guint32 token)
 MonoException *
 mono_create_corlib_exception_1 (guint32 token, MonoString *arg)
 {
-       return mono_exception_from_token_two_strings (mono_defaults.corlib, token, arg, NULL);
+       MonoError error;
+       MonoException *ret = mono_exception_from_token_two_strings_checked (
+               mono_defaults.corlib, token, arg, NULL, &error);
+       mono_error_set_pending_exception (&error);
+       return ret;
 }
 
 MonoException *
 mono_create_corlib_exception_2 (guint32 token, MonoString *arg1, MonoString *arg2)
 {
-       return mono_exception_from_token_two_strings (mono_defaults.corlib, token, arg1, arg2);
+       MonoError error;
+       MonoException *ret = mono_exception_from_token_two_strings_checked (
+               mono_defaults.corlib, token, arg1, arg2, &error);
+       mono_error_set_pending_exception (&error);
+       return ret;
 }
 
 MonoObject*
@@ -1283,6 +1311,7 @@ mono_object_isinst_with_cache (MonoObject *obj, MonoClass *klass, gpointer *cach
 gpointer
 mono_get_native_calli_wrapper (MonoImage *image, MonoMethodSignature *sig, gpointer func)
 {
+       MonoError error;
        MonoMarshalSpec **mspecs;
        MonoMethodPInvoke piinfo;
        MonoMethod *m;
@@ -1292,7 +1321,9 @@ mono_get_native_calli_wrapper (MonoImage *image, MonoMethodSignature *sig, gpoin
 
        m = mono_marshal_get_native_func_wrapper (image, sig, &piinfo, mspecs, func);
 
-       return mono_compile_method (m);
+       gpointer compiled_ptr = mono_compile_method_checked (m, &error);
+       mono_error_set_pending_exception (&error);
+       return compiled_ptr;
 }
 
 static MonoMethod*
@@ -1420,6 +1451,14 @@ mono_generic_class_init (MonoVTable *vtable)
        mono_error_set_pending_exception (&error);
 }
 
+void
+ves_icall_mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr)
+{
+       MonoError error;
+       mono_delegate_ctor (this_obj, target, addr, &error);
+       mono_error_set_pending_exception (&error);
+}
+
 gpointer
 mono_fill_class_rgctx (MonoVTable *vtable, int index)
 {
@@ -1457,7 +1496,7 @@ mono_fill_method_rgctx (MonoMethodRuntimeGenericContext *mrgctx, int index)
  * out parameter.
  */
 static gpointer
-resolve_iface_call (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method, gpointer *out_arg, gboolean caller_gsharedvt)
+resolve_iface_call (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method, gpointer *out_arg, gboolean caller_gsharedvt, MonoError *error)
 {
        MonoVTable *vt;
        gpointer *imt, *vtable_slot;
@@ -1465,6 +1504,7 @@ resolve_iface_call (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method,
        gpointer addr, compiled_method, aot_addr;
        gboolean need_rgctx_tramp = FALSE, need_unbox_tramp = FALSE;
 
+       mono_error_init (error);
        if (!this_obj)
                /* The caller will handle it */
                return NULL;
@@ -1472,10 +1512,12 @@ resolve_iface_call (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method,
        vt = this_obj->vtable;
        imt = (gpointer*)vt - MONO_IMT_SIZE;
 
-       vtable_slot = mini_resolve_imt_method (vt, imt + imt_slot, imt_method, &impl_method, &aot_addr, &need_rgctx_tramp, &variant_iface);
+       vtable_slot = mini_resolve_imt_method (vt, imt + imt_slot, imt_method, &impl_method, &aot_addr, &need_rgctx_tramp, &variant_iface, error);
+       return_val_if_nok (error, NULL);
 
        // FIXME: This can throw exceptions
-       addr = compiled_method = mono_compile_method (impl_method);
+       addr = compiled_method = mono_compile_method_checked (impl_method, error);
+       mono_error_assert_ok (error);
        g_assert (addr);
 
        if (imt_method->is_inflated && ((MonoMethodInflated*)imt_method)->context.method_inst)
@@ -1505,7 +1547,13 @@ resolve_iface_call (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method,
 gpointer
 mono_resolve_iface_call_gsharedvt (MonoObject *this_obj, int imt_slot, MonoMethod *imt_method, gpointer *out_arg)
 {
-       return resolve_iface_call (this_obj, imt_slot, imt_method, out_arg, TRUE);
+       MonoError error;
+       gpointer res = resolve_iface_call (this_obj, imt_slot, imt_method, out_arg, TRUE, &error);
+       if (!is_ok (&error)) {
+               MonoException *ex = mono_error_convert_to_exception (&error);
+               mono_llvm_throw_exception ((MonoObject*)ex);
+       }
+       return res;
 }
 
 static gboolean
@@ -1534,23 +1582,24 @@ is_generic_method_definition (MonoMethod *m)
  * out parameter.
  */
 static gpointer
-resolve_vcall (MonoVTable *vt, int slot, MonoMethod *imt_method, gpointer *out_arg, gboolean gsharedvt)
+resolve_vcall (MonoVTable *vt, int slot, MonoMethod *imt_method, gpointer *out_arg, gboolean gsharedvt, MonoError *error)
 {
        MonoMethod *m, *generic_virtual = NULL;
        gpointer addr, compiled_method;
        gboolean need_unbox_tramp = FALSE;
 
+       mono_error_init (error);
        /* Same as in common_call_trampoline () */
 
        /* Avoid loading metadata or creating a generic vtable if possible */
-       addr = mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, slot);
+       addr = mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, slot, error);
+       return_val_if_nok (error, NULL);
        if (addr && !vt->klass->valuetype)
                return mono_create_ftnptr (mono_domain_get (), addr);
 
        m = mono_class_get_vtable_entry (vt->klass, slot);
 
        if (is_generic_method_definition (m)) {
-               MonoError error;
                MonoGenericContext context = { NULL, NULL };
                MonoMethod *declaring;
 
@@ -1569,8 +1618,8 @@ resolve_vcall (MonoVTable *vt, int slot, MonoMethod *imt_method, gpointer *out_a
                g_assert (generic_virtual->is_inflated);
                context.method_inst = ((MonoMethodInflated*)generic_virtual)->context.method_inst;
 
-               m = mono_class_inflate_generic_method_checked (declaring, &context, &error);
-               g_assert (mono_error_ok (&error)); /* FIXME don't swallow the error */
+               m = mono_class_inflate_generic_method_checked (declaring, &context, error);
+               mono_error_assert_ok (error); /* FIXME don't swallow the error */
        }
 
        if (generic_virtual) {
@@ -1582,7 +1631,8 @@ resolve_vcall (MonoVTable *vt, int slot, MonoMethod *imt_method, gpointer *out_a
        }
 
        // FIXME: This can throw exceptions
-       addr = compiled_method = mono_compile_method (m);
+       addr = compiled_method = mono_compile_method_checked (m, error);
+       mono_error_assert_ok (error);
        g_assert (addr);
 
        addr = mini_add_method_wrappers_llvmonly (m, addr, gsharedvt, need_unbox_tramp, out_arg);
@@ -1604,7 +1654,13 @@ mono_resolve_vcall_gsharedvt (MonoObject *this_obj, int slot, MonoMethod *imt_me
 {
        g_assert (this_obj);
 
-       return resolve_vcall (this_obj->vtable, slot, imt_method, out_arg, TRUE);
+       MonoError error;
+       gpointer result = resolve_vcall (this_obj->vtable, slot, imt_method, out_arg, TRUE, &error);
+       if (!is_ok (&error)) {
+               MonoException *ex = mono_error_convert_to_exception (&error);
+               mono_llvm_throw_exception ((MonoObject*)ex);
+       }
+       return result;
 }
 
 /*
@@ -1648,7 +1704,8 @@ mono_resolve_generic_virtual_call (MonoVTable *vt, int slot, MonoMethod *generic
                need_unbox_tramp = TRUE;
 
        // FIXME: This can throw exceptions
-       addr = compiled_method = mono_compile_method (m);
+       addr = compiled_method = mono_compile_method_checked (m, &error);
+       mono_error_assert_ok (&error);
        g_assert (addr);
 
        addr = mini_add_method_wrappers_llvmonly (m, addr, FALSE, need_unbox_tramp, &arg);
@@ -1675,6 +1732,7 @@ mono_resolve_generic_virtual_call (MonoVTable *vt, int slot, MonoMethod *generic
 MonoFtnDesc*
 mono_resolve_generic_virtual_iface_call (MonoVTable *vt, int imt_slot, MonoMethod *generic_virtual)
 {
+       MonoError error;
        MonoMethod *m, *variant_iface;
        gpointer addr, aot_addr, compiled_method;
        gboolean need_unbox_tramp = FALSE;
@@ -1684,13 +1742,18 @@ mono_resolve_generic_virtual_iface_call (MonoVTable *vt, int imt_slot, MonoMetho
 
        imt = (gpointer*)vt - MONO_IMT_SIZE;
 
-       mini_resolve_imt_method (vt, imt + imt_slot, generic_virtual, &m, &aot_addr, &need_rgctx_tramp, &variant_iface);
+       mini_resolve_imt_method (vt, imt + imt_slot, generic_virtual, &m, &aot_addr, &need_rgctx_tramp, &variant_iface, &error);
+       if (!is_ok (&error)) {
+               MonoException *ex = mono_error_convert_to_exception (&error);
+               mono_llvm_throw_exception ((MonoObject*)ex);
+       }
 
        if (vt->klass->valuetype)
                need_unbox_tramp = TRUE;
 
        // FIXME: This can throw exceptions
-       addr = compiled_method = mono_compile_method (m);
+       addr = compiled_method = mono_compile_method_checked (m, &error);
+       mono_error_assert_ok (&error);
        g_assert (addr);
 
        addr = mini_add_method_wrappers_llvmonly (m, addr, FALSE, need_unbox_tramp, &arg);
@@ -1717,11 +1780,14 @@ mono_resolve_generic_virtual_iface_call (MonoVTable *vt, int imt_slot, MonoMetho
 gpointer
 mono_init_vtable_slot (MonoVTable *vtable, int slot)
 {
+       MonoError error;
        gpointer arg = NULL;
        gpointer addr;
        gpointer *ftnptr;
 
-       addr = resolve_vcall (vtable, slot, NULL, &arg, FALSE);
+       addr = resolve_vcall (vtable, slot, NULL, &arg, FALSE, &error);
+       if (mono_error_set_pending_exception (&error))
+               return NULL;
        ftnptr = mono_domain_alloc0 (vtable->domain, 2 * sizeof (gpointer));
        ftnptr [0] = addr;
        ftnptr [1] = arg;
@@ -1741,6 +1807,7 @@ mono_init_vtable_slot (MonoVTable *vtable, int slot)
 void
 mono_llvmonly_init_delegate (MonoDelegate *del)
 {
+       MonoError error;
        MonoFtnDesc *ftndesc = *(MonoFtnDesc**)del->method_code;
 
        /*
@@ -1749,7 +1816,9 @@ mono_llvmonly_init_delegate (MonoDelegate *del)
         * but we don't have a a structure which could own its memory.
         */
        if (G_UNLIKELY (!ftndesc)) {
-               gpointer addr = mono_compile_method (del->method);
+               gpointer addr = mono_compile_method_checked (del->method, &error);
+               if (mono_error_set_pending_exception (&error))
+                       return;
 
                if (del->method->klass->valuetype && mono_method_signature (del->method)->hasthis)
                    addr = mono_aot_get_unbox_trampoline (del->method);
@@ -1767,12 +1836,16 @@ mono_llvmonly_init_delegate (MonoDelegate *del)
 void
 mono_llvmonly_init_delegate_virtual (MonoDelegate *del, MonoObject *target, MonoMethod *method)
 {
+       MonoError error;
+
        g_assert (target);
 
        method = mono_object_get_virtual_method (target, method);
 
        del->method = method;
-       del->method_ptr = mono_compile_method (method);
+       del->method_ptr = mono_compile_method_checked (method, &error);
+       if (mono_error_set_pending_exception (&error))
+               return;
        if (method->klass->valuetype)
                del->method_ptr = mono_aot_get_unbox_trampoline (method);
        del->extra_arg = mini_get_delegate_arg (del->method, del->method_ptr);
@@ -1825,3 +1898,17 @@ mono_interruption_checkpoint_from_trampoline (void)
        if (ex)
                mono_raise_exception (ex);
 }
+
+void
+mono_throw_method_access (MonoMethod *callee, MonoMethod *caller)
+{
+       char *callee_name = mono_method_full_name (callee, 1);
+       char *caller_name = mono_method_full_name (caller, 1);
+       MonoError error;
+
+       mono_error_init (&error);
+       mono_error_set_generic_error (&error, "System", "MethodAccessException", "Method `%s' is inaccessible from method `%s'\n", callee_name, caller_name);
+       mono_error_set_pending_exception (&error);
+       g_free (callee_name);
+       g_free (caller_name);
+}
index d6f560b8553076bf053bbd828ac48aef10b5090d..319ec902a013c47aaac095493c859aee047d2149 100644 (file)
@@ -101,6 +101,9 @@ double mono_fmod(double a, double b);
 
 gpointer mono_helper_compile_generic_method (MonoObject *obj, MonoMethod *method, gpointer *this_arg);
 
+MonoString*
+ves_icall_mono_ldstr (MonoDomain *domain, MonoImage *image, guint32 idx);
+
 MonoString *mono_helper_ldstr (MonoImage *image, guint32 idx);
 
 MonoString *mono_helper_ldstr_mscorlib (guint32 idx);
@@ -189,7 +192,8 @@ ves_icall_runtime_class_init (MonoVTable *vtable);
 void
 mono_generic_class_init (MonoVTable *vtable);
 
-void mono_interruption_checkpoint_from_trampoline (void);
+void
+ves_icall_mono_delegate_ctor (MonoObject *this_obj, MonoObject *target, gpointer addr);
 
 MonoObject*
 mono_gsharedvt_constrained_call (gpointer mp, MonoMethod *cmethod, MonoClass *klass, gboolean deref_arg, gpointer *args);
@@ -220,4 +224,6 @@ MonoObject* mono_get_method_object (MonoMethod *method);
 
 double mono_ckfinite (double d);
 
+void mono_throw_method_access (MonoMethod *callee, MonoMethod *caller);
+
 #endif /* __MONO_JIT_ICALLS_H__ */
index f2dc914e374aaf959ca6cbb97336efe5bb72ab6c..ed5eca5248beb4e1d7bff51a183720e7cc3e2498 100644 (file)
@@ -88,7 +88,7 @@ MONO_API char*       mono_get_runtime_build_info    (void);
 MONO_API MonoJitInfo *
 mono_get_jit_info_from_method (MonoDomain *domain, MonoMethod *method);
 
-MONO_API void *
+MONO_API MONO_RT_EXTERNAL_ONLY void *
 mono_aot_get_method (MonoDomain *domain, MonoMethod *method);
 
 MONO_END_DECLS
index 32cd496f30f19b43817bfef49cfe95f27a2d5a08..a35a7a39f21405c92b2b9602205116099f4b7852 100644 (file)
@@ -183,6 +183,8 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
        }
 #if SIZEOF_REGISTER == 4
        case OP_LSHR_IMM: {
+               if (COMPILE_LLVM (cfg))
+                       break;
                if (ins->inst_c1 == 32) {
                        MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, MONO_LVREG_LS (ins->dreg), MONO_LVREG_MS (ins->sreg1));
                        MONO_EMIT_NEW_BIALU_IMM (cfg, OP_ISHR_IMM, MONO_LVREG_MS (ins->dreg), MONO_LVREG_MS (ins->sreg1), 31);
@@ -203,6 +205,8 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
                break;
        }
        case OP_LSHR_UN_IMM: {
+               if (COMPILE_LLVM (cfg))
+                       break;
                if (ins->inst_c1 == 32) {
                        MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, MONO_LVREG_LS (ins->dreg), MONO_LVREG_MS (ins->sreg1));
                        MONO_EMIT_NEW_ICONST (cfg, MONO_LVREG_MS (ins->dreg), 0);
@@ -223,6 +227,8 @@ mono_strength_reduction_ins (MonoCompile *cfg, MonoInst *ins, const char **spec)
                break;
        }
        case OP_LSHL_IMM: {
+               if (COMPILE_LLVM (cfg))
+                       break;
                if (ins->inst_c1 == 32) {
                        /* just move the lower half to the upper and zero the lower word */
                        MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, MONO_LVREG_MS (ins->dreg), MONO_LVREG_LS (ins->sreg1));
@@ -549,13 +555,13 @@ mono_local_cprop (MonoCompile *cfg)
                                        ins->inst_destbasereg = def->sreg1;
                                        ins->inst_offset += def->inst_imm;
                                }
+
+                               if (!MONO_IS_STORE_MEMBASE (ins) && !vreg_is_volatile (cfg, ins->dreg)) {
+                                       defs [ins->dreg] = ins;
+                                       def_index [ins->dreg] = ins_index;
+                               }
                        }
                        
-                       if ((spec [MONO_INST_DEST] != ' ') && !MONO_IS_STORE_MEMBASE (ins) && !vreg_is_volatile (cfg, ins->dreg)) {
-                               defs [ins->dreg] = ins;
-                               def_index [ins->dreg] = ins_index;
-                       }
-
                        if (MONO_IS_CALL (ins))
                                last_call_index = ins_index;
 
index de8ab61e3d5b64550e733981fcce690c013d7860..241e6f57e59772d39287fe0b22cb5c2326ce0925 100644 (file)
@@ -52,7 +52,7 @@ probe_embedded (const char *program, int *ref_argc, char **ref_argv [])
        int fd = open (program, O_RDONLY);
        if (fd == -1)
                return FALSE;
-       if ((sigstart = lseek (fd, -(16+sizeof(uint64_t)), SEEK_END)) == -1)
+       if ((sigstart = lseek (fd, -24, SEEK_END)) == -1)
                goto doclose;
        if (read (fd, sigbuffer, sizeof (sigbuffer)) == -1)
                goto doclose;
@@ -100,17 +100,17 @@ probe_embedded (const char *program, int *ref_argc, char **ref_argv [])
                        if (entry_point == NULL)
                                entry_point = aname;
                } else if (strncmp (kind, "config:", strlen ("config:")) == 0){
-                       printf ("c-Found: %s %llx\n", kind, offset);
+                       printf ("c-Found: %s %llx\n", kind, (long long)offset);
                        char *config = kind + strlen ("config:");
                        char *aname = g_strdup (config);
                        aname [strlen(aname)-strlen(".config")] = 0;
                        mono_register_config_for_assembly (aname, config);
                } else if (strncmp (kind, "system_config:", strlen ("system_config:")) == 0){
-                       printf ("TODO s-Found: %s %llx\n", kind, offset);
+                       printf ("TODO s-Found: %s %llx\n", kind, (long long)offset);
                } else if (strncmp (kind, "options:", strlen ("options:")) == 0){
                        mono_parse_options_from (kind + strlen("options:"), ref_argc, ref_argv);
                } else if (strncmp (kind, "config_dir:", strlen ("config_dir:")) == 0){
-                       printf ("TODO Found: %s %llx\n", kind, offset);
+                       printf ("TODO Found: %s %llx\n", kind, (long long)offset);
                } else {
                        fprintf (stderr, "Unknown stream on embedded package: %s\n", kind);
                        exit (1);
index b677b3ad6adee8e3fa01ce0af5e0cc0e64fb7254..3476585c10751c5d1e3f42fda8cb3990e1f7af3c 100644 (file)
@@ -64,6 +64,7 @@
 #include <mono/utils/mono-error-internals.h>
 #include <mono/metadata/mono-basic-block.h>
 #include <mono/metadata/reflection-internals.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include "trace.h"
 
                if (cfg->exception_type != MONO_EXCEPTION_NONE) \
                        goto exception_exit;                                            \
        } while (0)
-#define METHOD_ACCESS_FAILURE(method, cmethod) do {                    \
-               method_access_failure ((cfg), (method), (cmethod));                     \
-               goto exception_exit;                                                                            \
-       } while (0)
 #define FIELD_ACCESS_FAILURE(method, field) do {                                       \
                field_access_failure ((cfg), (method), (field));                        \
                goto exception_exit;    \
@@ -377,17 +374,6 @@ break_on_unverified (void)
                G_BREAKPOINT ();
 }
 
-static MONO_NEVER_INLINE void
-method_access_failure (MonoCompile *cfg, MonoMethod *method, MonoMethod *cil_method)
-{
-       char *method_fname = mono_method_full_name (method, TRUE);
-       char *cil_method_fname = mono_method_full_name (cil_method, TRUE);
-       mono_cfg_set_exception (cfg, MONO_EXCEPTION_MONO_ERROR);
-       mono_error_set_generic_error (&cfg->error, "System", "MethodAccessException", "Method `%s' is inaccessible from method `%s'\n", cil_method_fname, method_fname);
-       g_free (method_fname);
-       g_free (cil_method_fname);
-}
-
 static MONO_NEVER_INLINE void
 field_access_failure (MonoCompile *cfg, MonoMethod *method, MonoClassField *field)
 {
@@ -3068,7 +3054,7 @@ direct_icalls_enabled (MonoCompile *cfg)
 {
        /* LLVM on amd64 can't handle calls to non-32 bit addresses */
 #ifdef TARGET_AMD64
-       if (cfg->compile_llvm)
+       if (cfg->compile_llvm && !cfg->llvm_only)
                return FALSE;
 #endif
        if (cfg->gen_sdb_seq_points || cfg->disable_direct_icalls)
@@ -3077,7 +3063,7 @@ direct_icalls_enabled (MonoCompile *cfg)
 }
 
 MonoInst*
-mono_emit_jit_icall_by_info (MonoCompile *cfg, MonoJitICallInfo *info, MonoInst **args)
+mono_emit_jit_icall_by_info (MonoCompile *cfg, int il_offset, MonoJitICallInfo *info, MonoInst **args)
 {
        /*
         * Call the jit icall without a wrapper if possible.
@@ -3104,7 +3090,7 @@ mono_emit_jit_icall_by_info (MonoCompile *cfg, MonoJitICallInfo *info, MonoInst
                 * an exception check.
                 */
                costs = inline_method (cfg, info->wrapper_method, NULL,
-                                                          args, NULL, cfg->real_offset, TRUE);
+                                                          args, NULL, il_offset, TRUE);
                g_assert (costs > 0);
                g_assert (!MONO_TYPE_IS_VOID (info->sig->ret));
 
@@ -3156,6 +3142,18 @@ mono_emit_widen_call_res (MonoCompile *cfg, MonoInst *ins, MonoMethodSignature *
        return ins;
 }
 
+
+static void
+emit_method_access_failure (MonoCompile *cfg, MonoMethod *method, MonoMethod *cil_method)
+{
+       MonoInst *args [16];
+
+       args [0] = emit_get_rgctx_method (cfg, mono_method_check_context_used (method), method, MONO_RGCTX_INFO_METHOD);
+       args [1] = emit_get_rgctx_method (cfg, mono_method_check_context_used (cil_method), cil_method, MONO_RGCTX_INFO_METHOD);
+
+       mono_emit_jit_icall (cfg, mono_throw_method_access, args);
+}
+
 static MonoMethod*
 get_memcpy_method (void)
 {
@@ -4472,14 +4470,19 @@ icall_is_direct_callable (MonoCompile *cfg, MonoMethod *cmethod)
 
 #define is_complex_isinst(klass) ((klass->flags & TYPE_ATTRIBUTE_INTERFACE) || klass->rank || mono_class_is_nullable (klass) || mono_class_is_marshalbyref (klass) || (klass->flags & TYPE_ATTRIBUTE_SEALED) || klass->byval_arg.type == MONO_TYPE_VAR || klass->byval_arg.type == MONO_TYPE_MVAR)
 
+static MonoInst*
+emit_isinst_with_cache (MonoCompile *cfg, MonoClass *klass, MonoInst **args)
+{
+       MonoMethod *mono_isinst = mono_marshal_get_isinst_with_cache ();
+       return mono_emit_method_call (cfg, mono_isinst, args, NULL);
+}
+
 static MonoInst*
 emit_castclass_with_cache (MonoCompile *cfg, MonoClass *klass, MonoInst **args)
 {
-       MonoMethod *mono_castclass;
+       MonoMethod *mono_castclass = mono_marshal_get_castclass_with_cache ();
        MonoInst *res;
 
-       mono_castclass = mono_marshal_get_castclass_with_cache ();
-
        save_cast_details (cfg, klass, args [0]->dreg, TRUE);
        res = mono_emit_method_call (cfg, mono_castclass, args, NULL);
        reset_cast_details (cfg);
@@ -4495,6 +4498,22 @@ get_castclass_cache_idx (MonoCompile *cfg)
        return (cfg->method_index << 16) | cfg->castclass_cache_index;
 }
 
+
+static MonoInst*
+emit_isinst_with_cache_nonshared (MonoCompile *cfg, MonoInst *obj, MonoClass *klass)
+{
+       MonoInst *args [3];
+       int idx;
+
+       args [0] = obj; /* obj */
+       EMIT_NEW_CLASSCONST (cfg, args [1], klass); /* klass */
+
+       idx = get_castclass_cache_idx (cfg); /* inline cache*/
+       args [2] = emit_runtime_constant (cfg, MONO_PATCH_INFO_CASTCLASS_CACHE, GINT_TO_POINTER (idx));
+
+       return emit_isinst_with_cache (cfg, klass, args);
+}
+
 static MonoInst*
 emit_castclass_with_cache_nonshared (MonoCompile *cfg, MonoInst *obj, MonoClass *klass)
 {
@@ -4519,46 +4538,20 @@ emit_castclass_with_cache_nonshared (MonoCompile *cfg, MonoInst *obj, MonoClass
  * Returns NULL and set the cfg exception on error.
  */
 static MonoInst*
-handle_castclass (MonoCompile *cfg, MonoClass *klass, MonoInst *src, guint8 *ip, int *inline_costs)
+handle_castclass (MonoCompile *cfg, MonoClass *klass, MonoInst *src, int context_used)
 {
        MonoBasicBlock *is_null_bb;
        int obj_reg = src->dreg;
        int vtable_reg = alloc_preg (cfg);
-       int context_used;
-       MonoInst *klass_inst = NULL, *res;
-
-       context_used = mini_class_check_context_used (cfg, klass);
-
-       if (!context_used && mini_class_has_reference_variant_generic_argument (cfg, klass, context_used)) {
-               res = emit_castclass_with_cache_nonshared (cfg, src, klass);
-               (*inline_costs) += 2;
-               return res;
-       } else if (!context_used && (mono_class_is_marshalbyref (klass) || klass->flags & TYPE_ATTRIBUTE_INTERFACE)) {
-               MonoMethod *mono_castclass;
-               MonoInst *iargs [1];
-               int costs;
-
-               mono_castclass = mono_marshal_get_castclass (klass); 
-               iargs [0] = src;
-                               
-               save_cast_details (cfg, klass, src->dreg, TRUE);
-               costs = inline_method (cfg, mono_castclass, mono_method_signature (mono_castclass), 
-                                                          iargs, ip, cfg->real_offset, TRUE);
-               reset_cast_details (cfg);
-               CHECK_CFG_EXCEPTION;
-               g_assert (costs > 0);
-                               
-               cfg->real_offset += 5;
-
-               (*inline_costs) += costs;
+       MonoInst *klass_inst = NULL;
 
+       if (src->opcode == OP_PCONST && src->inst_p0 == 0)
                return src;
-       }
 
        if (context_used) {
                MonoInst *args [3];
 
-               if(mini_class_has_reference_variant_generic_argument (cfg, klass, context_used) || is_complex_isinst (klass)) {
+               if (mini_class_has_reference_variant_generic_argument (cfg, klass, context_used) || is_complex_isinst (klass)) {
                        MonoInst *cache_ins;
 
                        cache_ins = emit_get_rgctx_klass (cfg, context_used, klass, MONO_RGCTX_INFO_CAST_CACHE);
@@ -4619,9 +4612,6 @@ handle_castclass (MonoCompile *cfg, MonoClass *klass, MonoInst *src, guint8 *ip,
        reset_cast_details (cfg);
 
        return src;
-
-exception_exit:
-       return NULL;
 }
 
 /*
@@ -4641,21 +4631,15 @@ handle_isinst (MonoCompile *cfg, MonoClass *klass, MonoInst *src, int context_us
                MonoInst *args [3];
 
                if(mini_class_has_reference_variant_generic_argument (cfg, klass, context_used) || is_complex_isinst (klass)) {
-                       MonoMethod *mono_isinst = mono_marshal_get_isinst_with_cache ();
-                       MonoInst *cache_ins;
+                       MonoInst *cache_ins = emit_get_rgctx_klass (cfg, context_used, klass, MONO_RGCTX_INFO_CAST_CACHE);
 
-                       cache_ins = emit_get_rgctx_klass (cfg, context_used, klass, MONO_RGCTX_INFO_CAST_CACHE);
-
-                       /* obj */
-                       args [0] = src;
+                       args [0] = src; /* obj */
 
                        /* klass - it's the second element of the cache entry*/
                        EMIT_NEW_LOAD_MEMBASE (cfg, args [1], OP_LOAD_MEMBASE, alloc_preg (cfg), cache_ins->dreg, sizeof (gpointer));
 
-                       /* cache */
-                       args [2] = cache_ins;
-
-                       return mono_emit_method_call (cfg, mono_isinst, args, NULL);
+                       args [2] = cache_ins; /* cache */
+                       return emit_isinst_with_cache (cfg, klass, args);
                }
 
                klass_inst = emit_get_rgctx_klass (cfg, context_used, klass, MONO_RGCTX_INFO_KLASS);
@@ -5343,8 +5327,10 @@ mono_method_check_inlining (MonoCompile *cfg, MonoMethod *method)
                                return FALSE;
                        if (!cfg->compile_aot) {
                                MonoError error;
-                               if (!mono_runtime_class_init_full (vtable, &error))
-                                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               if (!mono_runtime_class_init_full (vtable, &error)) {
+                                       mono_error_cleanup (&error);
+                                       return FALSE;
+                               }
                        }
                } else if (method->klass->flags & TYPE_ATTRIBUTE_BEFORE_FIELD_INIT) {
                        if (cfg->run_cctors && method->klass->has_cctor) {
@@ -5361,8 +5347,10 @@ mono_method_check_inlining (MonoCompile *cfg, MonoMethod *method)
                                if (! vtable->initialized)
                                        return FALSE;
                                MonoError error;
-                               if (!mono_runtime_class_init_full (vtable, &error))
-                                       mono_error_raise_exception (&error); /* FIXME don't raise here */
+                               if (!mono_runtime_class_init_full (vtable, &error)) {
+                                       mono_error_cleanup (&error);
+                                       return FALSE;
+                               }
                        }
                } else if (mono_class_needs_cctor_run (method->klass, NULL)) {
                        if (!method->klass->runtime_info)
@@ -5898,7 +5886,7 @@ llvm_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
                if (opcode && fsig->param_count == 1) {
                        MONO_INST_NEW (cfg, ins, opcode);
                        ins->type = STACK_R8;
-                       ins->dreg = mono_alloc_freg (cfg);
+                       ins->dreg = mono_alloc_dreg (cfg, ins->type);
                        ins->sreg1 = args [0]->dreg;
                        MONO_ADD_INS (cfg->cbb, ins);
                }
@@ -5929,7 +5917,7 @@ llvm_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
                if (opcode && fsig->param_count == 2) {
                        MONO_INST_NEW (cfg, ins, opcode);
                        ins->type = fsig->params [0]->type == MONO_TYPE_I4 ? STACK_I4 : STACK_I8;
-                       ins->dreg = mono_alloc_ireg (cfg);
+                       ins->dreg = mono_alloc_dreg (cfg, ins->type);
                        ins->sreg1 = args [0]->dreg;
                        ins->sreg2 = args [1]->dreg;
                        MONO_ADD_INS (cfg->cbb, ins);
@@ -6110,12 +6098,7 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
                        return NULL;
        } else if (cmethod->klass == mono_defaults.monitor_class) {
                gboolean is_enter = FALSE;
-               gboolean is_v4 = FALSE;
 
-               if (!strcmp (cmethod->name, "enter_with_atomic_var") && mono_method_signature (cmethod)->param_count == 2) {
-                       is_enter = TRUE;
-                       is_v4 = TRUE;
-               }
                if (!strcmp (cmethod->name, "Enter") && mono_method_signature (cmethod)->param_count == 1)
                        is_enter = TRUE;
 
@@ -6128,10 +6111,10 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
 
                        NEW_BBLOCK (cfg, end_bb);
 
-                       ins = mono_emit_jit_icall (cfg, is_v4 ? (gpointer)mono_monitor_enter_v4_fast : (gpointer)mono_monitor_enter_fast, args);
+                       ins = mono_emit_jit_icall (cfg, (gpointer)mono_monitor_enter_fast, args);
                        MONO_EMIT_NEW_BIALU_IMM (cfg, OP_ICOMPARE_IMM, -1, ins->dreg, 0);
                        MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_IBNE_UN, end_bb);
-                       ins = mono_emit_jit_icall (cfg, is_v4 ? (gpointer)mono_monitor_enter_v4 : (gpointer)mono_monitor_enter, args);
+                       ins = mono_emit_jit_icall (cfg, (gpointer)mono_monitor_enter, args);
                        MONO_START_BB (cfg, end_bb);
                        return ins;
                }
@@ -6797,22 +6780,18 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
                    !strcmp (cmethod->klass->image->assembly->aname.name, "monotouch")) &&
                                !strcmp (cmethod->klass->name_space, "XamCore.ObjCRuntime") &&
                                !strcmp (cmethod->klass->name, "Selector")) ||
-                          (!strcmp (cmethod->klass->image->assembly->aname.name, "Xamarin.iOS") &&
+                          ((!strcmp (cmethod->klass->image->assembly->aname.name, "Xamarin.iOS") ||
+                                !strcmp (cmethod->klass->image->assembly->aname.name, "Xamarin.Mac")) &&
                                !strcmp (cmethod->klass->name_space, "ObjCRuntime") &&
                                !strcmp (cmethod->klass->name, "Selector"))
                           ) {
-               if (cfg->backend->have_objc_get_selector &&
+               if ((cfg->backend->have_objc_get_selector || cfg->compile_llvm) &&
                        !strcmp (cmethod->name, "GetHandle") && fsig->param_count == 1 &&
                    (args [0]->opcode == OP_GOT_ENTRY || args [0]->opcode == OP_AOTCONST) &&
-                   cfg->compile_aot && !cfg->llvm_only) {
+                   cfg->compile_aot) {
                        MonoInst *pi;
                        MonoJumpInfoToken *ji;
-                       MonoString *s;
-
-                       // FIXME: llvmonly
-
-                       cfg->exception_message = g_strdup ("GetHandle");
-                       cfg->disable_llvm = TRUE;
+                       char *s;
 
                        if (args [0]->opcode == OP_GOT_ENTRY) {
                                pi = (MonoInst *)args [0]->inst_p1;
@@ -6826,12 +6805,13 @@ mini_emit_inst_for_method (MonoCompile *cfg, MonoMethod *cmethod, MonoMethodSign
 
                        NULLIFY_INS (args [0]);
 
-                       // FIXME: Ugly
-                       s = mono_ldstr (cfg->domain, ji->image, mono_metadata_token_index (ji->token));
+                       s = mono_ldstr_utf8 (ji->image, mono_metadata_token_index (ji->token), &cfg->error);
+                       return_val_if_nok (&cfg->error, NULL);
+
                        MONO_INST_NEW (cfg, ins, OP_OBJC_GET_SELECTOR);
                        ins->dreg = mono_alloc_ireg (cfg);
                        // FIXME: Leaks
-                       ins->inst_p0 = mono_string_to_utf8 (s);
+                       ins->inst_p0 = s;
                        MONO_ADD_INS (cfg->cbb, ins);
                        return ins;
                }
@@ -7464,20 +7444,19 @@ mini_get_class (MonoMethod *method, guint32 token, MonoGenericContext *context)
 }
 
 static inline MonoMethodSignature*
-mini_get_signature (MonoMethod *method, guint32 token, MonoGenericContext *context)
+mini_get_signature (MonoMethod *method, guint32 token, MonoGenericContext *context, MonoError *error)
 {
        MonoMethodSignature *fsig;
 
+       mono_error_init (error);
        if (method->wrapper_type != MONO_WRAPPER_NONE) {
                fsig = (MonoMethodSignature *)mono_method_get_wrapper_data (method, token);
        } else {
-               fsig = mono_metadata_parse_signature (method->klass->image, token);
+               fsig = mono_metadata_parse_signature_checked (method->klass->image, token, error);
+               return_val_if_nok (error, NULL);
        }
        if (context) {
-               MonoError error;
-               fsig = mono_inflate_generic_signature(fsig, context, &error);
-               // FIXME:
-               g_assert(mono_error_ok(&error));
+               fsig = mono_inflate_generic_signature(fsig, context, error);
        }
        return fsig;
 }
@@ -9085,7 +9064,8 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        CHECK_STACK (1);
                        --sp;
                        addr = *sp;
-                       fsig = mini_get_signature (method, token, generic_context);
+                       fsig = mini_get_signature (method, token, generic_context, &cfg->error);
+                       CHECK_CFG_ERROR;
 
                        if (method->dynamic && fsig->pinvoke) {
                                MonoInst *args [3];
@@ -9265,7 +9245,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                }
                                if (!mono_method_can_access_method (method_definition, target_method) &&
                                        !mono_method_can_access_method (method, cil_method))
-                                       METHOD_ACCESS_FAILURE (method, cil_method);
+                                       emit_method_access_failure (cfg, method, cil_method);
                        }
 
                        if (mono_security_core_clr_enabled ())
@@ -9309,7 +9289,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                CHECK_CFG_ERROR;
                        }
 
-                       if (cfg->llvm_only && !cfg->method->wrapper_type)
+                       if (cfg->llvm_only && !cfg->method->wrapper_type && (!cmethod || cmethod->is_inflated))
                                cfg->signatures = g_slist_prepend_mempool (cfg->mempool, cfg->signatures, fsig);
 
                        /* See code below */
@@ -9677,7 +9657,8 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                }
                                goto call_end;
                        }
-
+                       CHECK_CFG_ERROR;
+                       
                        /* Inlining */
                        if ((cfg->opt & MONO_OPT_INLINE) &&
                                (!virtual_ || !(cmethod->flags & METHOD_ATTRIBUTE_VIRTUAL) || MONO_METHOD_IS_FINAL (cmethod)) &&
@@ -10736,8 +10717,9 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                        EMIT_NEW_DOMAINCONST (cfg, iargs [0]);
                                        EMIT_NEW_IMAGECONST (cfg, iargs [1], image);
                                        EMIT_NEW_ICONST (cfg, iargs [2], mono_metadata_token_index (n));
-                                       *sp = mono_emit_jit_icall (cfg, mono_ldstr, iargs);
-                                       mono_ldstr (cfg->domain, image, mono_metadata_token_index (n));
+                                       *sp = mono_emit_jit_icall (cfg, ves_icall_mono_ldstr, iargs);
+                                       mono_ldstr_checked (cfg->domain, image, mono_metadata_token_index (n), &cfg->error);
+                                       CHECK_CFG_ERROR;
                                } else {
                                        if (cfg->cbb->out_of_line) {
                                                MonoInst *iargs [2];
@@ -10765,7 +10747,9 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                        else {
                                                NEW_PCONST (cfg, ins, NULL);
                                                ins->type = STACK_OBJ;
-                                               ins->inst_p0 = mono_ldstr (cfg->domain, image, mono_metadata_token_index (n));
+                                               ins->inst_p0 = mono_ldstr_checked (cfg->domain, image, mono_metadata_token_index (n), &cfg->error);
+                                               CHECK_CFG_ERROR;
+                                               
                                                if (!ins->inst_p0)
                                                        OUT_OF_MEMORY_FAILURE;
 
@@ -10953,21 +10937,6 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        break;
                }
                case CEE_CASTCLASS:
-                       CHECK_STACK (1);
-                       --sp;
-                       CHECK_OPSIZE (5);
-                       token = read32 (ip + 1);
-                       klass = mini_get_class (method, token, generic_context);
-                       CHECK_TYPELOAD (klass);
-                       if (sp [0]->type != STACK_OBJ)
-                               UNVERIFIED;
-
-                       ins = handle_castclass (cfg, klass, *sp, ip, &inline_costs);
-                       CHECK_CFG_EXCEPTION;
-
-                       *sp ++ = ins;
-                       ip += 5;
-                       break;
                case CEE_ISINST: {
                        CHECK_STACK (1);
                        --sp;
@@ -10977,53 +10946,19 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        CHECK_TYPELOAD (klass);
                        if (sp [0]->type != STACK_OBJ)
                                UNVERIFIED;
-                       context_used = mini_class_check_context_used (cfg, klass);
-
-                       if (!context_used && mini_class_has_reference_variant_generic_argument (cfg, klass, context_used)) {
-                               MonoMethod *mono_isinst = mono_marshal_get_isinst_with_cache ();
-                               MonoInst *args [3];
-                               int idx;
 
-                               /* obj */
-                               args [0] = *sp;
-
-                               /* klass */
-                               EMIT_NEW_CLASSCONST (cfg, args [1], klass);
-
-                               /* inline cache*/
-                               idx = get_castclass_cache_idx (cfg);
-                               args [2] = emit_runtime_constant (cfg, MONO_PATCH_INFO_CASTCLASS_CACHE, GINT_TO_POINTER (idx));
-
-                               *sp++ = mono_emit_method_call (cfg, mono_isinst, args, NULL);
-                               ip += 5;
-                               inline_costs += 2;
-                       } else if (!context_used && (mono_class_is_marshalbyref (klass) || klass->flags & TYPE_ATTRIBUTE_INTERFACE)) {
-                               MonoMethod *mono_isinst;
-                               MonoInst *iargs [1];
-                               int costs;
-
-                               mono_isinst = mono_marshal_get_isinst (klass); 
-                               iargs [0] = sp [0];
-
-                               costs = inline_method (cfg, mono_isinst, mono_method_signature (mono_isinst), 
-                                                                          iargs, ip, cfg->real_offset, TRUE);
-                               CHECK_CFG_EXCEPTION;
-                               g_assert (costs > 0);
-                               
-                               ip += 5;
-                               cfg->real_offset += 5;
+                       MONO_INST_NEW (cfg, ins, *ip == CEE_ISINST ? OP_ISINST : OP_CASTCLASS);
+                       ins->dreg = alloc_preg (cfg);
+                       ins->sreg1 = (*sp)->dreg;
+                       ins->klass = klass;
+                       ins->type = STACK_OBJ;
+                       MONO_ADD_INS (cfg->cbb, ins);
 
-                               *sp++= iargs [0];
+                       CHECK_CFG_EXCEPTION;
+                       *sp++ = ins;
+                       ip += 5;
 
-                               inline_costs += costs;
-                       }
-                       else {
-                               ins = handle_isinst (cfg, klass, *sp, context_used);
-                               CHECK_CFG_EXCEPTION;
-                               *sp ++ = ins;
-                               ip += 5;
-                       }
+                       cfg->flags |= MONO_CFG_HAS_TYPE_CHECK;
                        break;
                }
                case CEE_UNBOX_ANY: {
@@ -11044,8 +10979,13 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                res = handle_unbox_gsharedvt (cfg, klass, *sp);
                                inline_costs += 2;
                        } else if (generic_class_is_reference_type (cfg, klass)) {
-                               res = handle_castclass (cfg, klass, *sp, ip, &inline_costs);
-                               CHECK_CFG_EXCEPTION;
+                               MONO_INST_NEW (cfg, res, OP_CASTCLASS);
+                               res->dreg = alloc_preg (cfg);
+                               res->sreg1 = (*sp)->dreg;
+                               res->klass = klass;
+                               res->type = STACK_OBJ;
+                               MONO_ADD_INS (cfg->cbb, res);
+                               cfg->flags |= MONO_CFG_HAS_TYPE_CHECK;
                        } else if (mono_class_is_nullable (klass)) {
                                res = handle_unbox_nullable (cfg, *sp, klass, context_used);
                        } else {
@@ -12763,59 +12703,68 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                ip += 6;
                                break;
                        }
+                       case CEE_MONO_ATOMIC_STORE_I4: {
+                               g_assert (mono_arch_opcode_supported (OP_ATOMIC_STORE_I4));
+
+                               CHECK_OPSIZE (6);
+                               CHECK_STACK (2);
+                               sp -= 2;
+
+                               MONO_INST_NEW (cfg, ins, OP_ATOMIC_STORE_I4);
+                               ins->dreg = sp [0]->dreg;
+                               ins->sreg1 = sp [1]->dreg;
+                               ins->backend.memory_barrier_kind = (int) read32 (ip + 2);
+                               MONO_ADD_INS (cfg->cbb, ins);
+
+                               ip += 6;
+                               break;
+                       }
                        case CEE_MONO_JIT_ATTACH: {
                                MonoInst *args [16], *domain_ins;
                                MonoInst *ad_ins, *jit_tls_ins;
                                MonoBasicBlock *next_bb = NULL, *call_bb = NULL;
 
-                               cfg->attach_cookie = mono_compile_create_var (cfg, &mono_defaults.int_class->byval_arg, OP_LOCAL);
-                               cfg->attach_dummy = mono_compile_create_var (cfg, &mono_defaults.int_class->byval_arg, OP_LOCAL);
+                               g_assert (!mono_threads_is_coop_enabled ());
 
-                               if (mono_threads_is_coop_enabled ()) {
-                                       /* AOT code is only used in the root domain */
-                                       EMIT_NEW_PCONST (cfg, args [0], cfg->compile_aot ? NULL : cfg->domain);
-                                       EMIT_NEW_VARLOADA (cfg, args [1], cfg->attach_dummy, cfg->attach_dummy->inst_vtype);
-                                       ins = mono_emit_jit_icall (cfg, mono_jit_thread_attach, args);
-                                       MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, cfg->attach_cookie->dreg, ins->dreg);
-                               } else {
-                                       EMIT_NEW_PCONST (cfg, ins, NULL);
-                                       MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, cfg->attach_cookie->dreg, ins->dreg);
-
-                                       ad_ins = mono_get_domain_intrinsic (cfg);
-                                       jit_tls_ins = mono_get_jit_tls_intrinsic (cfg);
+                               cfg->orig_domain_var = mono_compile_create_var (cfg, &mono_defaults.int_class->byval_arg, OP_LOCAL);
 
-                                       if (cfg->backend->have_tls_get && ad_ins && jit_tls_ins) {
-                                               NEW_BBLOCK (cfg, next_bb);
-                                               NEW_BBLOCK (cfg, call_bb);
+                               EMIT_NEW_PCONST (cfg, ins, NULL);
+                               MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, cfg->orig_domain_var->dreg, ins->dreg);
 
-                                               if (cfg->compile_aot) {
-                                                       /* AOT code is only used in the root domain */
-                                                       EMIT_NEW_PCONST (cfg, domain_ins, NULL);
-                                               } else {
-                                                       EMIT_NEW_PCONST (cfg, domain_ins, cfg->domain);
-                                               }
-                                               MONO_ADD_INS (cfg->cbb, ad_ins);
-                                               MONO_EMIT_NEW_BIALU (cfg, OP_COMPARE, -1, ad_ins->dreg, domain_ins->dreg);
-                                               MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_PBNE_UN, call_bb);
+                               ad_ins = mono_get_domain_intrinsic (cfg);
+                               jit_tls_ins = mono_get_jit_tls_intrinsic (cfg);
 
-                                               MONO_ADD_INS (cfg->cbb, jit_tls_ins);
-                                               MONO_EMIT_NEW_BIALU_IMM (cfg, OP_COMPARE_IMM, -1, jit_tls_ins->dreg, 0);
-                                               MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_PBEQ, call_bb);
+                               if (cfg->backend->have_tls_get && ad_ins && jit_tls_ins) {
+                                       NEW_BBLOCK (cfg, next_bb);
+                                       NEW_BBLOCK (cfg, call_bb);
 
-                                               MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_BR, next_bb);
-                                               MONO_START_BB (cfg, call_bb);
+                                       if (cfg->compile_aot) {
+                                               /* AOT code is only used in the root domain */
+                                               EMIT_NEW_PCONST (cfg, domain_ins, NULL);
+                                       } else {
+                                               EMIT_NEW_PCONST (cfg, domain_ins, cfg->domain);
                                        }
+                                       MONO_ADD_INS (cfg->cbb, ad_ins);
+                                       MONO_EMIT_NEW_BIALU (cfg, OP_COMPARE, -1, ad_ins->dreg, domain_ins->dreg);
+                                       MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_PBNE_UN, call_bb);
 
-                                       /* AOT code is only used in the root domain */
-                                       EMIT_NEW_PCONST (cfg, args [0], cfg->compile_aot ? NULL : cfg->domain);
-                                       EMIT_NEW_PCONST (cfg, args [1], NULL);
-                                       ins = mono_emit_jit_icall (cfg, mono_jit_thread_attach, args);
-                                       MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, cfg->attach_cookie->dreg, ins->dreg);
+                                       MONO_ADD_INS (cfg->cbb, jit_tls_ins);
+                                       MONO_EMIT_NEW_BIALU_IMM (cfg, OP_COMPARE_IMM, -1, jit_tls_ins->dreg, 0);
+                                       MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_PBEQ, call_bb);
 
-                                       if (next_bb)
-                                               MONO_START_BB (cfg, next_bb);
+                                       MONO_EMIT_NEW_BRANCH_BLOCK (cfg, OP_BR, next_bb);
+                                       MONO_START_BB (cfg, call_bb);
                                }
 
+                               /* AOT code is only used in the root domain */
+                               EMIT_NEW_PCONST (cfg, args [0], cfg->compile_aot ? NULL : cfg->domain);
+                               ins = mono_emit_jit_icall (cfg, mono_jit_thread_attach, args);
+                               MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, cfg->orig_domain_var->dreg, ins->dreg);
+
+                               if (next_bb)
+                                       MONO_START_BB (cfg, next_bb);
+
+
                                ip += 2;
                                break;
                        }
@@ -12824,9 +12773,8 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                /* Restore the original domain */
                                dreg = alloc_ireg (cfg);
-                               EMIT_NEW_UNALU (cfg, args [0], OP_MOVE, dreg, cfg->attach_cookie->dreg);
-                               EMIT_NEW_VARLOADA (cfg, args [1], cfg->attach_dummy, cfg->attach_dummy->inst_vtype);
-                               mono_emit_jit_icall (cfg, mono_jit_thread_detach, args);
+                               EMIT_NEW_UNALU (cfg, args [0], OP_MOVE, dreg, cfg->orig_domain_var->dreg);
+                               mono_emit_jit_icall (cfg, mono_jit_set_domain, args);
                                ip += 2;
                                break;
                        }
@@ -12852,7 +12800,8 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                CHECK_STACK (1);
                                --sp;
                                addr = *sp;
-                               fsig = mini_get_signature (method, token, generic_context);
+                               fsig = mini_get_signature (method, token, generic_context, &cfg->error);
+                               CHECK_CFG_ERROR;
 
                                if (cfg->llvm_only)
                                        cfg->signatures = g_slist_prepend_mempool (cfg->mempool, cfg->signatures, fsig);
@@ -12974,6 +12923,12 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                                constrained_class = NULL;
                                break;
                        }
+                       case CEE_MONO_LDDOMAIN:
+                               CHECK_STACK_OVF (1);
+                               EMIT_NEW_PCONST (cfg, ins, cfg->compile_aot ? NULL : cfg->domain);
+                               ip += 2;
+                               *sp++ = ins;
+                               break;
                        default:
                                g_error ("opcode 0x%02x 0x%02x not handled", MONO_CUSTOM_PREFIX, ip [1]);
                                break;
@@ -13073,7 +13028,7 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
 
                                cil_method = cmethod;
                                if (!dont_verify && !cfg->skip_visibility && !mono_method_can_access_method (method, cmethod))
-                                       METHOD_ACCESS_FAILURE (method, cil_method);
+                                       emit_method_access_failure (cfg, method, cil_method);
 
                                if (mono_security_core_clr_enabled ())
                                        ensure_method_is_allowed_to_call_method (cfg, method, cmethod);
@@ -13640,6 +13595,12 @@ mono_method_to_ir (MonoCompile *cfg, MonoMethod *method, MonoBasicBlock *start_b
                        if (cfg->verbose_level > 2)
                                printf ("REGION BB%d IL_%04x ID_%08X\n", bb->block_num, bb->real_offset, bb->region);
                }
+       } else {
+               MonoBasicBlock *bb;
+               /* get_most_deep_clause () in mini-llvm.c depends on this for inlined bblocks */
+               for (bb = start_bblock; bb != end_bblock; bb  = bb->next_bb) {
+                       bb->real_offset = inline_offset;
+               }
        }
 
        if (inline_costs < 0) {
@@ -15026,6 +14987,74 @@ mono_spill_global_vars (MonoCompile *cfg, gboolean *need_local_opts)
        g_free (live_range_end_bb);
 }
 
+static void
+mono_decompose_typecheck (MonoCompile *cfg, MonoBasicBlock *bb, MonoInst *ins)
+{
+       MonoInst *ret, *move, *source;
+       MonoClass *klass = ins->klass;
+       int context_used = mini_class_check_context_used (cfg, klass);
+       int is_isinst = ins->opcode == OP_ISINST;
+       g_assert (is_isinst || ins->opcode == OP_CASTCLASS);
+       source = get_vreg_to_inst (cfg, ins->sreg1);
+       if (!source || source == (MonoInst *) -1)
+               source = mono_compile_create_var_for_vreg (cfg, &mono_defaults.object_class->byval_arg, OP_LOCAL, ins->sreg1);
+       g_assert (source && source != (MonoInst *) -1);
+
+       MonoBasicBlock *first_bb;
+       NEW_BBLOCK (cfg, first_bb);
+       cfg->cbb = first_bb;
+
+       if (!context_used && mini_class_has_reference_variant_generic_argument (cfg, klass, context_used)) {
+               if (is_isinst)
+                       ret = emit_isinst_with_cache_nonshared (cfg, source, klass);
+               else
+                       ret = emit_castclass_with_cache_nonshared (cfg, source, klass);
+       } else if (!context_used && (mono_class_is_marshalbyref (klass) || klass->flags & TYPE_ATTRIBUTE_INTERFACE)) {
+               MonoInst *iargs [1];
+               int costs;
+
+               iargs [0] = source;
+               if (is_isinst) {
+                       MonoMethod *wrapper = mono_marshal_get_isinst (klass);
+                       costs = inline_method (cfg, wrapper, mono_method_signature (wrapper), iargs, 0, 0, TRUE);
+               } else {
+                       MonoMethod *wrapper = mono_marshal_get_castclass (klass);
+                       save_cast_details (cfg, klass, source->dreg, TRUE);
+                       costs = inline_method (cfg, wrapper, mono_method_signature (wrapper), iargs, 0, 0, TRUE);
+                       reset_cast_details (cfg);
+               }
+               g_assert (costs > 0);
+               ret = iargs [0];
+       } else {
+               if (is_isinst)
+                       ret = handle_isinst (cfg, klass, source, context_used);
+               else
+                       ret = handle_castclass (cfg, klass, source, context_used);
+       }
+       EMIT_NEW_UNALU (cfg, move, OP_MOVE, ins->dreg, ret->dreg);
+
+       g_assert (cfg->cbb->code || first_bb->code);
+       MonoInst *prev = ins->prev;
+       mono_replace_ins (cfg, bb, ins, &prev, first_bb, cfg->cbb);
+}
+
+void
+mono_decompose_typechecks (MonoCompile *cfg)
+{
+       for (MonoBasicBlock *bb = cfg->bb_entry; bb; bb = bb->next_bb) {
+               MonoInst *ins;
+               MONO_BB_FOR_EACH_INS (bb, ins) {
+                       switch (ins->opcode) {
+                       case OP_ISINST:
+                       case OP_CASTCLASS:
+                               mono_decompose_typecheck (cfg, bb, ins);
+                               break;
+                       }
+               }
+       }
+}
+
+
 /**
  * FIXME:
  * - use 'iadd' instead of 'int_add'
index dffa9370f27024990fe7e52ab6a01d3128ca4498..ddf699c58caf5878afcec17bdb707222e4820d97 100644 (file)
@@ -5,6 +5,7 @@
  *   Zoltan Varga <vargaz@gmail.com>
  *   Rodrigo Kumpera <kumpera@gmail.com>
  *   Andi McClure <andi.mcclure@xamarin.com>
+ *   Johan Lorensson <johan.lorensson@xamarin.com>
  *
  * Copyright 2015 Xamarin, Inc (http://www.xamarin.com)
  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
@@ -80,9 +81,17 @@ add_to_map (GPtrArray *map, int src, int dst)
 
 /*
  * Slot mapping:
+ *
+ * System V:
  * 0..5  - rdi, rsi, rdx, rcx, r8, r9
  * 6..13 - xmm0..xmm7
  * 14..  - stack slots
+ *
+ * Windows:
+ * 0..3 - rcx, rdx, r8, r9
+ * 4..7 - xmm0..xmm3
+ * 8..  - stack slots
+ *
  */
 static inline int
 map_reg (int reg)
@@ -356,7 +365,7 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
        DEBUG_AMD64_GSHAREDVT_PRINT ("-- return in (%s) out (%s) var_ret %d\n", arg_info_desc (&caller_cinfo->ret),  arg_info_desc (&callee_cinfo->ret), var_ret);
 
        if (cinfo->ret.storage == ArgValuetypeAddrInIReg) {
-               /* Both the caller and the callee pass the vtype ret address in r8 */
+               /* Both the caller and the callee pass the vtype ret address in r8 (System V) and RCX or RDX (Windows) */
                g_assert (gcinfo->ret.storage == ArgValuetypeAddrInIReg || gcinfo->ret.storage == ArgGsharedvtVariableInReg);
                add_to_map (map, map_reg (cinfo->ret.reg), map_reg (cinfo->ret.reg));
        }
@@ -441,7 +450,10 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
                                case MONO_TYPE_I8:
                                        info->ret_marshal = GSHAREDVT_RET_I8;
                                        break;
-
+                               case MONO_TYPE_GENERICINST:
+                                       g_assert (!mono_type_generic_inst_is_valuetype (ret));
+                                       info->ret_marshal = GSHAREDVT_RET_I8;
+                                       break;
                                default:
                                        g_error ("Gsharedvt can't handle dst type [%d]", (int)sig->ret->type);
                                }
index 3e3d56c54f2db331337cdc190c81cdb7fc65f9c2..1bb14e5abd2c4f43eed0d67118a82037ad151d71 100644 (file)
@@ -5,6 +5,7 @@
  *   Zoltan Varga <vargaz@gmail.com>
  *   Rodrigo Kumpera <kumpera@gmail.com>
  *   Andi McClure <andi.mcclure@xamarin.com>
+ *   Johan Lorensson <johan.lorensson@xamarin.com>
  *
  * Copyright 2015 Xamarin, Inc (http://www.xamarin.com)
  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
index eab64ce262558e1579b4b1c74a43e72575742fe3..073a818a514887e4c0504042296b43a31c40d4bc 100644 (file)
@@ -174,278 +174,11 @@ amd64_use_imm32 (gint64 val)
        return amd64_is_imm32 (val);
 }
 
-#ifdef __native_client_codegen__
-
-/* Keep track of instruction "depth", that is, the level of sub-instruction */
-/* for any given instruction.  For instance, amd64_call_reg resolves to     */
-/* amd64_call_reg_internal, which uses amd64_alu_* macros, etc.             */
-/* We only want to force bundle alignment for the top level instruction,    */
-/* so NaCl pseudo-instructions can be implemented with sub instructions.    */
-static MonoNativeTlsKey nacl_instruction_depth;
-
-static MonoNativeTlsKey nacl_rex_tag;
-static MonoNativeTlsKey nacl_legacy_prefix_tag;
-
-void
-amd64_nacl_clear_legacy_prefix_tag ()
-{
-       mono_native_tls_set_value (nacl_legacy_prefix_tag, NULL);
-}
-
-void
-amd64_nacl_tag_legacy_prefix (guint8* code)
-{
-       if (mono_native_tls_get_value (nacl_legacy_prefix_tag) == NULL)
-               mono_native_tls_set_value (nacl_legacy_prefix_tag, code);
-}
-
-void
-amd64_nacl_tag_rex (guint8* code)
-{
-       mono_native_tls_set_value (nacl_rex_tag, code);
-}
-
-guint8*
-amd64_nacl_get_legacy_prefix_tag ()
-{
-       return (guint8*)mono_native_tls_get_value (nacl_legacy_prefix_tag);
-}
-
-guint8*
-amd64_nacl_get_rex_tag ()
-{
-       return (guint8*)mono_native_tls_get_value (nacl_rex_tag);
-}
-
-/* Increment the instruction "depth" described above */
-void
-amd64_nacl_instruction_pre ()
-{
-       intptr_t depth = (intptr_t) mono_native_tls_get_value (nacl_instruction_depth);
-       depth++;
-       mono_native_tls_set_value (nacl_instruction_depth, (gpointer)depth);
-}
-
-/* amd64_nacl_instruction_post: Decrement instruction "depth", force bundle */
-/* alignment if depth == 0 (top level instruction)                          */
-/* IN: start, end    pointers to instruction beginning and end              */
-/* OUT: start, end   pointers to beginning and end after possible alignment */
-/* GLOBALS: nacl_instruction_depth     defined above                        */
-void
-amd64_nacl_instruction_post (guint8 **start, guint8 **end)
-{
-       intptr_t depth = (intptr_t) mono_native_tls_get_value (nacl_instruction_depth);
-       depth--;
-       mono_native_tls_set_value (nacl_instruction_depth, (void*)depth);
-
-       g_assert ( depth >= 0 );
-       if (depth == 0) {
-               uintptr_t space_in_block;
-               uintptr_t instlen;
-               guint8 *prefix = amd64_nacl_get_legacy_prefix_tag ();
-               /* if legacy prefix is present, and if it was emitted before */
-               /* the start of the instruction sequence, adjust the start   */
-               if (prefix != NULL && prefix < *start) {
-                       g_assert (*start - prefix <= 3);/* only 3 are allowed */
-                       *start = prefix;
-               }
-               space_in_block = kNaClAlignment - ((uintptr_t)(*start) & kNaClAlignmentMask);
-               instlen = (uintptr_t)(*end - *start);
-               /* Only check for instructions which are less than        */
-               /* kNaClAlignment. The only instructions that should ever */
-               /* be that long are call sequences, which are already     */
-               /* padded out to align the return to the next bundle.     */
-               if (instlen > space_in_block && instlen < kNaClAlignment) {
-                       const size_t MAX_NACL_INST_LENGTH = kNaClAlignment;
-                       guint8 copy_of_instruction[MAX_NACL_INST_LENGTH];
-                       const size_t length = (size_t)((*end)-(*start));
-                       g_assert (length < MAX_NACL_INST_LENGTH);
-                       
-                       memcpy (copy_of_instruction, *start, length);
-                       *start = mono_arch_nacl_pad (*start, space_in_block);
-                       memcpy (*start, copy_of_instruction, length);
-                       *end = *start + length;
-               }
-               amd64_nacl_clear_legacy_prefix_tag ();
-               amd64_nacl_tag_rex (NULL);
-       }
-}
-
-/* amd64_nacl_membase_handler: ensure all access to memory of the form      */
-/*   OFFSET(%rXX) is sandboxed.  For allowable base registers %rip, %rbp,   */
-/*   %rsp, and %r15, emit the membase as usual.  For all other registers,   */
-/*   make sure the upper 32-bits are cleared, and use that register in the  */
-/*   index field of a new address of this form: OFFSET(%r15,%eXX,1)         */
-/* IN:      code                                                            */
-/*             pointer to current instruction stream (in the                */
-/*             middle of an instruction, after opcode is emitted)           */
-/*          basereg/offset/dreg                                             */
-/*             operands of normal membase address                           */
-/* OUT:     code                                                            */
-/*             pointer to the end of the membase/memindex emit              */
-/* GLOBALS: nacl_rex_tag                                                    */
-/*             position in instruction stream that rex prefix was emitted   */
-/*          nacl_legacy_prefix_tag                                          */
-/*             (possibly NULL) position in instruction of legacy x86 prefix */
-void
-amd64_nacl_membase_handler (guint8** code, gint8 basereg, gint32 offset, gint8 dreg)
-{
-       gint8 true_basereg = basereg;
-
-       /* Cache these values, they might change  */
-       /* as new instructions are emitted below. */
-       guint8* rex_tag = amd64_nacl_get_rex_tag ();
-       guint8* legacy_prefix_tag = amd64_nacl_get_legacy_prefix_tag ();
-
-       /* 'basereg' is given masked to 0x7 at this point, so check */
-       /* the rex prefix to see if this is an extended register.   */
-       if ((rex_tag != NULL) && IS_REX(*rex_tag) && (*rex_tag & AMD64_REX_B)) {
-               true_basereg |= 0x8;
-       }
-
-#define X86_LEA_OPCODE (0x8D)
-
-       if (!amd64_is_valid_nacl_base (true_basereg) && (*(*code-1) != X86_LEA_OPCODE)) {
-               guint8* old_instruction_start;
-               
-               /* This will hold the 'mov %eXX, %eXX' that clears the upper */
-               /* 32-bits of the old base register (new index register)     */
-               guint8 buf[32];
-               guint8* buf_ptr = buf;
-               size_t insert_len;
-
-               g_assert (rex_tag != NULL);
-
-               if (IS_REX(*rex_tag)) {
-                       /* The old rex.B should be the new rex.X */
-                       if (*rex_tag & AMD64_REX_B) {
-                               *rex_tag |= AMD64_REX_X;
-                       }
-                       /* Since our new base is %r15 set rex.B */
-                       *rex_tag |= AMD64_REX_B;
-               } else {
-                       /* Shift the instruction by one byte  */
-                       /* so we can insert a rex prefix      */
-                       memmove (rex_tag + 1, rex_tag, (size_t)(*code - rex_tag));
-                       *code += 1;
-                       /* New rex prefix only needs rex.B for %r15 base */
-                       *rex_tag = AMD64_REX(AMD64_REX_B);
-               }
-
-               if (legacy_prefix_tag) {
-                       old_instruction_start = legacy_prefix_tag;
-               } else {
-                       old_instruction_start = rex_tag;
-               }
-               
-               /* Clears the upper 32-bits of the previous base register */
-               amd64_mov_reg_reg_size (buf_ptr, true_basereg, true_basereg, 4);
-               insert_len = buf_ptr - buf;
-               
-               /* Move the old instruction forward to make */
-               /* room for 'mov' stored in 'buf_ptr'       */
-               memmove (old_instruction_start + insert_len, old_instruction_start, (size_t)(*code - old_instruction_start));
-               *code += insert_len;
-               memcpy (old_instruction_start, buf, insert_len);
-
-               /* Sandboxed replacement for the normal membase_emit */
-               x86_memindex_emit (*code, dreg, AMD64_R15, offset, basereg, 0);
-               
-       } else {
-               /* Normal default behavior, emit membase memory location */
-               x86_membase_emit_body (*code, dreg, basereg, offset);
-       }
-}
-
-
-static inline unsigned char*
-amd64_skip_nops (unsigned char* code)
-{
-       guint8 in_nop;
-       do {
-               in_nop = 0;
-               if (   code[0] == 0x90) {
-                       in_nop = 1;
-                       code += 1;
-               }
-               if (   code[0] == 0x66 && code[1] == 0x90) {
-                       in_nop = 1;
-                       code += 2;
-               }
-               if (code[0] == 0x0f && code[1] == 0x1f
-                && code[2] == 0x00) {
-                       in_nop = 1;
-                       code += 3;
-               }
-               if (code[0] == 0x0f && code[1] == 0x1f
-                && code[2] == 0x40 && code[3] == 0x00) {
-                       in_nop = 1;
-                       code += 4;
-               }
-               if (code[0] == 0x0f && code[1] == 0x1f
-                && code[2] == 0x44 && code[3] == 0x00
-                && code[4] == 0x00) {
-                       in_nop = 1;
-                       code += 5;
-               }
-               if (code[0] == 0x66 && code[1] == 0x0f
-                && code[2] == 0x1f && code[3] == 0x44
-                && code[4] == 0x00 && code[5] == 0x00) {
-                       in_nop = 1;
-                       code += 6;
-               }
-               if (code[0] == 0x0f && code[1] == 0x1f
-                && code[2] == 0x80 && code[3] == 0x00
-                && code[4] == 0x00 && code[5] == 0x00
-                && code[6] == 0x00) {
-                       in_nop = 1;
-                       code += 7;
-               }
-               if (code[0] == 0x0f && code[1] == 0x1f
-                && code[2] == 0x84 && code[3] == 0x00
-                && code[4] == 0x00 && code[5] == 0x00
-                && code[6] == 0x00 && code[7] == 0x00) {
-                       in_nop = 1;
-                       code += 8;
-               }
-       } while ( in_nop );
-       return code;
-}
-
-guint8*
-mono_arch_nacl_skip_nops (guint8* code)
-{
-  return amd64_skip_nops(code);
-}
-
-#endif /*__native_client_codegen__*/
-
 static void
 amd64_patch (unsigned char* code, gpointer target)
 {
        guint8 rex = 0;
 
-#ifdef __native_client_codegen__
-       code = amd64_skip_nops (code);
-#endif
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       if (nacl_is_code_address (code)) {
-               /* For tail calls, code is patched after being installed */
-               /* but not through the normal "patch callsite" method.   */
-               unsigned char buf[kNaClAlignment];
-               unsigned char *aligned_code = (uintptr_t)code & ~kNaClAlignmentMask;
-               int ret;
-               memcpy (buf, aligned_code, kNaClAlignment);
-               /* Patch a temp buffer of bundle size, */
-               /* then install to actual location.    */
-               amd64_patch (buf + ((uintptr_t)code - (uintptr_t)aligned_code), target);
-               ret = nacl_dyncode_modify (aligned_code, buf, kNaClAlignment);
-               g_assert (ret == 0);
-               return;
-       }
-       target = nacl_modify_patch_target (target);
-#endif
-
        /* Skip REX */
        if ((code [0] >= 0x40) && (code [0] <= 0x4f)) {
                rex = code [0];
@@ -604,30 +337,6 @@ merge_argument_class_from_type (MonoType *type, ArgumentClass class1)
 
        return class1;
 }
-#ifdef __native_client_codegen__
-
-/* Default alignment for Native Client is 32-byte. */
-gint8 nacl_align_byte = -32; /* signed version of 0xe0 */
-
-/* mono_arch_nacl_pad: Add pad bytes of alignment instructions at code,  */
-/* Check that alignment doesn't cross an alignment boundary.             */
-guint8*
-mono_arch_nacl_pad(guint8 *code, int pad)
-{
-       const int kMaxPadding = 8; /* see amd64-codegen.h:amd64_padding_size() */
-
-       if (pad == 0) return code;
-       /* assertion: alignment cannot cross a block boundary */
-       g_assert (((uintptr_t)code & (~kNaClAlignmentMask)) ==
-                (((uintptr_t)code + pad - 1) & (~kNaClAlignmentMask)));
-       while (pad >= kMaxPadding) {
-               amd64_padding (code, kMaxPadding);
-               pad -= kMaxPadding;
-       }
-       if (pad != 0) amd64_padding (code, pad);
-       return code;
-}
-#endif
 
 static int
 count_fields_nested (MonoClass *klass)
@@ -683,6 +392,17 @@ add_valuetype_win64 (MonoMethodSignature *sig, ArgInfo *ainfo, MonoType *type,
 
        klass = mono_class_from_mono_type (type);
        size = mini_type_stack_size_full (&klass->byval_arg, NULL, sig->pinvoke);
+
+       /*
+       * Standard C and C++ doesn't allow empty structs, empty structs will always have a size of 1 byte.
+       * GCC have an extension to allow empty structs, https://gcc.gnu.org/onlinedocs/gcc/Empty-Structures.html.
+       * This cause a little dilemma since runtime build using none GCC compiler will not be compatible with
+       * GCC build C libraries and the other way around. On platforms where empty structs has size of 1 byte
+       * it must be represented in call and cannot be dropped.
+       */
+       if (0 == size && MONO_TYPE_ISSTRUCT (type) && sig->pinvoke)
+               ainfo->pass_empty_struct = TRUE;
+       
        if (!sig->pinvoke)
                pass_on_stack = TRUE;
 
@@ -739,13 +459,17 @@ add_valuetype_win64 (MonoMethodSignature *sig, ArgInfo *ainfo, MonoType *type,
        } else {
                g_assert (info);
 
-               if (!fields) {
+               /*Only drop value type if its not an empty struct as input that must be represented in call*/
+               if ((!fields && !ainfo->pass_empty_struct) || (!fields && ainfo->pass_empty_struct && is_return)) {
                        ainfo->storage = ArgValuetypeInReg;
                        ainfo->pair_storage [0] = ainfo->pair_storage [1] = ArgNone;
                        return;
                }
 
                switch (info->native_size) {
+               case 0:
+                       g_assert (!fields && MONO_TYPE_ISSTRUCT (type) && !is_return);
+                       break;
                case 1: case 2: case 4: case 8:
                        break;
                default:
@@ -778,7 +502,11 @@ add_valuetype_win64 (MonoMethodSignature *sig, ArgInfo *ainfo, MonoType *type,
                guint32 align;
                ArgumentClass class1;
 
-               if (nfields == 0)
+               if (nfields == 0 && ainfo->pass_empty_struct) {
+                       g_assert (!fields && !is_return);
+                       class1 = ARG_CLASS_INTEGER;
+               }
+               else if (nfields == 0)
                        class1 = ARG_CLASS_MEMORY;
                else
                        class1 = ARG_CLASS_NO_CLASS;
@@ -877,6 +605,7 @@ add_valuetype (MonoMethodSignature *sig, ArgInfo *ainfo, MonoType *type,
 
        klass = mono_class_from_mono_type (type);
        size = mini_type_stack_size_full (&klass->byval_arg, NULL, sig->pinvoke);
+
        if (!sig->pinvoke && ((is_return && (size == 8)) || (!is_return && (size <= 16)))) {
                /* We pass and return vtypes of size 8 in a register */
        } else if (!sig->pinvoke || (size == 0) || (size > 16)) {
@@ -1088,9 +817,11 @@ add_valuetype (MonoMethodSignature *sig, ArgInfo *ainfo, MonoType *type,
 /*
  * get_call_info:
  *
- *  Obtain information about a call according to the calling convention.
- * For AMD64, see the "System V ABI, x86-64 Architecture Processor Supplement 
+ * Obtain information about a call according to the calling convention.
+ * For AMD64 System V, see the "System V ABI, x86-64 Architecture Processor Supplement
  * Draft Version 0.23" document for more information.
+ * For AMD64 Windows, see "Overview of x64 Calling Conventions",
+ * https://msdn.microsoft.com/en-us/library/ms235286.aspx
  */
 static CallInfo*
 get_call_info (MonoMemPool *mp, MonoMethodSignature *sig)
@@ -1413,12 +1144,6 @@ void
 mono_arch_init (void)
 {
        mono_os_mutex_init_recursive (&mini_arch_mutex);
-#if defined(__native_client_codegen__)
-       mono_native_tls_alloc (&nacl_instruction_depth, NULL);
-       mono_native_tls_set_value (nacl_instruction_depth, (gpointer)0);
-       mono_native_tls_alloc (&nacl_rex_tag, NULL);
-       mono_native_tls_alloc (&nacl_legacy_prefix_tag, NULL);
-#endif
 
        mono_aot_register_jit_icall ("mono_amd64_throw_exception", mono_amd64_throw_exception);
        mono_aot_register_jit_icall ("mono_amd64_throw_corlib_exception", mono_amd64_throw_corlib_exception);
@@ -1439,11 +1164,6 @@ void
 mono_arch_cleanup (void)
 {
        mono_os_mutex_destroy (&mini_arch_mutex);
-#if defined(__native_client_codegen__)
-       mono_native_tls_free (nacl_instruction_depth);
-       mono_native_tls_free (nacl_rex_tag);
-       mono_native_tls_free (nacl_legacy_prefix_tag);
-#endif
 }
 
 /*
@@ -1567,13 +1287,6 @@ mono_arch_compute_omit_fp (MonoCompile *cfg)
        cfg->arch.omit_fp = TRUE;
        cfg->arch.omit_fp_computed = TRUE;
 
-#ifdef __native_client_codegen__
-       /* NaCl modules may not change the value of RBP, so it cannot be */
-       /* used as a normal register, but it can be used as a frame pointer*/
-       cfg->disable_omit_fp = TRUE;
-       cfg->arch.omit_fp = FALSE;
-#endif
-
        if (cfg->disable_omit_fp)
                cfg->arch.omit_fp = FALSE;
 
@@ -1630,9 +1343,7 @@ mono_arch_get_global_int_regs (MonoCompile *cfg)
        regs = g_list_prepend (regs, (gpointer)AMD64_R12);
        regs = g_list_prepend (regs, (gpointer)AMD64_R13);
        regs = g_list_prepend (regs, (gpointer)AMD64_R14);
-#ifndef __native_client_codegen__
        regs = g_list_prepend (regs, (gpointer)AMD64_R15);
-#endif
 #ifdef TARGET_WIN32
        regs = g_list_prepend (regs, (gpointer)AMD64_RDI);
        regs = g_list_prepend (regs, (gpointer)AMD64_RSI);
@@ -1667,9 +1378,7 @@ mono_arch_get_iregs_clobbered_by_call (MonoCallInst *call)
                regs = g_list_prepend (regs, (gpointer)AMD64_R12);
                regs = g_list_prepend (regs, (gpointer)AMD64_R13);
                regs = g_list_prepend (regs, (gpointer)AMD64_R14);
-#ifndef __native_client_codegen__
                regs = g_list_prepend (regs, (gpointer)AMD64_R15);
-#endif
 
                regs = g_list_prepend (regs, (gpointer)AMD64_R10);
                regs = g_list_prepend (regs, (gpointer)AMD64_R9);
@@ -2248,6 +1957,7 @@ mono_arch_get_llvm_call_info (MonoCompile *cfg, MonoMethodSignature *sig)
                        t = sig->params [i - sig->hasthis];
                else
                        t = &mono_defaults.int_class->byval_arg;
+               t = mini_type_get_underlying_type (t);
 
                linfo->args [i].storage = LLVMArgNone;
 
@@ -2423,7 +2133,7 @@ mono_arch_emit_call (MonoCompile *cfg, MonoCallInst *call)
                                /* Continue normally */
                        }
 
-                       if (size > 0) {
+                       if (size > 0 || ainfo->pass_empty_struct) {
                                MONO_INST_NEW (cfg, arg, OP_OUTARG_VT);
                                arg->sreg1 = in->dreg;
                                arg->klass = mono_class_from_mono_type (t);
@@ -2521,21 +2231,28 @@ mono_arch_emit_outarg_vt (MonoCompile *cfg, MonoInst *ins, MonoInst *src)
                        if (ainfo->pair_storage [part] == ArgNone)
                                continue;
 
-                       MONO_INST_NEW (cfg, load, arg_storage_to_load_membase (ainfo->pair_storage [part]));
-                       load->inst_basereg = src->dreg;
-                       load->inst_offset = part * sizeof(mgreg_t);
+                       if (ainfo->pass_empty_struct) {
+                               //Pass empty struct value as 0 on platforms representing empty structs as 1 byte.
+                               NEW_ICONST (cfg, load, 0);
+                       }
+                       else {
+                               MONO_INST_NEW (cfg, load, arg_storage_to_load_membase (ainfo->pair_storage [part]));
+                               load->inst_basereg = src->dreg;
+                               load->inst_offset = part * sizeof(mgreg_t);
 
-                       switch (ainfo->pair_storage [part]) {
-                       case ArgInIReg:
-                               load->dreg = mono_alloc_ireg (cfg);
-                               break;
-                       case ArgInDoubleSSEReg:
-                       case ArgInFloatSSEReg:
-                               load->dreg = mono_alloc_freg (cfg);
-                               break;
-                       default:
-                               g_assert_not_reached ();
+                               switch (ainfo->pair_storage [part]) {
+                               case ArgInIReg:
+                                       load->dreg = mono_alloc_ireg (cfg);
+                                       break;
+                               case ArgInDoubleSSEReg:
+                               case ArgInFloatSSEReg:
+                                       load->dreg = mono_alloc_freg (cfg);
+                                       break;
+                               default:
+                                       g_assert_not_reached ();
+                               }
                        }
+
                        MONO_ADD_INS (cfg->cbb, load);
 
                        add_outarg_reg (cfg, call, ainfo->pair_storage [part], ainfo->pair_regs [part], load);
@@ -2638,15 +2355,12 @@ dyn_call_supported (MonoMethodSignature *sig, CallInfo *cinfo)
 {
        int i;
 
-#ifdef HOST_WIN32
-       return FALSE;
-#endif
-
        switch (cinfo->ret.storage) {
        case ArgNone:
        case ArgInIReg:
        case ArgInFloatSSEReg:
        case ArgInDoubleSSEReg:
+       case ArgValuetypeAddrInIReg:
                break;
        case ArgValuetypeInReg: {
                ArgInfo *ainfo = &cinfo->ret;
@@ -2674,6 +2388,10 @@ dyn_call_supported (MonoMethodSignature *sig, CallInfo *cinfo)
                        if (ainfo->pair_storage [1] != ArgNone && ainfo->pair_storage [1] != ArgInIReg)
                                return FALSE;
                        break;
+               case ArgOnStack:
+                       if (!(ainfo->offset + (ainfo->arg_size / 8) <= DYN_CALL_STACK_ARGS))
+                               return FALSE;
+                       break;
                default:
                        return FALSE;
                }
@@ -2725,14 +2443,8 @@ mono_arch_dyn_call_free (MonoDynCallInfo *info)
        g_free (ainfo);
 }
 
-#if !defined(__native_client__)
 #define PTR_TO_GREG(ptr) (mgreg_t)(ptr)
 #define GREG_TO_PTR(greg) (gpointer)(greg)
-#else
-/* Correctly handle casts to/from 32-bit pointers without compiler warnings */
-#define PTR_TO_GREG(ptr) (mgreg_t)(uintptr_t)(ptr)
-#define GREG_TO_PTR(greg) (gpointer)(guint32)(greg)
-#endif
 
 /*
  * mono_arch_get_start_dyn_call:
@@ -2756,6 +2468,15 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
        int arg_index, greg, freg, i, pindex;
        MonoMethodSignature *sig = dinfo->sig;
        int buffer_offset = 0;
+       static int param_reg_to_index [16];
+       static gboolean param_reg_to_index_inited;
+
+       if (!param_reg_to_index_inited) {
+               for (i = 0; i < PARAM_REGS; ++i)
+                       param_reg_to_index [param_regs [i]] = i;
+               mono_memory_barrier ();
+               param_reg_to_index_inited = 1;
+       }
 
        g_assert (buf_len >= sizeof (DynCallArgs));
 
@@ -2776,12 +2497,21 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
        if (dinfo->cinfo->ret.storage == ArgValuetypeAddrInIReg || dinfo->cinfo->ret.storage == ArgGsharedvtVariableInReg)
                p->regs [greg ++] = PTR_TO_GREG(ret);
 
-       for (i = pindex; i < sig->param_count; i++) {
-               MonoType *t = mini_get_underlying_type (sig->params [i]);
+       for (; pindex < sig->param_count; pindex++) {
+               MonoType *t = mini_get_underlying_type (sig->params [pindex]);
                gpointer *arg = args [arg_index ++];
+               ArgInfo *ainfo = &dinfo->cinfo->args [pindex + sig->hasthis];
+               int slot;
+
+               if (ainfo->storage == ArgOnStack) {
+                       slot = PARAM_REGS + (ainfo->offset / sizeof (mgreg_t));
+               } else {
+                       slot = param_reg_to_index [ainfo->reg];
+               }
 
                if (t->byref) {
-                       p->regs [greg ++] = PTR_TO_GREG(*(arg));
+                       p->regs [slot] = PTR_TO_GREG(*(arg));
+                       greg ++;
                        continue;
                }
 
@@ -2798,33 +2528,31 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
                case MONO_TYPE_I8:
                case MONO_TYPE_U8:
 #endif
-                       g_assert (dinfo->cinfo->args [i + sig->hasthis].reg == param_regs [greg]);
-                       p->regs [greg ++] = PTR_TO_GREG(*(arg));
+                       p->regs [slot] = PTR_TO_GREG(*(arg));
                        break;
 #if defined(__mono_ilp32__)
                case MONO_TYPE_I8:
                case MONO_TYPE_U8:
-                       g_assert (dinfo->cinfo->args [i + sig->hasthis].reg == param_regs [greg]);
-                       p->regs [greg ++] = *(guint64*)(arg);
+                       p->regs [slot] = *(guint64*)(arg);
                        break;
 #endif
                case MONO_TYPE_U1:
-                       p->regs [greg ++] = *(guint8*)(arg);
+                       p->regs [slot] = *(guint8*)(arg);
                        break;
                case MONO_TYPE_I1:
-                       p->regs [greg ++] = *(gint8*)(arg);
+                       p->regs [slot] = *(gint8*)(arg);
                        break;
                case MONO_TYPE_I2:
-                       p->regs [greg ++] = *(gint16*)(arg);
+                       p->regs [slot] = *(gint16*)(arg);
                        break;
                case MONO_TYPE_U2:
-                       p->regs [greg ++] = *(guint16*)(arg);
+                       p->regs [slot] = *(guint16*)(arg);
                        break;
                case MONO_TYPE_I4:
-                       p->regs [greg ++] = *(gint32*)(arg);
+                       p->regs [slot] = *(gint32*)(arg);
                        break;
                case MONO_TYPE_U4:
-                       p->regs [greg ++] = *(guint32*)(arg);
+                       p->regs [slot] = *(guint32*)(arg);
                        break;
                case MONO_TYPE_R4: {
                        double d;
@@ -2840,7 +2568,7 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
                        break;
                case MONO_TYPE_GENERICINST:
                    if (MONO_TYPE_IS_REFERENCE (t)) {
-                               p->regs [greg ++] = PTR_TO_GREG(*(arg));
+                               p->regs [slot] = PTR_TO_GREG(*(arg));
                                break;
                        } else if (t->type == MONO_TYPE_GENERICINST && mono_class_is_nullable (mono_class_from_mono_type (t))) {
                                        MonoClass *klass = mono_class_from_mono_type (t);
@@ -2862,16 +2590,26 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
                                /* Fall through */
                        }
                case MONO_TYPE_VALUETYPE: {
-                       ArgInfo *ainfo = &dinfo->cinfo->args [i + sig->hasthis];
-
-                       g_assert (ainfo->storage == ArgValuetypeInReg);
-                       if (ainfo->pair_storage [0] != ArgNone) {
-                               g_assert (ainfo->pair_storage [0] == ArgInIReg);
-                               p->regs [greg ++] = ((mgreg_t*)(arg))[0];
-                       }
-                       if (ainfo->pair_storage [1] != ArgNone) {
-                               g_assert (ainfo->pair_storage [1] == ArgInIReg);
-                               p->regs [greg ++] = ((mgreg_t*)(arg))[1];
+                       switch (ainfo->storage) {
+                       case ArgValuetypeInReg:
+                               if (ainfo->pair_storage [0] != ArgNone) {
+                                       slot = param_reg_to_index [ainfo->pair_regs [0]];
+                                       g_assert (ainfo->pair_storage [0] == ArgInIReg);
+                                       p->regs [slot] = ((mgreg_t*)(arg))[0];
+                               }
+                               if (ainfo->pair_storage [1] != ArgNone) {
+                                       slot = param_reg_to_index [ainfo->pair_regs [1]];
+                                       g_assert (ainfo->pair_storage [1] == ArgInIReg);
+                                       p->regs [slot] = ((mgreg_t*)(arg))[1];
+                               }
+                               break;
+                       case ArgOnStack:
+                               for (i = 0; i < ainfo->arg_size / 8; ++i)
+                                       p->regs [slot + i] = ((mgreg_t*)(arg))[i];
+                               break;
+                       default:
+                               g_assert_not_reached ();
+                               break;
                        }
                        break;
                }
@@ -2879,8 +2617,6 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
                        g_assert_not_reached ();
                }
        }
-
-       g_assert (greg <= PARAM_REGS);
 }
 
 /*
@@ -3088,10 +2824,6 @@ emit_call_body (MonoCompile *cfg, guint8 *code, MonoJumpInfoType patch_type, gco
 
 #ifdef MONO_ARCH_NOMAP32BIT
                near_call = FALSE;
-#endif
-#if defined(__native_client__)
-               /* Always use near_call == TRUE for Native Client */
-               near_call = TRUE;
 #endif
                /* The 64bit XEN kernel does not honour the MAP_32BIT flag. (#522894) */
                if (optimize_for_xen)
@@ -3374,7 +3106,6 @@ mono_arch_lowering_pass (MonoCompile *cfg, MonoBasicBlock *bb)
                case OP_LOAD_MEMBASE:
 #endif
                case OP_LOADI8_MEMBASE:
-#ifndef __native_client_codegen__
                /*  Don't generate memindex opcodes (to simplify */
                /*  read sandboxing) */
                        if (!amd64_use_imm32 (ins->inst_offset)) {
@@ -3384,7 +3115,6 @@ mono_arch_lowering_pass (MonoCompile *cfg, MonoBasicBlock *bb)
                                ins->opcode = OP_AMD64_LOADI8_MEMINDEX;
                                ins->inst_indexreg = temp->dreg;
                        }
-#endif
                        break;
 #ifndef __mono_ilp32__
                case OP_STORE_MEMBASE_IMM:
@@ -3545,20 +3275,8 @@ mono_emit_stack_alloc (MonoCompile *cfg, guchar *code, MonoInst* tree)
                if (cfg->param_area)
                        amd64_alu_reg_imm (code, X86_ADD, AMD64_RDI, cfg->param_area);
                amd64_cld (code);
-#if defined(__default_codegen__)
                amd64_prefix (code, X86_REP_PREFIX);
                amd64_stosl (code);
-#elif defined(__native_client_codegen__)
-               /* NaCl stos pseudo-instruction */
-               amd64_codegen_pre(code);
-               /* First, clear the upper 32 bits of RDI (mov %edi, %edi)  */
-               amd64_mov_reg_reg (code, AMD64_RDI, AMD64_RDI, 4);
-               /* Add %r15 to %rdi using lea, condition flags unaffected. */
-               amd64_lea_memindex_size (code, AMD64_RDI, AMD64_R15, 0, AMD64_RDI, 0, 8);
-               amd64_prefix (code, X86_REP_PREFIX);
-               amd64_stosl (code);
-               amd64_codegen_post(code);
-#endif /* __native_client_codegen__ */
                
                if (tree->dreg != AMD64_RDI && sreg != AMD64_RDI)
                        amd64_pop_reg (code, AMD64_RDI);
@@ -3780,6 +3498,73 @@ mono_amd64_emit_tls_get (guint8* code, int dreg, int tls_offset)
        return code;
 }
 
+#ifdef TARGET_WIN32
+
+#define MAX_TEB_TLS_SLOTS 64
+#define TEB_TLS_SLOTS_OFFSET 0x1480
+#define TEB_TLS_EXPANSION_SLOTS_OFFSET 0x1780
+
+static guint8*
+emit_tls_get_reg_windows (guint8* code, int dreg, int offset_reg)
+{
+       int tmp_reg = -1;
+       guint8 * more_than_64_slots = NULL;
+       guint8 * empty_slot = NULL;
+       guint8 * tls_get_reg_done = NULL;
+       
+       //Use temporary register for offset calculation?
+       if (dreg == offset_reg) {
+               tmp_reg = dreg == AMD64_RAX ? AMD64_RCX : AMD64_RAX;
+               amd64_push_reg (code, tmp_reg);
+               amd64_mov_reg_reg (code, tmp_reg, offset_reg, sizeof (gpointer));
+               offset_reg = tmp_reg;
+       }
+
+       //TEB TLS slot array only contains MAX_TEB_TLS_SLOTS items, if more is used the expansion slots must be addressed.
+       amd64_alu_reg_imm (code, X86_CMP, offset_reg, MAX_TEB_TLS_SLOTS);
+       more_than_64_slots = code;
+       amd64_branch8 (code, X86_CC_GE, 0, TRUE);
+
+       //TLS slot array, _TEB.TlsSlots, is at offset TEB_TLS_SLOTS_OFFSET and index is offset * 8 in Windows 64-bit _TEB structure.
+       amd64_shift_reg_imm (code, X86_SHL, offset_reg, 3);
+       amd64_alu_reg_imm (code, X86_ADD, offset_reg, TEB_TLS_SLOTS_OFFSET);
+
+       //TEB pointer is stored in GS segment register on Windows x64. TLS slot is located at calculated offset from that pointer.
+       x86_prefix (code, X86_GS_PREFIX);
+       amd64_mov_reg_membase (code, dreg, offset_reg, 0, sizeof (gpointer));
+               
+       tls_get_reg_done = code;
+       amd64_jump8 (code, 0);
+
+       amd64_patch (more_than_64_slots, code);
+
+       //TLS expansion slots, _TEB.TlsExpansionSlots, is at offset TEB_TLS_EXPANSION_SLOTS_OFFSET in Windows 64-bit _TEB structure.
+       x86_prefix (code, X86_GS_PREFIX);
+       amd64_mov_reg_mem (code, dreg, TEB_TLS_EXPANSION_SLOTS_OFFSET, sizeof (gpointer));
+       
+       //Check for NULL in _TEB.TlsExpansionSlots.
+       amd64_test_reg_reg (code, dreg, dreg);
+       empty_slot = code;
+       amd64_branch8 (code, X86_CC_EQ, 0, TRUE);
+       
+       //TLS expansion slots are at index offset into the expansion array.
+       //Calculate for the MAX_TEB_TLS_SLOTS offsets, since the interessting offset is offset_reg - MAX_TEB_TLS_SLOTS.
+       amd64_alu_reg_imm (code, X86_SUB, offset_reg, MAX_TEB_TLS_SLOTS);
+       amd64_shift_reg_imm (code, X86_SHL, offset_reg, 3);
+       
+       amd64_mov_reg_memindex (code, dreg, dreg, 0, offset_reg, 0, sizeof (gpointer));
+       
+       amd64_patch (empty_slot, code);
+       amd64_patch (tls_get_reg_done, code);
+
+       if (tmp_reg != -1)
+               amd64_pop_reg (code, tmp_reg);
+
+       return code;
+}
+
+#endif
+
 static guint8*
 emit_tls_get_reg (guint8* code, int dreg, int offset_reg)
 {
@@ -3804,6 +3589,8 @@ emit_tls_get_reg (guint8* code, int dreg, int offset_reg)
        amd64_mov_reg_memindex (code, dreg, dreg, 0, offset_reg, 0, 8);
        if (tmpreg != -1)
                amd64_mov_reg_membase (code, tmpreg, AMD64_RSP, -8, 8);
+#elif defined(TARGET_WIN32)
+       code = emit_tls_get_reg_windows (code, dreg, offset_reg);
 #else
        g_assert_not_reached ();
 #endif
@@ -3924,21 +3711,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                }
        }
 
-#if defined(__native_client_codegen__)
-       /* For Native Client, all indirect call/jump targets must be */
-       /* 32-byte aligned.  Exception handler blocks are jumped to  */
-       /* indirectly as well.                                       */
-       gboolean bb_needs_alignment = (bb->flags & BB_INDIRECT_JUMP_TARGET) ||
-                                     (bb->flags & BB_EXCEPTION_HANDLER);
-
-       if ( bb_needs_alignment && ((cfg->code_len & kNaClAlignmentMask) != 0)) {
-               int pad = kNaClAlignment - (cfg->code_len & kNaClAlignmentMask);
-               if (pad != kNaClAlignment) code = mono_arch_nacl_pad(code, pad);
-               cfg->code_len += pad;
-               bb->native_offset = cfg->code_len;
-       }
-#endif  /*__native_client_codegen__*/
-
        if (cfg->verbose_level > 2)
                g_print ("Basic block %d starting at offset 0x%x\n", bb->block_num, bb->native_offset);
 
@@ -3964,7 +3736,7 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
 
                max_len = ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
 
-#define EXTRA_CODE_SPACE (NACL_SIZE (16, 16 + kNaClAlignment))
+#define EXTRA_CODE_SPACE (16)
 
                if (G_UNLIKELY (offset > (cfg->code_size - max_len - EXTRA_CODE_SPACE))) {
                        cfg->code_size *= 2;
@@ -4013,14 +3785,12 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        amd64_mov_membase_reg (code, ins->inst_destbasereg, ins->inst_offset, ins->sreg1, 4);
                        break;
                case OP_STORE_MEMBASE_IMM:
-#ifndef __native_client_codegen__
                        /* In NaCl, this could be a PCONST type, which could */
                        /* mean a pointer type was copied directly into the  */
                        /* lower 32-bits of inst_imm, so for InvalidPtr==-1  */
                        /* the value would be 0x00000000FFFFFFFF which is    */
                        /* not proper for an imm32 unless you cast it.       */
                        g_assert (amd64_is_imm32 (ins->inst_imm));
-#endif
                        amd64_mov_membase_imm (code, ins->inst_destbasereg, ins->inst_offset, (gint32)ins->inst_imm, sizeof(gpointer));
                        break;
                case OP_STOREI8_MEMBASE_IMM:
@@ -4493,10 +4263,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                }
                case OP_LDIV:
                case OP_LREM:
-#if defined( __native_client_codegen__ )
-                       amd64_alu_reg_imm (code, X86_CMP, ins->sreg2, 0);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        /* Regalloc magic makes the div/rem cases the same */
                        if (ins->sreg2 == AMD64_RDX) {
                                amd64_mov_membase_reg (code, AMD64_RSP, -8, AMD64_RDX, 8);
@@ -4509,10 +4275,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                case OP_LDIV_UN:
                case OP_LREM_UN:
-#if defined( __native_client_codegen__ )
-                       amd64_alu_reg_imm (code, X86_CMP, ins->sreg2, 0);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        if (ins->sreg2 == AMD64_RDX) {
                                amd64_mov_membase_reg (code, AMD64_RSP, -8, AMD64_RDX, 8);
                                amd64_alu_reg_reg (code, X86_XOR, AMD64_RDX, AMD64_RDX);
@@ -4524,10 +4286,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                case OP_IDIV:
                case OP_IREM:
-#if defined( __native_client_codegen__ )
-                       amd64_alu_reg_imm (code, X86_CMP, ins->sreg2, 0);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        if (ins->sreg2 == AMD64_RDX) {
                                amd64_mov_membase_reg (code, AMD64_RSP, -8, AMD64_RDX, 8);
                                amd64_cdq_size (code, 4);
@@ -4539,10 +4297,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                case OP_IDIV_UN:
                case OP_IREM_UN:
-#if defined( __native_client_codegen__ )
-                       amd64_alu_reg_imm_size (code, X86_CMP, ins->sreg2, 0, 4);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        if (ins->sreg2 == AMD64_RDX) {
                                amd64_mov_membase_reg (code, AMD64_RSP, -8, AMD64_RDX, 8);
                                amd64_alu_reg_reg (code, X86_XOR, AMD64_RDX, AMD64_RDX);
@@ -4990,6 +4744,12 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                amd64_sse_movsd_reg_membase (code, i, AMD64_R11, MONO_STRUCT_OFFSET (DynCallArgs, fregs) + (i * sizeof (double)));
                        amd64_patch (label, code);
 
+                       /* Set stack args */
+                       for (i = 0; i < DYN_CALL_STACK_ARGS; ++i) {
+                               amd64_mov_reg_membase (code, AMD64_RAX, AMD64_R11, MONO_STRUCT_OFFSET (DynCallArgs, regs) + ((PARAM_REGS + i) * sizeof(mgreg_t)), sizeof(mgreg_t));
+                               amd64_mov_membase_reg (code, AMD64_RSP, i * sizeof (mgreg_t), AMD64_RAX, sizeof (mgreg_t));
+                       }
+
                        /* Set argument registers */
                        for (i = 0; i < PARAM_REGS; ++i)
                                amd64_mov_reg_membase (code, param_regs [i], AMD64_R11, i * sizeof(mgreg_t), sizeof(mgreg_t));
@@ -6730,22 +6490,13 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                }
                case OP_GC_SAFE_POINT: {
-                       const char *polling_func = NULL;
-                       int compare_val = 0;
                        guint8 *br [1];
 
-#if defined(__native_client_codegen__) && defined(__native_client_gc__)
-                       polling_func = "mono_nacl_gc";
-                       compare_val = 0xFFFFFFFF;
-#else
                        g_assert (mono_threads_is_coop_enabled ());
-                       polling_func = "mono_threads_state_poll";
-                       compare_val = 1;
-#endif
 
-                       amd64_test_membase_imm_size (code, ins->sreg1, 0, compare_val, 4);
+                       amd64_test_membase_imm_size (code, ins->sreg1, 0, 1, 4);
                        br[0] = code; x86_branch8 (code, X86_CC_EQ, 0, FALSE);
-                       code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD, polling_func, FALSE);
+                       code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD, "mono_threads_state_poll", FALSE);
                        amd64_patch (br[0], code);
                        break;
                }
@@ -6765,11 +6516,9 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                }
 
                if ((code - cfg->native_code - offset) > max_len) {
-#if !defined(__native_client_codegen__)
                        g_warning ("wrong maximal instruction length of instruction %s (expected %d, got %ld)",
                                   mono_inst_name (ins->opcode), max_len, code - cfg->native_code - offset);
                        g_assert_not_reached ();
-#endif
                }
        }
 
@@ -6863,27 +6612,10 @@ mono_arch_emit_prolog (MonoCompile *cfg)
        MonoInst *lmf_var = cfg->lmf_var;
        gboolean args_clobbered = FALSE;
        gboolean trace = FALSE;
-#ifdef __native_client_codegen__
-       guint alignment_check;
-#endif
 
        cfg->code_size = MAX (cfg->header->code_size * 4, 1024);
 
-#if defined(__default_codegen__)
        code = cfg->native_code = (unsigned char *)g_malloc (cfg->code_size);
-#elif defined(__native_client_codegen__)
-       /* native_code_alloc is not 32-byte aligned, native_code is. */
-       cfg->native_code_alloc = g_malloc (cfg->code_size + kNaClAlignment);
-
-       /* Align native_code to next nearest kNaclAlignment byte. */
-       cfg->native_code = (uintptr_t)cfg->native_code_alloc + kNaClAlignment;
-       cfg->native_code = (uintptr_t)cfg->native_code & ~kNaClAlignmentMask;
-
-       code = cfg->native_code;
-
-       alignment_check = (guint)cfg->native_code & kNaClAlignmentMask;
-       g_assert (alignment_check == 0);
-#endif
 
        if (mono_jit_trace_calls != NULL && mono_trace_eval (method))
                trace = TRUE;
@@ -7050,20 +6782,8 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                amd64_mov_reg_reg (code, AMD64_RDI, AMD64_RSP, 8);
 
                amd64_cld (code);
-#if defined(__default_codegen__)
                amd64_prefix (code, X86_REP_PREFIX);
                amd64_stosl (code);
-#elif defined(__native_client_codegen__)
-               /* NaCl stos pseudo-instruction */
-               amd64_codegen_pre (code);
-               /* First, clear the upper 32 bits of RDI (mov %edi, %edi)  */
-               amd64_mov_reg_reg (code, AMD64_RDI, AMD64_RDI, 4);
-               /* Add %r15 to %rdi using lea, condition flags unaffected. */
-               amd64_lea_memindex_size (code, AMD64_RDI, AMD64_R15, 0, AMD64_RDI, 0, 8);
-               amd64_prefix (code, X86_REP_PREFIX);
-               amd64_stosl (code);
-               amd64_codegen_post (code);
-#endif /* __native_client_codegen__ */
 
                amd64_mov_reg_membase (code, AMD64_RDI, AMD64_RSP, -8, 8);
                amd64_mov_reg_membase (code, AMD64_RCX, AMD64_RSP, -16, 8);
@@ -7125,22 +6845,8 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                        /* max alignment for loops */
                        if ((cfg->opt & MONO_OPT_LOOP) && bb_is_loop_start (bb))
                                max_length += LOOP_ALIGNMENT;
-#ifdef __native_client_codegen__
-                       /* max alignment for native client */
-                       max_length += kNaClAlignment;
-#endif
 
                        MONO_BB_FOR_EACH_INS (bb, ins) {
-#ifdef __native_client_codegen__
-                               {
-                                       int space_in_block = kNaClAlignment -
-                                               ((max_length + cfg->code_len) & kNaClAlignmentMask);
-                                       int max_len = ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
-                                       if (space_in_block < max_len && max_len < kNaClAlignment) {
-                                               max_length += space_in_block;
-                                       }
-                               }
-#endif  /*__native_client_codegen__*/
                                max_length += ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
                        }
 
@@ -7523,13 +7229,6 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                        code_size += 8 + 7; /*sizeof (void*) + alignment */
        }
 
-#ifdef __native_client_codegen__
-       /* Give us extra room on Native Client.  This could be   */
-       /* more carefully calculated, but bundle alignment makes */
-       /* it much trickier, so *2 like other places is good.    */
-       code_size *= 2;
-#endif
-
        while (cfg->code_len + code_size > (cfg->code_size - 16)) {
                cfg->code_size *= 2;
                cfg->native_code = (unsigned char *)mono_realloc_native_code (cfg);
@@ -7607,32 +7306,7 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                        guint32 target_pos;
 
                        /* The SSE opcodes require a 16 byte alignment */
-#if defined(__default_codegen__)
                        code = (guint8*)ALIGN_TO (code, 16);
-#elif defined(__native_client_codegen__)
-                       {
-                               /* Pad this out with HLT instructions  */
-                               /* or we can get garbage bytes emitted */
-                               /* which will fail validation          */
-                               guint8 *aligned_code;
-                               /* extra align to make room for  */
-                               /* mov/push below                      */
-                               int extra_align = patch_info->type == MONO_PATCH_INFO_R8 ? 2 : 1;
-                               aligned_code = (guint8*)ALIGN_TO (code + extra_align, 16);
-                               /* The technique of hiding data in an  */
-                               /* instruction has a problem here: we  */
-                               /* need the data aligned to a 16-byte  */
-                               /* boundary but the instruction cannot */
-                               /* cross the bundle boundary. so only  */
-                               /* odd multiples of 16 can be used     */
-                               if ((intptr_t)aligned_code % kNaClAlignment == 0) {
-                                       aligned_code += 16;
-                               }
-                               while (code < aligned_code) {
-                                       *(code++) = 0xf4; /* hlt */
-                               }
-                       }       
-#endif
 
                        pos = cfg->native_code + patch_info->ip.i;
                        if (IS_REX (pos [1])) {
@@ -7645,22 +7319,9 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                        }
 
                        if (patch_info->type == MONO_PATCH_INFO_R8) {
-#ifdef __native_client_codegen__
-                               /* Hide 64-bit data in a         */
-                               /* "mov imm64, r11" instruction. */
-                               /* write it before the start of  */
-                               /* the data*/
-                               *(code-2) = 0x49; /* prefix      */
-                               *(code-1) = 0xbb; /* mov X, %r11 */
-#endif
                                *(double*)code = *(double*)patch_info->data.target;
                                code += sizeof (double);
                        } else {
-#ifdef __native_client_codegen__
-                               /* Hide 32-bit data in a        */
-                               /* "push imm32" instruction.    */
-                               *(code-1) = 0x68; /* push */
-#endif
                                *(float*)code = *(float*)patch_info->data.target;
                                code += sizeof (float);
                        }
@@ -7969,46 +7630,6 @@ mono_breakpoint_clean_code (guint8 *method_start, guint8 *code, int offset, guin
        return TRUE;
 }
 
-#if defined(__native_client_codegen__)
-/* For membase calls, we want the base register. for Native Client,  */
-/* all indirect calls have the following sequence with the given sizes: */
-/* mov %eXX,%eXX                               [2-3]   */
-/* mov disp(%r15,%rXX,scale),%r11d             [4-8]   */
-/* and $0xffffffffffffffe0,%r11d               [4]     */
-/* add %r15,%r11                               [3]     */
-/* callq *%r11                                 [3]     */
-
-
-/* Determine if code points to a NaCl call-through-register sequence, */
-/* (i.e., the last 3 instructions listed above) */
-int
-is_nacl_call_reg_sequence(guint8* code)
-{
-       const char *sequence = "\x41\x83\xe3\xe0" /* and */
-                              "\x4d\x03\xdf"     /* add */
-                              "\x41\xff\xd3";   /* call */
-       return memcmp(code, sequence, 10) == 0;
-}
-
-/* Determine if code points to the first opcode of the mov membase component */
-/* of an indirect call sequence (i.e. the first 2 instructions listed above) */
-/* (there could be a REX prefix before the opcode but it is ignored) */
-static int
-is_nacl_indirect_call_membase_sequence(guint8* code)
-{
-              /* Check for mov opcode, reg-reg addressing mode (mod = 3), */
-       return code[0] == 0x8b && amd64_modrm_mod(code[1]) == 3 &&
-              /* and that src reg = dest reg */
-              amd64_modrm_reg(code[1]) == amd64_modrm_rm(code[1]) &&
-              /* Check that next inst is mov, uses SIB byte (rm = 4), */
-              IS_REX(code[2]) &&
-              code[3] == 0x8b && amd64_modrm_rm(code[4]) == 4 &&
-              /* and has dst of r11 and base of r15 */
-              (amd64_modrm_reg(code[4]) + amd64_rex_r(code[2])) == AMD64_R11 &&
-              (amd64_sib_base(code[5]) + amd64_rex_b(code[2])) == AMD64_R15;
-}
-#endif /* __native_client_codegen__ */
-
 int
 mono_arch_get_this_arg_reg (guint8 *code)
 {
@@ -8065,7 +7686,6 @@ get_delegate_invoke_impl (MonoTrampInfo **info, gboolean has_target, guint32 par
                g_assert ((code - start) < 64);
        }
 
-       nacl_global_codeman_validate (&start, 64, &code);
        mono_arch_flush_icache (start, code - start);
 
        if (has_target) {
@@ -8249,7 +7869,6 @@ mono_arch_free_jit_tls_data (MonoJitTlsData *tls)
 {
 }
 
-#if defined(__default_codegen__)
 #define CMP_SIZE (6 + 1)
 #define CMP_REG_REG_SIZE (4 + 1)
 #define BR_SMALL_SIZE 2
@@ -8257,20 +7876,6 @@ mono_arch_free_jit_tls_data (MonoJitTlsData *tls)
 #define MOV_REG_IMM_SIZE 10
 #define MOV_REG_IMM_32BIT_SIZE 6
 #define JUMP_REG_SIZE (2 + 1)
-#elif defined(__native_client_codegen__)
-/* NaCl N-byte instructions can be padded up to N-1 bytes */
-#define CMP_SIZE ((6 + 1) * 2 - 1)
-#define CMP_REG_REG_SIZE ((4 + 1) * 2 - 1)
-#define BR_SMALL_SIZE (2 * 2 - 1)
-#define BR_LARGE_SIZE (6 * 2 - 1)
-#define MOV_REG_IMM_SIZE (10 * 2 - 1)
-#define MOV_REG_IMM_32BIT_SIZE (6 * 2 - 1)
-/* Jump reg for NaCl adds a mask (+4) and add (+3) */
-#define JUMP_REG_SIZE ((2 + 1 + 4 + 3) * 2 - 1)
-/* Jump membase's size is large and unpredictable    */
-/* in native client, just pad it out a whole bundle. */
-#define JUMP_MEMBASE_SIZE (kNaClAlignment)
-#endif
 
 static int
 imt_branch_distance (MonoIMTCheckItem **imt_entries, int start, int target)
@@ -8311,9 +7916,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                                item->chunk_size += MOV_REG_IMM_32BIT_SIZE;
                                        else
                                                item->chunk_size += MOV_REG_IMM_SIZE;
-#ifdef __native_client_codegen__
-                                       item->chunk_size += JUMP_MEMBASE_SIZE;
-#endif
                                }
                                item->chunk_size += BR_SMALL_SIZE + JUMP_REG_SIZE;
                        } else {
@@ -8329,9 +7931,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                        /* with assert below:
                                         * item->chunk_size += CMP_SIZE + BR_SMALL_SIZE + 1;
                                         */
-#ifdef __native_client_codegen__
-                                       item->chunk_size += JUMP_MEMBASE_SIZE;
-#endif
                                }
                        }
                } else {
@@ -8344,16 +7943,10 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                }
                size += item->chunk_size;
        }
-#if defined(__native_client__) && defined(__native_client_codegen__)
-       /* In Native Client, we don't re-use thunks, allocate from the */
-       /* normal code manager paths. */
-       code = mono_domain_code_reserve (domain, size);
-#else
        if (fail_tramp)
                code = (guint8 *)mono_method_alloc_generic_virtual_thunk (domain, size);
        else
                code = (guint8 *)mono_domain_code_reserve (domain, size);
-#endif
        start = code;
 
        unwind_ops = mono_arch_get_cie_program ();
@@ -8445,7 +8038,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                mono_stats.imt_thunks_size += code - start;
        g_assert (code - start <= size);
 
-       nacl_domain_code_validate(domain, &start, size, &code);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_IMT_TRAMPOLINE, NULL);
 
        mono_tramp_info_register (mono_tramp_info_create (NULL, start, code - start, NULL, unwind_ops), domain);
index 1d04234c1785f7d5eb0045764bc3212a81cdfc42..11fc30a435f28b08366bd6cae009fe21602147d4 100644 (file)
@@ -6,26 +6,6 @@
 #include <mono/utils/mono-context.h>
 #include <glib.h>
 
-#ifdef __native_client_codegen__
-#define kNaClAlignmentAMD64 32
-#define kNaClAlignmentMaskAMD64 (kNaClAlignmentAMD64 - 1)
-
-/* TODO: use kamd64NaClLengthOfCallImm    */
-/* temporarily using kNaClAlignmentAMD64 so padding in */
-/* image-writer.c doesn't happen                       */
-#define kNaClLengthOfCallImm kNaClAlignmentAMD64
-
-int is_nacl_call_reg_sequence (guint8* code);
-void amd64_nacl_clear_legacy_prefix_tag ();
-void amd64_nacl_tag_legacy_prefix (guint8* code);
-void amd64_nacl_tag_rex (guint8* code);
-guint8* amd64_nacl_get_legacy_prefix_tag ();
-guint8* amd64_nacl_get_rex_tag ();
-void amd64_nacl_instruction_pre ();
-void amd64_nacl_instruction_post (guint8 **start, guint8 **end);
-void amd64_nacl_membase_handler (guint8** code, gint8 basereg, gint32 offset, gint8 dreg);
-#endif
-
 #ifdef HOST_WIN32
 #include <windows.h>
 /* use SIG* defines if possible */
@@ -175,13 +155,7 @@ struct MonoLMF {
         * the 'rbp' field is not valid.
         */
        gpointer    previous_lmf;
-#if defined(__default_codegen__) || defined(HOST_WIN32)
        guint64     rip;
-#elif defined(__native_client_codegen__)
-       /* On 64-bit compilers, default alignment is 8 for this field, */
-       /* this allows the structure to match for 32-bit compilers.    */
-       guint64     rip __attribute__ ((aligned(8)));
-#endif
        guint64     rbp;
        guint64     rsp;
 };
@@ -256,8 +230,10 @@ typedef struct {
        gpointer bp_addrs [MONO_ZERO_LEN_ARRAY];
 } SeqPointInfo;
 
+#define DYN_CALL_STACK_ARGS 6
+
 typedef struct {
-       mgreg_t regs [PARAM_REGS];
+       mgreg_t regs [PARAM_REGS + DYN_CALL_STACK_ARGS];
        mgreg_t res;
        guint8 *ret;
        double fregs [8];
@@ -293,6 +269,7 @@ typedef struct {
        int nregs;
        /* Only if storage == ArgOnStack */
        int arg_size; // Bytes, will always be rounded up/aligned to 8 byte boundary
+       gboolean pass_empty_struct; // Set in scenarios when empty structs needs to be represented as argument.
 } ArgInfo;
 
 typedef struct {
@@ -349,7 +326,7 @@ typedef struct {
  */
 #define MONO_ARCH_VARARG_ICALLS 1
 
-#if (!defined( HOST_WIN32 ) && !defined(__native_client__) && !defined(__native_client_codegen__)) && defined (HAVE_SIGACTION)
+#if !defined( HOST_WIN32 ) && defined (HAVE_SIGACTION)
 
 #define MONO_ARCH_USE_SIGACTION 1
 
@@ -359,7 +336,7 @@ typedef struct {
 
 #endif
 
-#endif /* !HOST_WIN32 && !__native_client__ */
+#endif /* !HOST_WIN32 */
 
 #if !defined(__linux__)
 #define MONO_ARCH_NOMAP32BIT 1
@@ -406,15 +383,13 @@ typedef struct {
 #define MONO_ARCH_HAVE_GET_TRAMPOLINES 1
 
 #define MONO_ARCH_AOT_SUPPORTED 1
-#if !defined( __native_client__ )
 #define MONO_ARCH_SOFT_DEBUG_SUPPORTED 1
-#endif
 
 #define MONO_ARCH_SUPPORT_TASKLETS 1
 
 #define MONO_ARCH_GSHARED_SUPPORTED 1
 #define MONO_ARCH_DYN_CALL_SUPPORTED 1
-#define MONO_ARCH_DYN_CALL_PARAM_AREA 0
+#define MONO_ARCH_DYN_CALL_PARAM_AREA (DYN_CALL_STACK_ARGS * 8)
 
 #define MONO_ARCH_LLVM_SUPPORTED 1
 #define MONO_ARCH_HAVE_HANDLER_BLOCK_GUARD 1
@@ -430,18 +405,17 @@ typedef struct {
 #define MONO_ARCH_HAVE_SDB_TRAMPOLINES 1
 #define MONO_ARCH_HAVE_PATCH_CODE_NEW 1
 #define MONO_ARCH_HAVE_OP_GENERIC_CLASS_INIT 1
+#define MONO_ARCH_HAVE_GENERAL_RGCTX_LAZY_FETCH_TRAMPOLINE 1
 
 #if defined(TARGET_OSX) || defined(__linux__)
 #define MONO_ARCH_HAVE_UNWIND_BACKTRACE 1
 #endif
 
-#if defined(TARGET_OSX) || defined(__linux__)
+#if defined(TARGET_OSX) || defined(__linux__) || defined(TARGET_WIN32)
 #define MONO_ARCH_HAVE_TLS_GET_REG 1
 #endif
 
-#if !defined (TARGET_WIN32)
 #define MONO_ARCH_GSHAREDVT_SUPPORTED 1
-#endif
 
 
 #if defined(TARGET_APPLETVOS)
index aef522b28560b891cdca760f376ac4224b40a2e0..2c7f8812a699661bd095a63d227419d1b91f112e 100644 (file)
@@ -121,6 +121,7 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
        MonoMethodSignature *caller_sig, *callee_sig;
        int aindex, i;
        gboolean var_ret = FALSE;
+       gboolean have_fregs = FALSE;
        CallInfo *cinfo, *gcinfo;
        MonoMethodSignature *sig, *gsig;
        GPtrArray *map;
@@ -191,6 +192,11 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
                int *src = NULL, *dst = NULL;
                int nsrc, ndst, nslots, src_slot, arg_marshal;
 
+               if (ainfo->storage == RegTypeFP || ainfo2->storage == RegTypeFP) {
+                       have_fregs = TRUE;
+                       continue;
+               }
+
                /*
                 * The src descriptor looks like this:
                 * - 4 bits src slot
@@ -298,11 +304,17 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
                        info->ret_marshal = GSHAREDVT_RET_IREGS;
                        break;
                case RegTypeFP:
-                       // FIXME: VFP
-                       if (cinfo->ret.size == 4)
-                               info->ret_marshal = GSHAREDVT_RET_IREG;
-                       else
-                               info->ret_marshal = GSHAREDVT_RET_IREGS;
+                       if (mono_arm_is_hard_float ()) {
+                               if (cinfo->ret.size == 4)
+                                       info->ret_marshal = GSHAREDVT_RET_VFP_R4;
+                               else
+                                       info->ret_marshal = GSHAREDVT_RET_VFP_R8;
+                       } else {
+                               if (cinfo->ret.size == 4)
+                                       info->ret_marshal = GSHAREDVT_RET_IREG;
+                               else
+                                       info->ret_marshal = GSHAREDVT_RET_IREGS;
+                       }
                        break;
                case RegTypeStructByAddr:
                        info->ret_marshal = GSHAREDVT_RET_NONE;
@@ -319,11 +331,11 @@ mono_arch_get_gsharedvt_call_info (gpointer addr, MonoMethodSignature *normal_si
        }
 
        info->stack_usage = ALIGN_TO (info->stack_usage, MONO_ARCH_FRAME_ALIGNMENT);
-
-       g_free (caller_cinfo);
-       g_free (callee_cinfo);
+       info->caller_cinfo = caller_cinfo;
+       info->callee_cinfo = callee_cinfo;
+       info->have_fregs = have_fregs;
 
        return info;
 }
 
-#endif
\ No newline at end of file
+#endif
index 86d4e123919cb97908c28153de6b512f1bc5d644..4fbe7c06c0886c91d4418f029b016f019d6f2339 100644 (file)
@@ -20,6 +20,7 @@
 #include <mono/utils/mono-mmap.h>
 #include <mono/utils/mono-hwcap-arm.h>
 #include <mono/utils/mono-memory-model.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include "mini-arm.h"
 #include "mini-arm-tls.h"
 
 #define THUNK_SIZE (3 * 4)
 
-#ifdef __native_client_codegen__
-const guint kNaClAlignment = kNaClAlignmentARM;
-const guint kNaClAlignmentMask = kNaClAlignmentMaskARM;
-gint8 nacl_align_byte = -1; /* 0xff */
-
-guint8 *
-mono_arch_nacl_pad (guint8 *code, int pad)
-{
-  /* Not yet properly implemented. */
-  g_assert_not_reached ();
-  return code;
-}
-
-guint8 *
-mono_arch_nacl_skip_nops (guint8 *code)
-{
-  /* Not yet properly implemented. */
-  g_assert_not_reached ();
-  return code;
-}
-
-#endif /* __native_client_codegen__ */
-
 #define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
 
 #if __APPLE__
@@ -308,9 +286,6 @@ emit_call_reg (guint8 *code, int reg)
        if (v5_supported) {
                ARM_BLX_REG (code, reg);
        } else {
-#ifdef USE_JUMP_TABLES
-               g_assert_not_reached ();
-#endif
                ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
                if (thumb_supported)
                        ARM_BX (code, reg);
@@ -323,9 +298,6 @@ emit_call_reg (guint8 *code, int reg)
 static guint8*
 emit_call_seq (MonoCompile *cfg, guint8 *code)
 {
-#ifdef USE_JUMP_TABLES
-       code = mono_arm_patchable_bl (code, ARMCOND_AL);
-#else
        if (cfg->method->dynamic) {
                ARM_LDR_IMM (code, ARMREG_IP, ARMREG_PC, 0);
                ARM_B (code, 0);
@@ -336,58 +308,23 @@ emit_call_seq (MonoCompile *cfg, guint8 *code)
                ARM_BL (code, 0);
        }
        cfg->thunk_area += THUNK_SIZE;
-#endif
        return code;
 }
 
 guint8*
 mono_arm_patchable_b (guint8 *code, int cond)
 {
-#ifdef USE_JUMP_TABLES
-       gpointer *jte;
-
-       jte = mono_jumptable_add_entry ();
-       code = mono_arm_load_jumptable_entry (code, jte, ARMREG_IP);
-       ARM_BX_COND (code, cond, ARMREG_IP);
-#else
        ARM_B_COND (code, cond, 0);
-#endif
        return code;
 }
 
 guint8*
 mono_arm_patchable_bl (guint8 *code, int cond)
 {
-#ifdef USE_JUMP_TABLES
-       gpointer *jte;
-
-       jte = mono_jumptable_add_entry ();
-       code = mono_arm_load_jumptable_entry (code, jte,  ARMREG_IP);
-       ARM_BLX_REG_COND (code, cond, ARMREG_IP);
-#else
        ARM_BL_COND (code, cond, 0);
-#endif
-       return code;
-}
-
-#ifdef USE_JUMP_TABLES
-guint8*
-mono_arm_load_jumptable_entry_addr (guint8 *code, gpointer *jte, ARMReg reg)
-{
-       ARM_MOVW_REG_IMM (code, reg, GPOINTER_TO_UINT(jte) & 0xffff);
-       ARM_MOVT_REG_IMM (code, reg, (GPOINTER_TO_UINT(jte) >> 16) & 0xffff);
        return code;
 }
 
-guint8*
-mono_arm_load_jumptable_entry (guint8 *code, gpointer* jte, ARMReg reg)
-{
-       code = mono_arm_load_jumptable_entry_addr (code, jte, reg);
-       ARM_LDR_IMM (code, reg, reg, 0);
-       return code;
-}
-#endif
-
 static guint8*
 mono_arm_emit_tls_get (MonoCompile *cfg, guint8* code, int dreg, int tls_offset)
 {
@@ -543,8 +480,6 @@ emit_float_args (MonoCompile *cfg, MonoCallInst *inst, guint8 *code, int *max_le
 {
        GSList *list;
 
-       g_assert (!cfg->r4fp);
-
        for (list = inst->float_args; list; list = list->next) {
                FloatArgData *fad = list->data;
                MonoInst *var = get_vreg_to_inst (cfg, fad->vreg);
@@ -1005,6 +940,11 @@ mono_arch_cpu_enumerate_simd_versions (void)
        return 0;
 }
 
+gboolean
+mono_arm_is_hard_float (void)
+{
+       return arm_fpu == MONO_ARM_FPU_VFP_HARD;
+}
 
 #ifndef DISABLE_JIT
 
@@ -1033,12 +973,6 @@ mono_arch_is_soft_float (void)
 }
 #endif
 
-gboolean
-mono_arm_is_hard_float (void)
-{
-       return arm_fpu == MONO_ARM_FPU_VFP_HARD;
-}
-
 static gboolean
 is_regsize_var (MonoType *t)
 {
@@ -1150,9 +1084,7 @@ mono_arch_regalloc_cost (MonoCompile *cfg, MonoMethodVar *vmv)
 void
 mono_arch_flush_icache (guint8 *code, gint size)
 {
-#if defined(MONO_CROSS_COMPILE) || defined(__native_client__)
-  // For Native Client we don't have to flush i-cache here,
-  // as it's being done by dyncode interface.
+#if defined(MONO_CROSS_COMPILE)
 #elif __APPLE__
        sys_icache_invalidate (code, size);
 #else
@@ -1431,10 +1363,25 @@ get_call_info (MonoMemPool *mp, MonoMethodSignature *sig)
                        cinfo->ret.nregs = nfields;
                        cinfo->ret.esize = esize;
                } else {
-                       if (is_pinvoke && mono_class_native_size (mono_class_from_mono_type (t), &align) <= sizeof (gpointer))
-                               cinfo->ret.storage = RegTypeStructByVal;
-                       else
+                       if (is_pinvoke) {
+                               int native_size = mono_class_native_size (mono_class_from_mono_type (t), &align);
+                               int max_size;
+
+#ifdef TARGET_WATCHOS
+                               max_size = 16;
+#else
+                               max_size = 4;
+#endif
+                               if (native_size <= max_size) {
+                                       cinfo->ret.storage = RegTypeStructByVal;
+                                       cinfo->ret.struct_size = native_size;
+                                       cinfo->ret.nregs = ALIGN_TO (native_size, 4) / 4;
+                               } else {
+                                       cinfo->ret.storage = RegTypeStructByAddr;
+                               }
+                       } else {
                                cinfo->ret.storage = RegTypeStructByAddr;
+                       }
                }
                break;
        case MONO_TYPE_VAR:
@@ -1587,6 +1534,27 @@ get_call_info (MonoMemPool *mp, MonoMethodSignature *sig)
                                        size = mini_type_stack_size_full (t, &align, FALSE);
                        }
                        DEBUG(g_print ("load %d bytes struct\n", size));
+
+#ifdef TARGET_WATCHOS
+                       /* Watchos pass large structures by ref */
+                       /* We only do this for pinvoke to make gsharedvt/dyncall simpler */
+                       if (sig->pinvoke && size > 16) {
+                               add_general (&gr, &stack_size, ainfo, TRUE);
+                               switch (ainfo->storage) {
+                               case RegTypeGeneral:
+                                       ainfo->storage = RegTypeStructByAddr;
+                                       break;
+                               case RegTypeBase:
+                                       ainfo->storage = RegTypeStructByAddrOnStack;
+                                       break;
+                               default:
+                                       g_assert_not_reached ();
+                                       break;
+                               }
+                               break;
+                       }
+#endif
+
                        align_size = size;
                        nwords = 0;
                        align_size += (sizeof (gpointer) - 1);
@@ -1873,21 +1841,16 @@ mono_arch_allocate_vars (MonoCompile *cfg)
 
        switch (cinfo->ret.storage) {
        case RegTypeStructByVal:
-               cfg->ret->opcode = OP_REGOFFSET;
-               cfg->ret->inst_basereg = cfg->frame_reg;
-               offset += sizeof (gpointer) - 1;
-               offset &= ~(sizeof (gpointer) - 1);
-               cfg->ret->inst_offset = - offset;
-               offset += sizeof(gpointer);
-               break;
        case RegTypeHFA:
                /* Allocate a local to hold the result, the epilog will copy it to the correct place */
                offset = ALIGN_TO (offset, 8);
                cfg->ret->opcode = OP_REGOFFSET;
                cfg->ret->inst_basereg = cfg->frame_reg;
                cfg->ret->inst_offset = offset;
-               // FIXME:
-               offset += 32;
+               if (cinfo->ret.storage == RegTypeStructByVal)
+                       offset += cinfo->ret.nregs * sizeof (gpointer);
+               else
+                       offset += 32;
                break;
        case RegTypeStructByAddr:
                ins = cfg->vret_addr;
@@ -2209,6 +2172,13 @@ mono_arch_get_llvm_call_info (MonoCompile *cfg, MonoMethodSignature *sig)
                linfo->ret.storage = LLVMArgVtypeRetAddr;
                linfo->vret_arg_index = cinfo->vret_arg_index;
                break;
+#if TARGET_WATCHOS
+       case RegTypeStructByVal:
+               /* LLVM models this by returning an int array */
+               linfo->ret.storage = LLVMArgAsIArgs;
+               linfo->ret.nslots = cinfo->ret.nregs;
+               break;
+#endif
        default:
                cfg->exception_message = g_strdup_printf ("unknown ret conv (%d)", cinfo->ret.storage);
                cfg->disable_llvm = TRUE;
@@ -2216,20 +2186,26 @@ mono_arch_get_llvm_call_info (MonoCompile *cfg, MonoMethodSignature *sig)
        }
 
        for (i = 0; i < n; ++i) {
+               LLVMArgInfo *lainfo = &linfo->args [i];
                ainfo = cinfo->args + i;
 
-               linfo->args [i].storage = LLVMArgNone;
+               lainfo->storage = LLVMArgNone;
 
                switch (ainfo->storage) {
                case RegTypeGeneral:
                case RegTypeIRegPair:
                case RegTypeBase:
                case RegTypeBaseGen:
-                       linfo->args [i].storage = LLVMArgNormal;
+               case RegTypeFP:
+                       lainfo->storage = LLVMArgNormal;
                        break;
                case RegTypeStructByVal:
-                       linfo->args [i].storage = LLVMArgAsIArgs;
-                       linfo->args [i].nslots = ainfo->struct_size / sizeof (gpointer);
+                       lainfo->storage = LLVMArgAsIArgs;
+                       lainfo->nslots = ainfo->struct_size / sizeof (gpointer);
+                       break;
+               case RegTypeStructByAddr:
+               case RegTypeStructByAddrOnStack:
+                       lainfo->storage = LLVMArgVtypeByRef;
                        break;
                default:
                        cfg->exception_message = g_strdup_printf ("ainfo->storage (%d)", ainfo->storage);
@@ -2257,10 +2233,14 @@ mono_arch_emit_call (MonoCompile *cfg, MonoCallInst *call)
 
        switch (cinfo->ret.storage) {
        case RegTypeStructByVal:
-               /* The JIT will transform this into a normal call */
-               call->vret_in_reg = TRUE;
-               break;
        case RegTypeHFA:
+               if (cinfo->ret.storage == RegTypeStructByVal && cinfo->ret.nregs == 1) {
+                       /* The JIT will transform this into a normal call */
+                       call->vret_in_reg = TRUE;
+                       break;
+               }
+               if (call->inst.opcode == OP_TAILCALL)
+                       break;
                /*
                 * The vtype is returned in registers, save the return area address in a local, and save the vtype into
                 * the location pointed to by it after call in emit_move_return_value ().
@@ -2374,19 +2354,12 @@ mono_arch_emit_call (MonoCompile *cfg, MonoCallInst *call)
                                mono_call_inst_add_outarg_reg (cfg, call, ins->dreg, ainfo->reg, FALSE);
                        }
                        break;
-               case RegTypeStructByAddr:
-                       NOT_IMPLEMENTED;
-#if 0
-                       /* FIXME: where si the data allocated? */
-                       arg->backend.reg3 = ainfo->reg;
-                       call->used_iregs |= 1 << ainfo->reg;
-                       g_assert_not_reached ();
-#endif
-                       break;
                case RegTypeStructByVal:
                case RegTypeGSharedVtInReg:
                case RegTypeGSharedVtOnStack:
                case RegTypeHFA:
+               case RegTypeStructByAddr:
+               case RegTypeStructByAddrOnStack:
                        MONO_INST_NEW (cfg, ins, OP_OUTARG_VT);
                        ins->opcode = OP_OUTARG_VT;
                        ins->sreg1 = in->dreg;
@@ -2459,7 +2432,7 @@ mono_arch_emit_call (MonoCompile *cfg, MonoCallInst *call)
                                 *
                                 * So we create a variable for the float argument and an instruction to store
                                 * the argument into the variable. We then store the list of these arguments
-                                * in cfg->float_args. This list is then used by emit_float_args later to
+                                * in call->float_args. This list is then used by emit_float_args later to
                                 * pass the arguments in the various call opcodes.
                                 *
                                 * This is not very nice, and we should really try to fix the allocator.
@@ -2532,10 +2505,12 @@ mono_arch_emit_outarg_vt (MonoCompile *cfg, MonoInst *ins, MonoInst *src)
 
        switch (ainfo->storage) {
        case RegTypeGSharedVtInReg:
+       case RegTypeStructByAddr:
                /* Pass by addr */
                mono_call_inst_add_outarg_reg (cfg, call, src->dreg, ainfo->reg, FALSE);
                break;
        case RegTypeGSharedVtOnStack:
+       case RegTypeStructByAddrOnStack:
                /* Pass by addr on stack */
                MONO_EMIT_NEW_STORE_MEMBASE (cfg, OP_STORE_MEMBASE_REG, ARMREG_SP, ainfo->offset, src->dreg);
                break;
@@ -2706,6 +2681,7 @@ dyn_call_supported (CallInfo *cinfo, MonoMethodSignature *sig)
                case RegTypeGeneral:
                case RegTypeIRegPair:
                case RegTypeBaseGen:
+               case RegTypeFP:
                        break;
                case RegTypeBase:
                        if (ainfo->offset >= (DYN_CALL_STACK_ARGS * sizeof (gpointer)))
@@ -2800,6 +2776,7 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
 
        p->res = 0;
        p->ret = ret;
+       p->has_fpregs = 0;
 
        arg_index = 0;
        greg = 0;
@@ -2822,6 +2799,7 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
 
                if (ainfo->storage == RegTypeGeneral || ainfo->storage == RegTypeIRegPair || ainfo->storage == RegTypeStructByVal) {
                        slot = ainfo->reg;
+               } else if (ainfo->storage == RegTypeFP) {
                } else if (ainfo->storage == RegTypeBase) {
                        slot = PARAM_REGS + (ainfo->offset / 4);
                } else if (ainfo->storage == RegTypeBaseGen) {
@@ -2871,11 +2849,22 @@ mono_arch_start_dyn_call (MonoDynCallInfo *info, gpointer **args, guint8 *ret, g
                        p->regs [slot] = (mgreg_t)arg [1];
                        break;
                case MONO_TYPE_R4:
-                       p->regs [slot] = *(mgreg_t*)arg;
+                       if (ainfo->storage == RegTypeFP) {
+                               float f = *(float*)arg;
+                               p->fpregs [ainfo->reg / 2] = *(double*)&f;
+                               p->has_fpregs = 1;
+                       } else {
+                               p->regs [slot] = *(mgreg_t*)arg;
+                       }
                        break;
                case MONO_TYPE_R8:
-                       p->regs [slot ++] = (mgreg_t)arg [0];
-                       p->regs [slot] = (mgreg_t)arg [1];
+                       if (ainfo->storage == RegTypeFP) {
+                               p->fpregs [ainfo->reg / 2] = *(double*)arg;
+                               p->has_fpregs = 1;
+                       } else {
+                               p->regs [slot ++] = (mgreg_t)arg [0];
+                               p->regs [slot] = (mgreg_t)arg [1];
+                       }
                        break;
                case MONO_TYPE_GENERICINST:
                        if (MONO_TYPE_IS_REFERENCE (t)) {
@@ -2921,10 +2910,11 @@ void
 mono_arch_finish_dyn_call (MonoDynCallInfo *info, guint8 *buf)
 {
        ArchDynCallInfo *ainfo = (ArchDynCallInfo*)info;
+       DynCallArgs *p = (DynCallArgs*)buf;
        MonoType *ptype = ainfo->rtype;
-       guint8 *ret = ((DynCallArgs*)buf)->ret;
-       mgreg_t res = ((DynCallArgs*)buf)->res;
-       mgreg_t res2 = ((DynCallArgs*)buf)->res2;
+       guint8 *ret = p->ret;
+       mgreg_t res = p->res;
+       mgreg_t res2 = p->res2;
 
        switch (ptype->type) {
        case MONO_TYPE_VOID:
@@ -2977,16 +2967,23 @@ mono_arch_finish_dyn_call (MonoDynCallInfo *info, guint8 *buf)
                break;
        case MONO_TYPE_R4:
                g_assert (IS_VFP);
-               *(float*)ret = *(float*)&res;
+               if (IS_HARD_FLOAT)
+                       *(float*)ret = *(float*)&p->fpregs [0];
+               else
+                       *(float*)ret = *(float*)&res;
                break;
        case MONO_TYPE_R8: {
                mgreg_t regs [2];
 
                g_assert (IS_VFP);
-               regs [0] = res;
-               regs [1] = res2;
+               if (IS_HARD_FLOAT) {
+                       *(double*)ret = p->fpregs [0];
+               } else {
+                       regs [0] = res;
+                       regs [1] = res2;
 
-               *(double*)ret = *(double*)&regs;
+                       *(double*)ret = *(double*)&regs;
+               }
                break;
        }
        default:
@@ -3880,13 +3877,6 @@ arm_patch_general (MonoCompile *cfg, MonoDomain *domain, guchar *code, const guc
                return;
        }
 
-#ifdef USE_JUMP_TABLES
-       {
-               gpointer *jte = mono_jumptable_get_entry (code);
-               g_assert (jte);
-               jte [0] = (gpointer) target;
-       }
-#else
        /*
         * The alternative call sequences looks like this:
         *
@@ -3981,7 +3971,6 @@ arm_patch_general (MonoCompile *cfg, MonoDomain *domain, guchar *code, const guc
                g_assert_not_reached ();
        }
 //     g_print ("patched with 0x%08x\n", ins);
-#endif
 }
 
 void
@@ -4091,10 +4080,16 @@ emit_move_return_value (MonoCompile *cfg, MonoInst *ins, guint8 *code)
        cinfo = call->call_info;
 
        switch (cinfo->ret.storage) {
+       case RegTypeStructByVal:
        case RegTypeHFA: {
                MonoInst *loc = cfg->arch.vret_addr_loc;
                int i;
 
+               if (cinfo->ret.storage == RegTypeStructByVal && cinfo->ret.nregs == 1) {
+                       /* The JIT treats this as a normal call */
+                       break;
+               }
+
                /* Load the destination address */
                g_assert (loc && loc->opcode == OP_REGOFFSET);
 
@@ -4104,11 +4099,34 @@ emit_move_return_value (MonoCompile *cfg, MonoInst *ins, guint8 *code)
                        code = mono_arm_emit_load_imm (code, ARMREG_LR, loc->inst_offset);
                        ARM_LDR_REG_REG (code, ARMREG_LR, loc->inst_basereg, ARMREG_LR);
                }
-               for (i = 0; i < cinfo->ret.nregs; ++i) {
-                       if (cinfo->ret.esize == 4)
-                               ARM_FSTS (code, cinfo->ret.reg + i, ARMREG_LR, i * 4);
-                       else
-                               ARM_FSTD (code, cinfo->ret.reg + (i * 2), ARMREG_LR, i * 8);
+
+               if (cinfo->ret.storage == RegTypeStructByVal) {
+                       int rsize = cinfo->ret.struct_size;
+
+                       for (i = 0; i < cinfo->ret.nregs; ++i) {
+                               g_assert (rsize >= 0);
+                               switch (rsize) {
+                               case 0:
+                                       break;
+                               case 1:
+                                       ARM_STRB_IMM (code, i, ARMREG_LR, i * 4);
+                                       break;
+                               case 2:
+                                       ARM_STRH_IMM (code, i, ARMREG_LR, i * 4);
+                                       break;
+                               default:
+                                       ARM_STR_IMM (code, i, ARMREG_LR, i * 4);
+                                       break;
+                               }
+                               rsize -= 4;
+                       }
+               } else {
+                       for (i = 0; i < cinfo->ret.nregs; ++i) {
+                               if (cinfo->ret.esize == 4)
+                                       ARM_FSTS (code, cinfo->ret.reg + i, ARMREG_LR, i * 4);
+                               else
+                                       ARM_FSTD (code, cinfo->ret.reg + (i * 2), ARMREG_LR, i * 8);
+                       }
                }
                return code;
        }
@@ -4345,7 +4363,8 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                break;
                        }
 
-                       ARM_DMB (code, ARM_DMB_SY);
+                       if (ins->backend.memory_barrier_kind != MONO_MEMORY_BARRIER_NONE)
+                               ARM_DMB (code, ARM_DMB_SY);
                        break;
                }
                case OP_ATOMIC_STORE_I1:
@@ -4356,7 +4375,8 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                case OP_ATOMIC_STORE_U4:
                case OP_ATOMIC_STORE_R4:
                case OP_ATOMIC_STORE_R8: {
-                       ARM_DMB (code, ARM_DMB_SY);
+                       if (ins->backend.memory_barrier_kind != MONO_MEMORY_BARRIER_NONE)
+                               ARM_DMB (code, ARM_DMB_SY);
 
                        code = mono_arm_emit_load_imm (code, ARMREG_LR, ins->inst_offset);
 
@@ -4603,16 +4623,10 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                                g_assert (arm_is_imm12 (var->inst_offset));
                                                ARM_LDR_IMM (code, dreg, var->inst_basereg, var->inst_offset);
                                        } else {
-#ifdef USE_JUMP_TABLES
-                                               gpointer *jte = mono_jumptable_add_entry ();
-                                               code = mono_arm_load_jumptable_entry (code, jte, dreg);
-                                               jte [0] = ss_trigger_page;
-#else
                                                ARM_LDR_IMM (code, dreg, ARMREG_PC, 0);
                                                ARM_B (code, 0);
                                                *(int*)code = (int)ss_trigger_page;
                                                code += 4;
-#endif
                                        }
                                        ARM_LDR_IMM (code, dreg, dreg, 0);
                                }
@@ -5141,14 +5155,15 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                case OP_DYN_CALL: {
                        int i;
                        MonoInst *var = cfg->dyn_call_var;
+                       guint8 *buf [16];
 
                        g_assert (var->opcode == OP_REGOFFSET);
                        g_assert (arm_is_imm12 (var->inst_offset));
 
                        /* lr = args buffer filled by mono_arch_get_dyn_call_args () */
-                       ARM_MOV_REG_REGcode, ARMREG_LR, ins->sreg1);
+                       ARM_MOV_REG_REG (code, ARMREG_LR, ins->sreg1);
                        /* ip = ftn */
-                       ARM_MOV_REG_REGcode, ARMREG_IP, ins->sreg2);
+                       ARM_MOV_REG_REG (code, ARMREG_IP, ins->sreg2);
 
                        /* Save args buffer */
                        ARM_STR_IMM (code, ARMREG_LR, var->inst_basereg, var->inst_offset);
@@ -5160,6 +5175,20 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                ARM_STR_IMM (code, ARMREG_R0, ARMREG_SP, i * sizeof (mgreg_t));
                        }
 
+                       /* Set fp argument registers */
+                       if (IS_HARD_FLOAT) {
+                               ARM_LDR_IMM (code, ARMREG_R0, ARMREG_LR, MONO_STRUCT_OFFSET (DynCallArgs, has_fpregs));
+                               ARM_CMP_REG_IMM (code, ARMREG_R0, 0, 0);
+                               buf [0] = code;
+                               ARM_B_COND (code, ARMCOND_EQ, 0);
+                               for (i = 0; i < FP_PARAM_REGS; ++i) {
+                                       int offset = MONO_STRUCT_OFFSET (DynCallArgs, fpregs) + (i * sizeof (double));
+                                       g_assert (arm_is_fpimm8 (offset));
+                                       ARM_FLDD (code, i * 2, ARMREG_LR, offset);
+                               }
+                               arm_patch (buf [0], code);
+                       }
+
                        /* Set argument registers */
                        for (i = 0; i < PARAM_REGS; ++i)
                                ARM_LDR_IMM (code, i, ARMREG_LR, i * sizeof (mgreg_t));
@@ -5171,7 +5200,9 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        /* Save result */
                        ARM_LDR_IMM (code, ARMREG_IP, var->inst_basereg, var->inst_offset);
                        ARM_STR_IMM (code, ARMREG_R0, ARMREG_IP, MONO_STRUCT_OFFSET (DynCallArgs, res)); 
-                       ARM_STR_IMM (code, ARMREG_R1, ARMREG_IP, MONO_STRUCT_OFFSET (DynCallArgs, res2)); 
+                       ARM_STR_IMM (code, ARMREG_R1, ARMREG_IP, MONO_STRUCT_OFFSET (DynCallArgs, res2));
+                       if (IS_HARD_FLOAT)
+                               ARM_FSTD (code, ARM_VFP_D0, ARMREG_IP, MONO_STRUCT_OFFSET (DynCallArgs, fpregs));
                        break;
                }
                case OP_THROW: {
@@ -5303,14 +5334,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                         * FIXME: add aot support.
                         */
                        mono_add_patch_info (cfg, offset, MONO_PATCH_INFO_SWITCH, ins->inst_p0);
-#ifdef USE_JUMP_TABLES
-                       {
-                               gpointer *jte = mono_jumptable_add_entries (GPOINTER_TO_INT (ins->klass));
-                               code = mono_arm_load_jumptable_entry_addr (code, jte, ARMREG_IP);
-                               ARM_LDR_REG_REG_SHIFT (code, ARMREG_PC, ARMREG_IP, ins->sreg1, ARMSHIFT_LSL, 2);
-                       }
-#else
-
                        max_len += 4 * GPOINTER_TO_INT (ins->klass);
                        if (offset + max_len > (cfg->code_size - 16)) {
                                cfg->code_size += max_len;
@@ -5321,7 +5344,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        ARM_LDR_REG_REG_SHIFT (code, ARMREG_PC, ARMREG_PC, ins->sreg1, ARMSHIFT_LSL, 2);
                        ARM_NOP (code);
                        code += 4 * GPOINTER_TO_INT (ins->klass);
-#endif
                        break;
                case OP_CEQ:
                case OP_ICEQ:
@@ -5522,8 +5544,12 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        MonoType *sig_ret = mini_get_underlying_type (mono_method_signature (cfg->method)->ret);
                        if (sig_ret->type == MONO_TYPE_R4) {
                                if (cfg->r4fp) {
-                                       g_assert (!IS_HARD_FLOAT);
-                                       ARM_FMRS (code, ARMREG_R0, ins->sreg1);
+                                       if (IS_HARD_FLOAT) {
+                                               if (ins->sreg1 != ARM_VFP_D0)
+                                                       ARM_CPYS (code, ARM_VFP_D0, ins->sreg1);
+                                       } else {
+                                               ARM_FMRS (code, ARMREG_R0, ins->sreg1);
+                                       }
                                } else {
                                        ARM_CVTD (code, ARM_VFP_F0, ins->sreg1);
 
@@ -5740,15 +5766,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                code = mono_arm_emit_vfp_scratch_save (cfg, code, vfp_scratch1);
                                code = mono_arm_emit_vfp_scratch_save (cfg, code, vfp_scratch2);
 
-#ifdef USE_JUMP_TABLES
-                               {
-                                       gpointer *jte = mono_jumptable_add_entries (2);
-                                       jte [0] = GUINT_TO_POINTER (0xffffffff);
-                                       jte [1] = GUINT_TO_POINTER (0x7fefffff);
-                                       code = mono_arm_load_jumptable_entry_addr (code, jte, ARMREG_IP);
-                                       ARM_FLDD (code, vfp_scratch1, ARMREG_IP, 0);
-                               }
-#else
                                ARM_ABSD (code, vfp_scratch2, ins->sreg1);
                                ARM_FLDD (code, vfp_scratch1, ARMREG_PC, 0);
                                ARM_B (code, 1);
@@ -5756,7 +5773,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                                code += 4;
                                *(guint32*)code = 0x7fefffff;
                                code += 4;
-#endif
                                ARM_CMPD (code, vfp_scratch2, vfp_scratch1);
                                ARM_FMSTAT (code);
                                EMIT_COND_SYSTEM_EXCEPTION_FLAGS (ARMCOND_GT, "OverflowException");
@@ -5890,17 +5906,15 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        bb->spill_slot_defs = g_slist_prepend_mempool (cfg->mempool, bb->spill_slot_defs, ins);
                        break;
                case OP_GC_SAFE_POINT: {
-                       const char *polling_func = NULL;
                        guint8 *buf [1];
 
                        g_assert (mono_threads_is_coop_enabled ());
 
-                       polling_func = "mono_threads_state_poll";
                        ARM_LDR_IMM (code, ARMREG_IP, ins->sreg1, 0);
                        ARM_CMP_REG_IMM (code, ARMREG_IP, 0, 0);
                        buf [0] = code;
                        ARM_B_COND (code, ARMCOND_EQ, 0);
-                       mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD, polling_func);
+                       mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_INTERNAL_METHOD, "mono_threads_state_poll");
                        code = emit_call_seq (cfg, code);
                        arm_patch (buf [0], code);
                        break;
@@ -5985,11 +5999,7 @@ mono_arch_patch_code_new (MonoCompile *cfg, MonoDomain *domain, guint8 *code, Mo
 
        switch (ji->type) {
        case MONO_PATCH_INFO_SWITCH: {
-#ifdef USE_JUMP_TABLES
-               gpointer *jt = mono_jumptable_get_entry (ip);
-#else
                gpointer *jt = (gpointer*)(ip + 8);
-#endif
                int i;
                /* jt is the inlined jump table, 2 instructions after ip
                 * In the normal case we store the absolute addresses,
@@ -6131,13 +6141,8 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                                reg_offset += 4;
                        }
                }
-               if (iphone_abi) {
-                       mono_emit_unwind_op_offset (cfg, code, ARMREG_LR, -4);
-                       mini_gc_set_slot_type_from_cfa (cfg, -4, SLOT_NOREF);
-               } else {
-                       mono_emit_unwind_op_offset (cfg, code, ARMREG_LR, -4);
-                       mini_gc_set_slot_type_from_cfa (cfg, -4, SLOT_NOREF);
-               }
+               mono_emit_unwind_op_offset (cfg, code, ARMREG_LR, -4);
+               mini_gc_set_slot_type_from_cfa (cfg, -4, SLOT_NOREF);
        } else {
                ARM_MOV_REG_REG (code, ARMREG_IP, ARMREG_SP);
                ARM_PUSH (code, 0x5ff0);
@@ -6297,6 +6302,7 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                        case RegTypeGeneral:
                        case RegTypeIRegPair:
                        case RegTypeGSharedVtInReg:
+                       case RegTypeStructByAddr:
                                switch (ainfo->size) {
                                case 1:
                                        if (arm_is_imm12 (inst->inst_offset))
@@ -6357,6 +6363,7 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                                break;
                        case RegTypeBase:
                        case RegTypeGSharedVtOnStack:
+                       case RegTypeStructByAddrOnStack:
                                if (arm_is_imm12 (prev_sp_offset + ainfo->offset)) {
                                        ARM_LDR_IMM (code, ARMREG_LR, ARMREG_SP, (prev_sp_offset + ainfo->offset));
                                } else {
@@ -6449,10 +6456,6 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                                }
                                break;
                        }
-                       case RegTypeStructByAddr:
-                               g_assert_not_reached ();
-                               /* FIXME: handle overrun! with struct sizes not multiple of 4 */
-                               code = emit_memcpy (code, ainfo->vtsize * sizeof (gpointer), inst->inst_basereg, inst->inst_offset, ainfo->reg, 0);
                        default:
                                g_assert_not_reached ();
                                break;
@@ -6472,19 +6475,10 @@ mono_arch_emit_prolog (MonoCompile *cfg)
 
                /* Initialize the variable from a GOT slot */
                mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_SEQ_POINT_INFO, cfg->method);
-#ifdef USE_JUMP_TABLES
-               {
-                       gpointer *jte = mono_jumptable_add_entry ();
-                       code = mono_arm_load_jumptable_entry (code, jte, ARMREG_IP);
-                       ARM_LDR_IMM (code, ARMREG_R0, ARMREG_IP, 0);
-               }
-               /** XXX: is it correct? */
-#else
                ARM_LDR_IMM (code, ARMREG_R0, ARMREG_PC, 0);
                ARM_B (code, 0);
                *(gpointer*)code = NULL;
                code += 4;
-#endif
                ARM_LDR_REG_REG (code, ARMREG_R0, ARMREG_PC, ARMREG_R0);
 
                g_assert (ins->opcode == OP_REGOFFSET);
@@ -6517,27 +6511,17 @@ mono_arch_emit_prolog (MonoCompile *cfg)
        if (cfg->arch.seq_point_ss_method_var) {
                MonoInst *ss_method_ins = cfg->arch.seq_point_ss_method_var;
                MonoInst *bp_method_ins = cfg->arch.seq_point_bp_method_var;
-#ifdef USE_JUMP_TABLES
-               gpointer *jte;
-#endif
                g_assert (ss_method_ins->opcode == OP_REGOFFSET);
                g_assert (arm_is_imm12 (ss_method_ins->inst_offset));
                g_assert (bp_method_ins->opcode == OP_REGOFFSET);
                g_assert (arm_is_imm12 (bp_method_ins->inst_offset));
 
-#ifdef USE_JUMP_TABLES
-               jte = mono_jumptable_add_entries (3);
-               jte [0] = &single_step_tramp;
-               jte [1] = breakpoint_tramp;
-               code = mono_arm_load_jumptable_entry_addr (code, jte, ARMREG_LR);
-#else
                ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
                ARM_B (code, 1);
                *(gpointer*)code = &single_step_tramp;
                code += 4;
                *(gpointer*)code = breakpoint_tramp;
                code += 4;
-#endif
 
                ARM_LDR_IMM (code, ARMREG_IP, ARMREG_LR, 0);
                ARM_STR_IMM (code, ARMREG_IP, ss_method_ins->inst_basereg, ss_method_ins->inst_offset);
@@ -6595,11 +6579,23 @@ mono_arch_emit_epilog (MonoCompile *cfg)
        case RegTypeStructByVal: {
                MonoInst *ins = cfg->ret;
 
-               if (arm_is_imm12 (ins->inst_offset)) {
-                       ARM_LDR_IMM (code, ARMREG_R0, ins->inst_basereg, ins->inst_offset);
+               if (cinfo->ret.nregs == 1) {
+                       if (arm_is_imm12 (ins->inst_offset)) {
+                               ARM_LDR_IMM (code, ARMREG_R0, ins->inst_basereg, ins->inst_offset);
+                       } else {
+                               code = mono_arm_emit_load_imm (code, ARMREG_LR, ins->inst_offset);
+                               ARM_LDR_REG_REG (code, ARMREG_R0, ins->inst_basereg, ARMREG_LR);
+                       }
                } else {
-                       code = mono_arm_emit_load_imm (code, ARMREG_LR, ins->inst_offset);
-                       ARM_LDR_REG_REG (code, ARMREG_R0, ins->inst_basereg, ARMREG_LR);
+                       for (i = 0; i < cinfo->ret.nregs; ++i) {
+                               int offset = ins->inst_offset + (i * 4);
+                               if (arm_is_imm12 (offset)) {
+                                       ARM_LDR_IMM (code, i, ins->inst_basereg, offset);
+                               } else {
+                                       code = mono_arm_emit_load_imm (code, ARMREG_LR, offset);
+                                       ARM_LDR_REG_REG (code, i, ins->inst_basereg, ARMREG_LR);
+                               }
+                       }
                }
                break;
        }
@@ -6765,19 +6761,6 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                        exc_class = mono_class_load_from_name (mono_defaults.corlib, "System", patch_info->data.name);
 
                        ARM_MOV_REG_REG (code, ARMREG_R1, ARMREG_LR);
-#ifdef USE_JUMP_TABLES
-                       {
-                               gpointer *jte = mono_jumptable_add_entries (2);
-                               patch_info->type = MONO_PATCH_INFO_INTERNAL_METHOD;
-                               patch_info->data.name = "mono_arch_throw_corlib_exception";
-                               patch_info->ip.i = code - cfg->native_code;
-                               code = mono_arm_load_jumptable_entry_addr (code, jte, ARMREG_R0);
-                               ARM_LDR_IMM (code, ARMREG_IP, ARMREG_R0, 0);
-                               ARM_LDR_IMM (code, ARMREG_R0, ARMREG_R0, 4);
-                               ARM_BLX_REG (code, ARMREG_IP);
-                               jte [1] = GUINT_TO_POINTER (exc_class->type_token);
-                       }
-#else
                        ARM_LDR_IMM (code, ARMREG_R0, ARMREG_PC, 0);
                        patch_info->type = MONO_PATCH_INFO_INTERNAL_METHOD;
                        patch_info->data.name = "mono_arch_throw_corlib_exception";
@@ -6786,7 +6769,6 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                        cfg->thunk_area += THUNK_SIZE;
                        *(guint32*)(gpointer)code = exc_class->type_token - MONO_TOKEN_TYPE_DEF;
                        code += 4;
-#endif
                        break;
                }
                default:
@@ -6873,27 +6855,6 @@ mono_arch_get_cie_program (void)
 #define WMC_SIZE (8 * 4)
 #define DISTANCE(A, B) (((gint32)(B)) - ((gint32)(A)))
 
-#ifdef USE_JUMP_TABLES
-static void
-set_jumptable_element (gpointer *base, guint32 index, gpointer value)
-{
-        g_assert (base [index] == NULL);
-        base [index] = value;
-}
-static arminstr_t *
-load_element_with_regbase_cond (arminstr_t *code, ARMReg dreg, ARMReg base, guint32 jti, int cond)
-{
-       if (arm_is_imm12 (jti * 4)) {
-               ARM_LDR_IMM_COND (code, dreg, base, jti * 4, cond);
-       } else {
-               ARM_MOVW_REG_IMM_COND (code, dreg, (jti * 4) & 0xffff, cond);
-               if ((jti * 4) >> 16)
-                       ARM_MOVT_REG_IMM_COND (code, dreg, ((jti * 4) >> 16) & 0xffff, cond);
-               ARM_LDR_REG_REG_SHIFT_COND (code, dreg, base, dreg, ARMSHIFT_LSL, 0, cond);
-       }
-       return code;
-}
-#else
 static arminstr_t *
 arm_emit_value_and_patch_ldr (arminstr_t *code, arminstr_t *target, guint32 value)
 {
@@ -6904,7 +6865,6 @@ arm_emit_value_and_patch_ldr (arminstr_t *code, arminstr_t *target, guint32 valu
        *code = value;
        return code + 1;
 }
-#endif
 
 #ifdef ENABLE_WRONG_METHOD_CHECK
 static void
@@ -6921,29 +6881,16 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
 {
        int size, i;
        arminstr_t *code, *start;
-#ifdef USE_JUMP_TABLES
-       gpointer *jte;
-#else
        gboolean large_offsets = FALSE;
        guint32 **constant_pool_starts;
        arminstr_t *vtable_target = NULL;
        int extra_space = 0;
-#endif
 #ifdef ENABLE_WRONG_METHOD_CHECK
        char * cond;
 #endif
        GSList *unwind_ops;
 
        size = BASE_SIZE;
-#ifdef USE_JUMP_TABLES
-       for (i = 0; i < count; ++i) {
-               MonoIMTCheckItem *item = imt_entries [i];
-               item->chunk_size += 4 * 16;
-               if (!item->is_equals)
-                       imt_entries [item->check_target_idx]->compare_done = TRUE;
-               size += item->chunk_size;
-       }
-#else
        constant_pool_starts = g_new0 (guint32*, count);
 
        for (i = 0; i < count; ++i) {
@@ -6979,7 +6926,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
 
        if (large_offsets)
                size += 4 * count; /* The ARM_ADD_REG_IMM to pop the stack */
-#endif
 
        if (fail_tramp)
                code = mono_method_alloc_generic_virtual_thunk (domain, size);
@@ -6997,23 +6943,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
        }
 #endif
 
-#ifdef USE_JUMP_TABLES
-       ARM_PUSH3 (code, ARMREG_R0, ARMREG_R1, ARMREG_R2);
-       mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 3 * sizeof (mgreg_t));
-#define VTABLE_JTI 0
-#define IMT_METHOD_OFFSET 0
-#define TARGET_CODE_OFFSET 1
-#define JUMP_CODE_OFFSET 2
-#define RECORDS_PER_ENTRY 3
-#define IMT_METHOD_JTI(idx) (1 + idx * RECORDS_PER_ENTRY + IMT_METHOD_OFFSET)
-#define TARGET_CODE_JTI(idx) (1 + idx * RECORDS_PER_ENTRY + TARGET_CODE_OFFSET)
-#define JUMP_CODE_JTI(idx) (1 + idx * RECORDS_PER_ENTRY + JUMP_CODE_OFFSET)
-
-       jte = mono_jumptable_add_entries (RECORDS_PER_ENTRY * count + 1 /* vtable */);
-       code = (arminstr_t *) mono_arm_load_jumptable_entry_addr ((guint8 *) code, jte, ARMREG_R2);
-       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_R2, VTABLE_JTI);
-       set_jumptable_element (jte, VTABLE_JTI, vtable);
-#else
        if (large_offsets) {
                ARM_PUSH4 (code, ARMREG_R0, ARMREG_R1, ARMREG_IP, ARMREG_PC);
                mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 4 * sizeof (mgreg_t));
@@ -7024,16 +6953,11 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
        ARM_LDR_IMM (code, ARMREG_R0, ARMREG_LR, -4);
        vtable_target = code;
        ARM_LDR_IMM (code, ARMREG_IP, ARMREG_PC, 0);
-#endif
        ARM_MOV_REG_REG (code, ARMREG_R0, ARMREG_V5);
 
        for (i = 0; i < count; ++i) {
                MonoIMTCheckItem *item = imt_entries [i];
-#ifdef USE_JUMP_TABLES
-               guint32 imt_method_jti = 0, target_code_jti = 0;
-#else
                arminstr_t *imt_method = NULL, *vtable_offset_ins = NULL, *target_code_ins = NULL;
-#endif
                gint32 vtable_offset;
 
                item->code_target = (guint8*)code;
@@ -7043,33 +6967,17 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
 
                        if (item->check_target_idx || fail_case) {
                                if (!item->compare_done || fail_case) {
-#ifdef USE_JUMP_TABLES
-                                       imt_method_jti = IMT_METHOD_JTI (i);
-                                       code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, imt_method_jti, ARMCOND_AL);
-#else
                                        imt_method = code;
                                        ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0);
-#endif
                                        ARM_CMP_REG_REG (code, ARMREG_R0, ARMREG_R1);
                                }
-#ifdef USE_JUMP_TABLES
-                               code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, JUMP_CODE_JTI (i), ARMCOND_NE);
-                               ARM_BX_COND (code, ARMCOND_NE, ARMREG_R1);
-                               item->jmp_code = GUINT_TO_POINTER (JUMP_CODE_JTI (i));
-#else
                                item->jmp_code = (guint8*)code;
                                ARM_B_COND (code, ARMCOND_NE, 0);
-#endif
                        } else {
                                /*Enable the commented code to assert on wrong method*/
 #ifdef ENABLE_WRONG_METHOD_CHECK
-#ifdef USE_JUMP_TABLES
-                               imt_method_jti = IMT_METHOD_JTI (i);
-                               code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, imt_method_jti, ARMCOND_AL);
-#else
                                imt_method = code;
                                ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0);
-#endif
                                ARM_CMP_REG_REG (code, ARMREG_R0, ARMREG_R1);
                                cond = code;
                                ARM_B_COND (code, ARMCOND_EQ, 0);
@@ -7088,16 +6996,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
 
                        if (item->has_target_code) {
                                /* Load target address */
-#ifdef USE_JUMP_TABLES
-                               target_code_jti = TARGET_CODE_JTI (i);
-                               code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, target_code_jti, ARMCOND_AL);
-                               /* Restore registers */
-                               ARM_POP3 (code, ARMREG_R0, ARMREG_R1, ARMREG_R2);
-                               mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 0);
-                               /*  And branch */
-                               ARM_BX (code, ARMREG_R1);
-                               set_jumptable_element (jte, target_code_jti, item->value.target_code);
-#else
                                target_code_ins = code;
                                ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0);
                                /* Save it to the fourth slot */
@@ -7106,7 +7004,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                ARM_POP4 (code, ARMREG_R0, ARMREG_R1, ARMREG_IP, ARMREG_PC);
                                
                                code = arm_emit_value_and_patch_ldr (code, target_code_ins, (gsize)item->value.target_code);
-#endif
                        } else {
                                vtable_offset = DISTANCE (vtable, &vtable->vtable[item->value.vtable_slot]);
                                if (!arm_is_imm12 (vtable_offset)) {
@@ -7117,17 +7014,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                         * load them both using LDM.
                                         */
                                        /* Compute target address */
-#ifdef USE_JUMP_TABLES
-                                       ARM_MOVW_REG_IMM (code, ARMREG_R1, vtable_offset & 0xffff);
-                                       if (vtable_offset >> 16)
-                                               ARM_MOVT_REG_IMM (code, ARMREG_R1, (vtable_offset >> 16) & 0xffff);
-                                       /* IP had vtable base. */
-                                       ARM_LDR_REG_REG (code, ARMREG_IP, ARMREG_IP, ARMREG_R1);
-                                       /* Restore registers and branch */
-                                       ARM_POP3 (code, ARMREG_R0, ARMREG_R1, ARMREG_R2);
-                                       mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 0);
-                                       ARM_BX (code, ARMREG_IP);
-#else
                                        vtable_offset_ins = code;
                                        ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0);
                                        ARM_LDR_REG_REG (code, ARMREG_R1, ARMREG_IP, ARMREG_R1);
@@ -7137,14 +7023,7 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                        ARM_POP4 (code, ARMREG_R0, ARMREG_R1, ARMREG_IP, ARMREG_PC);
                                
                                        code = arm_emit_value_and_patch_ldr (code, vtable_offset_ins, vtable_offset);
-#endif
                                } else {
-#ifdef USE_JUMP_TABLES
-                                       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, vtable_offset);
-                                       ARM_POP3 (code, ARMREG_R0, ARMREG_R1, ARMREG_R2);
-                                       mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 0);
-                                       ARM_BX (code, ARMREG_IP);
-#else
                                        ARM_POP2 (code, ARMREG_R0, ARMREG_R1);
                                        if (large_offsets) {
                                                mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 2 * sizeof (mgreg_t));
@@ -7152,23 +7031,10 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                        }
                                        mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 0);
                                        ARM_LDR_IMM (code, ARMREG_PC, ARMREG_IP, vtable_offset);
-#endif
                                }
                        }
 
                        if (fail_case) {
-#ifdef USE_JUMP_TABLES
-                               set_jumptable_element (jte, GPOINTER_TO_UINT (item->jmp_code), code);
-                               target_code_jti = TARGET_CODE_JTI (i);
-                               /* Load target address */
-                               code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, target_code_jti, ARMCOND_AL);
-                               /* Restore registers */
-                               ARM_POP3 (code, ARMREG_R0, ARMREG_R1, ARMREG_R2);
-                               mono_add_unwind_op_def_cfa_offset (unwind_ops, code, start, 0);
-                               /* And branch */
-                               ARM_BX (code, ARMREG_R1);
-                               set_jumptable_element (jte, target_code_jti, fail_tramp);
-#else
                                arm_patch (item->jmp_code, (guchar*)code);
 
                                target_code_ins = code;
@@ -7180,14 +7046,9 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                ARM_POP4 (code, ARMREG_R0, ARMREG_R1, ARMREG_IP, ARMREG_PC);
                                
                                code = arm_emit_value_and_patch_ldr (code, target_code_ins, (gsize)fail_tramp);
-#endif
                                item->jmp_code = NULL;
                        }
 
-#ifdef USE_JUMP_TABLES
-                       if (imt_method_jti)
-                               set_jumptable_element (jte, imt_method_jti, item->key);
-#else
                        if (imt_method)
                                code = arm_emit_value_and_patch_ldr (code, imt_method, (guint32)item->key);
 
@@ -7204,22 +7065,13 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                                code += extra_space;
                                extra_space = 0;
                        }
-#endif
                } else {
-#ifdef USE_JUMP_TABLES
-                       code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, IMT_METHOD_JTI (i), ARMCOND_AL);
-                       ARM_CMP_REG_REG (code, ARMREG_R0, ARMREG_R1);
-                       code = load_element_with_regbase_cond (code, ARMREG_R1, ARMREG_R2, JUMP_CODE_JTI (i), ARMCOND_HS);
-                       ARM_BX_COND (code, ARMCOND_HS, ARMREG_R1);
-                       item->jmp_code = GUINT_TO_POINTER (JUMP_CODE_JTI (i));
-#else
                        ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0);
                        ARM_CMP_REG_REG (code, ARMREG_R0, ARMREG_R1);
 
                        item->jmp_code = (guint8*)code;
                        ARM_B_COND (code, ARMCOND_HS, 0);
                        ++extra_space;
-#endif
                }
        }
 
@@ -7227,23 +7079,14 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                MonoIMTCheckItem *item = imt_entries [i];
                if (item->jmp_code) {
                        if (item->check_target_idx)
-#ifdef USE_JUMP_TABLES
-                               set_jumptable_element (jte, GPOINTER_TO_UINT (item->jmp_code), imt_entries [item->check_target_idx]->code_target);
-#else
                                arm_patch (item->jmp_code, imt_entries [item->check_target_idx]->code_target);
-#endif
                }
                if (i > 0 && item->is_equals) {
                        int j;
-#ifdef USE_JUMP_TABLES
-                       for (j = i - 1; j >= 0 && !imt_entries [j]->is_equals; --j)
-                               set_jumptable_element (jte, IMT_METHOD_JTI (j), imt_entries [j]->key);
-#else
                        arminstr_t *space_start = constant_pool_starts [i];
                        for (j = i - 1; j >= 0 && !imt_entries [j]->is_equals; --j) {
                                space_start = arm_emit_value_and_patch_ldr (space_start, (arminstr_t*)imt_entries [j]->code_target, (guint32)imt_entries [j]->key);
                        }
-#endif
                }
        }
 
@@ -7255,9 +7098,7 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
        }
 #endif
 
-#ifndef USE_JUMP_TABLES
        g_free (constant_pool_starts);
-#endif
 
        mono_arch_flush_icache ((guint8*)start, size);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_IMT_TRAMPOLINE, NULL);
@@ -7343,16 +7184,10 @@ mono_arch_set_breakpoint (MonoJitInfo *ji, guint8 *ip)
                int dreg = ARMREG_LR;
 
                /* Read from another trigger page */
-#ifdef USE_JUMP_TABLES
-               gpointer *jte = mono_jumptable_add_entry ();
-               code = mono_arm_load_jumptable_entry (code, jte, dreg);
-               jte [0] = bp_trigger_page;
-#else
                ARM_LDR_IMM (code, dreg, ARMREG_PC, 0);
                ARM_B (code, 0);
                *(int*)code = (int)bp_trigger_page;
                code += 4;
-#endif
                ARM_LDR_IMM (code, dreg, dreg, 0);
 
                mono_arch_flush_icache (code - 16, 16);
index bcd922f522b628fac0f0fd7f0f91e13341022577..046b8c543fff784b91b7342b1d1d00eb7ce4d856 100644 (file)
 #include <mono/utils/mono-context.h>
 #include <glib.h>
 
-#ifdef __native_client_codegen__
-#define kNaClAlignmentARM 16
-#define kNaClAlignmentMaskARM (kNaClAlignmentARM - 1)
-#define kNaClLengthOfCallImm 4
-#endif
-
 #if defined(ARM_FPU_NONE)
 #define MONO_ARCH_SOFT_FLOAT_FALLBACK 1
 #endif
@@ -151,7 +145,9 @@ typedef enum {
        GSHAREDVT_RET_I1 = 3,
        GSHAREDVT_RET_U1 = 4,
        GSHAREDVT_RET_I2 = 5,
-       GSHAREDVT_RET_U2 = 6
+       GSHAREDVT_RET_U2 = 6,
+       GSHAREDVT_RET_VFP_R4 = 7,
+       GSHAREDVT_RET_VFP_R8 = 8
 } GSharedVtRetMarshal;
 
 typedef struct {
@@ -170,6 +166,9 @@ typedef struct {
        int calli;
        /* Whenever this is a in or an out call */
        int gsharedvt_in;
+       /* Whenever this call uses fp registers */
+       int have_fregs;
+       gpointer caller_cinfo, callee_cinfo;
        /* Maps stack slots/registers in the caller to the stack slots/registers in the callee */
        /* A negative value means a register, i.e. -1=r0, -2=r1 etc. */
        int map [MONO_ZERO_LEN_ARRAY];
@@ -188,8 +187,10 @@ typedef enum {
        RegTypeBaseGen,
        /* FP value passed in either an ireg or a vfp reg */
        RegTypeFP,
+       /* Struct passed/returned in gregs */
        RegTypeStructByVal,
        RegTypeStructByAddr,
+       RegTypeStructByAddrOnStack,
        /* gsharedvt argument passed by addr in greg */
        RegTypeGSharedVtInReg,
        /* gsharedvt argument passed by addr on stack */
@@ -202,10 +203,11 @@ typedef struct {
        guint16 vtsize; /* in param area */
        /* RegTypeHFA */
        int esize;
-       /* RegTypeHFA */
+       /* RegTypeHFA/RegTypeStructByVal */
        int nregs;
        guint8  reg;
        ArgStorage  storage;
+       /* RegTypeStructByVal */
        gint32  struct_size;
        guint8  size    : 4; /* 1, 2, 4, 8, or regs used by RegTypeStructByVal */
 } ArgInfo;
@@ -229,12 +231,15 @@ typedef struct {
 
 
 #define PARAM_REGS 4
+#define FP_PARAM_REGS 8
 #define DYN_CALL_STACK_ARGS 10
 
 typedef struct {
-       mgreg_t regs [PARAM_REGS + DYN_CALL_STACK_ARGS];
+       mgreg_t regs [PARAM_REGS + FP_PARAM_REGS];
+       double fpregs [FP_PARAM_REGS];
        mgreg_t res, res2;
        guint8 *ret;
+       guint32 has_fpregs;
 } DynCallArgs;
 
 void arm_patch (guchar *code, const guchar *target);
@@ -245,7 +250,7 @@ void
 mono_arm_throw_exception_by_token (guint32 type_token, mgreg_t pc, mgreg_t sp, mgreg_t *int_regs, gdouble *fp_regs);
 
 gpointer
-mono_arm_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpointer *callee, gpointer mrgctx_reg);
+mono_arm_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpointer *callee, gpointer mrgctx_reg, double *caller_fregs, double *callee_fregs);
 
 typedef enum {
        MONO_ARM_FPU_NONE = 0,
@@ -304,7 +309,7 @@ typedef struct MonoCompileArch {
 
 #define MONO_ARCH_USE_SIGACTION 1
 
-#if defined(__native_client__) || defined(HOST_WATCHOS)
+#if defined(HOST_WATCHOS)
 #undef MONO_ARCH_USE_SIGACTION
 #endif
 
@@ -345,15 +350,14 @@ typedef struct MonoCompileArch {
 #define MONO_ARCH_HAVE_PATCH_CODE_NEW 1
 #define MONO_ARCH_HAVE_OP_GENERIC_CLASS_INIT 1
 
-#if defined(__native_client__)
-#undef MONO_ARCH_SOFT_DEBUG_SUPPORTED
-#undef MONO_ARCH_HAVE_SIGCTX_TO_MONOCTX
-#undef MONO_ARCH_HAVE_CONTEXT_SET_INT_REG
-#endif
-
 #define MONO_ARCH_HAVE_TLS_GET (mono_arm_have_tls_get ())
 #define MONO_ARCH_HAVE_TLS_GET_REG 1
 
+#ifdef TARGET_WATCHOS
+#define MONO_ARCH_DISABLE_HW_TRAPS 1
+#define MONO_ARCH_HAVE_UNWIND_BACKTRACE 1
+#endif
+
 /* ARM doesn't have too many registers, so we have to use a callee saved one */
 #define MONO_ARCH_RGCTX_REG ARMREG_V5
 #define MONO_ARCH_IMT_REG MONO_ARCH_RGCTX_REG
@@ -395,14 +399,6 @@ mono_arm_patchable_b (guint8 *code, int cond);
 guint8*
 mono_arm_patchable_bl (guint8 *code, int cond);
 
-#ifdef USE_JUMP_TABLES
-guint8*
-mono_arm_load_jumptable_entry_addr (guint8 *code, gpointer *jte, ARMReg reg);
-
-guint8*
-mono_arm_load_jumptable_entry (guint8 *code, gpointer *jte, ARMReg reg);
-#endif
-
 gboolean
 mono_arm_is_hard_float (void);
 
index 5e5c27a53f6d21701ec85ced4cfc39c5b5132406..57a7a38deef9f7845a8aaf94024d58955698e06e 100644 (file)
@@ -535,6 +535,10 @@ mono_print_ins_index_strbuf (int i, MonoInst *ins)
                case OP_GSHAREDVT_ARG_REGOFFSET:
                        g_string_append_printf (sbuf, " + 0x%lx", (long)ins->inst_offset);
                        break;
+               case OP_ISINST:
+               case OP_CASTCLASS:
+                       g_string_append_printf (sbuf, " %s", ins->klass->name);
+                       break;
                default:
                        break;
                }
@@ -881,11 +885,6 @@ spill_vreg (MonoCompile *cfg, MonoBasicBlock *bb, MonoInst **last, MonoInst *ins
                mono_regstate_free_int (rs, sel);
 }
 
-/* This isn't defined on older glib versions and on some platforms */
-#ifndef G_GUINT64_FORMAT
-#define G_GUINT64_FORMAT "ul"
-#endif
-
 static int
 get_register_spilling (MonoCompile *cfg, MonoBasicBlock *bb, MonoInst **last, MonoInst *ins, regmask_t regmask, int reg, int bank)
 {
index a4d15fa4849100f30054a6e2324dc540937f0aa9..b64f4e24e1711001f7198928b5ac0ea442c78a22 100644 (file)
@@ -671,6 +671,8 @@ get_method_from_stack_frame (MonoJitInfo *ji, gpointer generic_info)
 gboolean
 mono_exception_walk_trace (MonoException *ex, MonoExceptionFrameWalk func, gpointer user_data)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoDomain *domain = mono_domain_get ();
        MonoArray *ta = ex->trace_ips;
        int len, i;
@@ -1332,7 +1334,8 @@ setup_stack_trace (MonoException *mono_ex, GSList *dynamic_methods, MonoArray *i
                                        if (dis_link) {
                                                MonoObject *o = mono_gchandle_get_target (dis_link);
                                                if (o) {
-                                                       list = mono_mlist_prepend (list, o);
+                                                       list = mono_mlist_prepend_checked (list, o, &error);
+                                                       mono_error_assert_ok (&error);
                                                }
                                        }
                                }
@@ -1506,6 +1509,7 @@ mono_handle_exception_internal_first_pass (MonoContext *ctx, MonoObject *obj, gi
                                        if (is_user_frame)
                                                setup_stack_trace (mono_ex, dynamic_methods, initial_trace_ips, &trace_ips);
 
+#ifndef MONO_CROSS_COMPILE
 #ifdef MONO_CONTEXT_SET_LLVM_EXC_REG
                                        if (ji->from_llvm)
                                                MONO_CONTEXT_SET_LLVM_EXC_REG (ctx, ex_obj);
@@ -1517,6 +1521,7 @@ mono_handle_exception_internal_first_pass (MonoContext *ctx, MonoObject *obj, gi
                                        /* store the exception object in bp + ei->exvar_offset */
                                        *((gpointer *)(gpointer)((char *)MONO_CONTEXT_GET_BP (ctx) + ei->exvar_offset)) = ex_obj;
 #endif
+#endif
 
 #ifdef MONO_CONTEXT_SET_LLVM_EH_SELECTOR_REG
                                        /*
@@ -1548,6 +1553,8 @@ mono_handle_exception_internal_first_pass (MonoContext *ctx, MonoObject *obj, gi
                                        }
                                }
 
+                               MonoError isinst_error;
+                               mono_error_init (&isinst_error);
                                if (ei->flags == MONO_EXCEPTION_CLAUSE_NONE && mono_object_isinst_checked (ex_obj, catch_class, &error)) {
                                        setup_stack_trace (mono_ex, dynamic_methods, initial_trace_ips, &trace_ips);
                                        g_slist_free (dynamic_methods);
@@ -1559,7 +1566,7 @@ mono_handle_exception_internal_first_pass (MonoContext *ctx, MonoObject *obj, gi
                                        MONO_CONTEXT_SET_IP (ctx, ei->handler_start);
                                        return TRUE;
                                }
-                               mono_error_cleanup (&error);
+                               mono_error_cleanup (&isinst_error);
                        }
                }
 
@@ -1692,7 +1699,15 @@ mono_handle_exception_internal (MonoContext *ctx, MonoObject *obj, gboolean resu
                                mono_error_assert_ok (&error);
                        }
                        if (msg == NULL) {
-                               msg = message ? mono_string_to_utf8 ((MonoString *) message) : g_strdup ("(System.Exception.Message property not available)");
+                               if (message) {
+                                       msg = mono_string_to_utf8_checked ((MonoString *) message, &error);
+                                       if (!is_ok (&error)) {
+                                               mono_error_cleanup (&error);
+                                               msg = g_strdup ("(error while display System.Exception.Message property)");
+                                       }
+                               } else {
+                                       msg = g_strdup ("(System.Exception.Message property not available)");
+                               }
                        }
                        g_print ("[%p:] EXCEPTION handling: %s.%s: %s\n", (void*)mono_native_thread_id_get (), mono_object_class (obj)->name_space, mono_object_class (obj)->name, msg);
                        g_free (msg);
@@ -1821,12 +1836,14 @@ mono_handle_exception_internal (MonoContext *ctx, MonoObject *obj, gboolean resu
                                        ex_obj = obj;
 
                                if (((ei->flags == MONO_EXCEPTION_CLAUSE_NONE) || (ei->flags == MONO_EXCEPTION_CLAUSE_FILTER))) {
+#ifndef MONO_CROSS_COMPILE
 #ifdef MONO_CONTEXT_SET_LLVM_EXC_REG
                                        MONO_CONTEXT_SET_LLVM_EXC_REG (ctx, ex_obj);
 #else
                                        g_assert (!ji->from_llvm);
                                        /* store the exception object in bp + ei->exvar_offset */
                                        *((gpointer *)(gpointer)((char *)MONO_CONTEXT_GET_BP (ctx) + ei->exvar_offset)) = ex_obj;
+#endif
 #endif
                                }
 
@@ -2001,6 +2018,8 @@ mono_debugger_run_finally (MonoContext *start_ctx)
 gboolean
 mono_handle_exception (MonoContext *ctx, MonoObject *obj)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
 #ifndef DISABLE_PERFCOUNTERS
        mono_perfcounters->exceptions_thrown++;
 #endif
@@ -2141,6 +2160,8 @@ restore_stack_protection (void)
 gpointer
 mono_altstack_restore_prot (mgreg_t *regs, guint8 *code, gpointer *tramp_data, guint8* tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        void (*func)(void) = (void (*)(void))tramp_data;
        func ();
        return NULL;
@@ -2542,6 +2563,8 @@ mono_print_thread_dump_from_ctx (MonoContext *ctx)
 void
 mono_resume_unwind (MonoContext *ctx)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoJitTlsData *jit_tls = (MonoJitTlsData *)mono_native_tls_get_value (mono_jit_tls_id);
        MonoContext new_ctx;
 
@@ -2814,13 +2837,18 @@ mono_invoke_unhandled_exception_hook (MonoObject *exc)
        if (unhandled_exception_hook) {
                unhandled_exception_hook (exc, unhandled_exception_hook_data);
        } else {
+               MonoError inner_error;
                MonoObject *other = NULL;
-               MonoString *str = mono_object_to_string (exc, &other);
+               MonoString *str = mono_object_try_to_string (exc, &other, &inner_error);
                char *msg = NULL;
                
-               if (str)
-                       msg = mono_string_to_utf8 (str);
-               else if (other) {
+               if (str && is_ok (&inner_error)) {
+                       msg = mono_string_to_utf8_checked (str, &inner_error);
+               }
+               if (!is_ok (&inner_error)) {
+                       msg = g_strdup_printf ("Nested exception while formatting original exception");
+                       mono_error_cleanup (&inner_error);
+               } else if (other) {
                        char *original_backtrace = mono_exception_get_managed_backtrace ((MonoException*)exc);
                        char *nested_backtrace = mono_exception_get_managed_backtrace ((MonoException*)other);
 
@@ -2892,6 +2920,8 @@ mono_jinfo_get_epilog_size (MonoJitInfo *ji)
 static void
 throw_exception (MonoObject *ex, gboolean rethrow)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoError error;
        MonoJitTlsData *jit_tls = mono_get_jit_tls ();
        MonoException *mono_ex;
index 1c37f38d726df2839d8fe82a9172edf7c47f2962..e1e2eb19b430c0040972a551caad3acf31f757a0 100644 (file)
@@ -862,7 +862,7 @@ class_type_info (MonoDomain *domain, MonoClass *klass, MonoRgctxInfoType info_ty
        case MONO_RGCTX_INFO_STATIC_DATA: {
                MonoVTable *vtable = mono_class_vtable (domain, klass);
                if (!vtable) {
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+                       mono_error_set_for_class_failure (error, klass);
                        return NULL;
                }
                return mono_vtable_get_static_field_data (vtable);
@@ -874,7 +874,7 @@ class_type_info (MonoDomain *domain, MonoClass *klass, MonoRgctxInfoType info_ty
        case MONO_RGCTX_INFO_VTABLE: {
                MonoVTable *vtable = mono_class_vtable (domain, klass);
                if (!vtable) {
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (klass));
+                       mono_error_set_for_class_failure (error, klass);
                        return NULL;
                }
                return vtable;
@@ -936,9 +936,10 @@ class_type_info (MonoDomain *domain, MonoClass *klass, MonoRgctxInfoType info_ty
                                memcpy_method [size] = m;
                        }
                        if (!domain_info->memcpy_addr [size]) {
-                               gpointer addr = mono_compile_method (memcpy_method [size]);
+                               gpointer addr = mono_compile_method_checked (memcpy_method [size], error);
                                mono_memory_barrier ();
                                domain_info->memcpy_addr [size] = (gpointer *)addr;
+                               mono_error_assert_ok (error);
                        }
                        return domain_info->memcpy_addr [size];
                } else {
@@ -956,9 +957,10 @@ class_type_info (MonoDomain *domain, MonoClass *klass, MonoRgctxInfoType info_ty
                                bzero_method [size] = m;
                        }
                        if (!domain_info->bzero_addr [size]) {
-                               gpointer addr = mono_compile_method (bzero_method [size]);
+                               gpointer addr = mono_compile_method_checked (bzero_method [size], error);
                                mono_memory_barrier ();
                                domain_info->bzero_addr [size] = (gpointer *)addr;
+                               mono_error_assert_ok (error);
                        }
                        return domain_info->bzero_addr [size];
                }
@@ -1085,7 +1087,11 @@ get_wrapper_shared_type (MonoType *t)
        case MONO_TYPE_SZARRAY:
        case MONO_TYPE_ARRAY:
        case MONO_TYPE_PTR:
-               return &mono_defaults.int_class->byval_arg;
+               // FIXME: refs and intptr cannot be shared because
+               // they are treated differently when a method has a vret arg,
+               // see get_call_info ().
+               return &mono_defaults.object_class->byval_arg;
+               //return &mono_defaults.int_class->byval_arg;
        case MONO_TYPE_GENERICINST: {
                MonoError error;
                MonoClass *klass;
@@ -1096,7 +1102,7 @@ get_wrapper_shared_type (MonoType *t)
                int i;
 
                if (!MONO_TYPE_ISSTRUCT (t))
-                       return &mono_defaults.int_class->byval_arg;
+                       return get_wrapper_shared_type (&mono_defaults.object_class->byval_arg);
 
                klass = mono_class_from_mono_type (t);
                orig_ctx = &klass->generic_class->context;
@@ -1355,6 +1361,9 @@ mini_get_gsharedvt_out_sig_wrapper (MonoMethodSignature *sig)
                // FIXME:
                if (stind_op == CEE_STOBJ)
                        mono_mb_emit_op (mb, CEE_STOBJ, mono_class_from_mono_type (sig->ret));
+               else if (stind_op == CEE_STIND_REF)
+                       /* Avoid write barriers, the vret arg points to the stack */
+                       mono_mb_emit_byte (mb, CEE_STIND_I);
                else
                        mono_mb_emit_byte (mb, stind_op);
        }
@@ -1411,6 +1420,7 @@ mini_get_gsharedvt_wrapper (gboolean gsharedvt_in, gpointer addr, MonoMethodSign
 {
        static gboolean inited = FALSE;
        static int num_trampolines;
+       MonoError error;
        gpointer res, info;
        MonoDomain *domain = mono_domain_get ();
        MonoJitDomainInfo *domain_info;
@@ -1429,7 +1439,8 @@ mini_get_gsharedvt_wrapper (gboolean gsharedvt_in, gpointer addr, MonoMethodSign
                        wrapper = mini_get_gsharedvt_in_sig_wrapper (normal_sig);
                else
                        wrapper = mini_get_gsharedvt_out_sig_wrapper (normal_sig);
-               res = mono_compile_method (wrapper);
+               res = mono_compile_method_checked (wrapper, &error);
+               mono_error_assert_ok (&error);
                return res;
        }
 
@@ -1462,8 +1473,9 @@ mini_get_gsharedvt_wrapper (gboolean gsharedvt_in, gpointer addr, MonoMethodSign
 
                if (!tramp_addr) {
                        wrapper = mono_marshal_get_gsharedvt_in_wrapper ();
-                       addr = mono_compile_method (wrapper);
+                       addr = mono_compile_method_checked (wrapper, &error);
                        mono_memory_barrier ();
+                       mono_error_assert_ok (&error);
                        tramp_addr = addr;
                }
                addr = tramp_addr;
@@ -1473,8 +1485,9 @@ mini_get_gsharedvt_wrapper (gboolean gsharedvt_in, gpointer addr, MonoMethodSign
 
                if (!tramp_addr) {
                        wrapper = mono_marshal_get_gsharedvt_out_wrapper ();
-                       addr = mono_compile_method (wrapper);
+                       addr = mono_compile_method_checked (wrapper, &error);
                        mono_memory_barrier ();
+                       mono_error_assert_ok (&error);
                        tramp_addr = addr;
                }
                addr = tramp_addr;
@@ -1571,13 +1584,15 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
                gpointer arg = NULL;
 
                if (mono_llvm_only) {
-                       addr = mono_compile_method (m);
+                       addr = mono_compile_method_checked (m, error);
+                       return_val_if_nok (error, NULL);
                        addr = mini_add_method_wrappers_llvmonly (m, addr, FALSE, FALSE, &arg);
 
                        /* Returns an ftndesc */
                        return mini_create_llvmonly_ftndesc (domain, addr, arg);
                } else {
-                       addr = mono_compile_method ((MonoMethod *)data);
+                       addr = mono_compile_method_checked ((MonoMethod *)data, error);
+                       return_val_if_nok (error, NULL);
                        return mini_add_method_trampoline ((MonoMethod *)data, addr, mono_method_needs_static_rgctx_invoke ((MonoMethod *)data, FALSE), FALSE);
                }
        }
@@ -1588,7 +1603,8 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
 
                g_assert (mono_llvm_only);
 
-               addr = mono_compile_method (m);
+               addr = mono_compile_method_checked (m, error);
+               return_val_if_nok (error, NULL);
 
                MonoJitInfo *ji;
                gboolean callee_gsharedvt;
@@ -1629,9 +1645,9 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
                method = info->klass->vtable [ioffset + slot];
 
                method = mono_class_inflate_generic_method_checked (method, context, error);
-               if (!mono_error_ok (error))
-                       return NULL;
-               addr = mono_compile_method (method);
+               return_val_if_nok (error, NULL);
+               addr = mono_compile_method_checked (method, error);
+               return_val_if_nok (error, NULL);
                return mini_add_method_trampoline (method, addr, mono_method_needs_static_rgctx_invoke (method, FALSE), FALSE);
        }
        case MONO_RGCTX_INFO_VIRT_METHOD_BOX_TYPE: {
@@ -1664,7 +1680,7 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
        }
 #ifndef DISABLE_REMOTING
        case MONO_RGCTX_INFO_REMOTING_INVOKE_WITH_CHECK:
-               return mono_compile_method (mono_marshal_get_remoting_invoke_with_check ((MonoMethod *)data));
+               return mono_compile_method_checked (mono_marshal_get_remoting_invoke_with_check ((MonoMethod *)data), error);
 #endif
        case MONO_RGCTX_INFO_METHOD_DELEGATE_CODE:
                return mono_domain_alloc0 (domain, sizeof (gpointer));
@@ -1688,7 +1704,7 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
 
                vtable = mono_class_vtable (domain, method->method.method.klass);
                if (!vtable) {
-                       mono_error_set_exception_instance (error, mono_class_get_exception_for_failure (method->method.method.klass));
+                       mono_error_set_for_class_failure (error, method->method.method.klass);
                        return NULL;
                }
 
@@ -1742,9 +1758,10 @@ instantiate_info (MonoDomain *domain, MonoRuntimeGenericContextInfoTemplate *oti
 
                g_assert (method->is_inflated);
 
-               if (!virtual_)
-                       addr = mono_compile_method (method);
-               else
+               if (!virtual_) {
+                       addr = mono_compile_method_checked (method, error);
+                       return_val_if_nok (error, NULL);
+               } else
                        addr = NULL;
 
                if (virtual_) {
index 8a8a7e35d6308c4e2d014b5c715ea8d799eef6b7..d88a6c99a8f362bb690424ace4462d58f3d913d9 100644 (file)
@@ -3777,17 +3777,18 @@ ia64_patch (unsigned char* code, gpointer target)
 }
 
 void
-mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors)
+mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors, MonoError *error)
 {
        MonoJumpInfo *patch_info;
 
+       mono_error_init (error);
+
        for (patch_info = ji; patch_info; patch_info = patch_info->next) {
                unsigned char *ip = patch_info->ip.i + code;
                const unsigned char *target;
-               MonoError error;
 
-               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
-               mono_error_raise_exception (&error); /* FIXME: don't raise here */
+               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, error);
+               return_if_nok (error);
 
                if (patch_info->type == MONO_PATCH_INFO_NONE)
                        continue;
index d6e2677cd237c65c788902a67174e02c426ce9d9..79f2dbcad50b7dd51bf49528ccddfad2c99b3aa3 100644 (file)
@@ -94,6 +94,7 @@ typedef struct {
        LLVMContextRef context;
        LLVMValueRef sentinel_exception;
        void *di_builder, *cu;
+       GHashTable *objc_selector_to_var;
 } MonoLLVMModule;
 
 /*
@@ -1282,6 +1283,9 @@ sig_to_llvm_sig_full (EmitContext *ctx, MonoMethodSignature *sig, LLVMCallInfo *
                }
                break;
        }
+       case LLVMArgAsIArgs:
+               ret_type = LLVMArrayType (IntPtrType (), cinfo->ret.nslots);
+               break;
        case LLVMArgFpStruct: {
                /* Vtype returned as a fp struct */
                LLVMTypeRef members [16];
@@ -1744,26 +1748,14 @@ get_most_deep_clause (MonoCompile *cfg, EmitContext *ctx, MonoBasicBlock *bb)
 {
        // Since they're sorted by nesting we just need
        // the first one that the bb is a member of
-       MonoExceptionClause *last = NULL;
-
        for (int i = 0; i < cfg->header->num_clauses; i++) {
                MonoExceptionClause *curr = &cfg->header->clauses [i];
 
                if (MONO_OFFSET_IN_CLAUSE (curr, bb->real_offset))
                        return curr;
-               /*
-               if (MONO_OFFSET_IN_CLAUSE (curr, bb->real_offset)) {
-                       if (last && CLAUSE_END(last) > CLAUSE_END(curr))
-                               last = curr;
-                       else
-                               last = curr;
-               } else if(last) {
-                       break;
-               }
-               */
        }
 
-       return last;
+       return NULL;
 }
        
 static void
@@ -2045,7 +2037,10 @@ emit_store_general (EmitContext *ctx, MonoBasicBlock *bb, LLVMBuilderRef *builde
                args [4] = LLVMConstInt (LLVMInt32Type (), ordering, FALSE);
                emit_call (ctx, bb, builder_ref, get_intrinsic (ctx, intrins_name), args, 5);
        } else {
-               mono_llvm_build_store (*builder_ref, value, addr, is_faulting, barrier);
+               if (barrier != LLVM_BARRIER_NONE)
+                       mono_llvm_build_aligned_store (*builder_ref, value, addr, barrier, size);
+               else
+                       mono_llvm_build_store (*builder_ref, value, addr, is_faulting, barrier);
        }
 }
 
@@ -3213,8 +3208,12 @@ process_call (EmitContext *ctx, MonoBasicBlock *bb, LLVMBuilderRef *builder_ref,
                                        target =
                                                mono_create_jit_trampoline (mono_domain_get (),
                                                                                                        call->method, &error);
-                                       if (!mono_error_ok (&error))
-                                               mono_error_raise_exception (&error); /* FIXME: Don't raise here */
+                                       if (!is_ok (&error)) {
+                                               set_failure (ctx, mono_error_get_message (&error));
+                                               mono_error_cleanup (&error);
+                                               return;
+                                       }
+
                                        tramp_var = LLVMAddGlobal (ctx->lmodule, LLVMPointerType (llvm_sig, 0), name);
                                        LLVMSetInitializer (tramp_var, LLVMConstIntToPtr (LLVMConstInt (LLVMInt64Type (), (guint64)(size_t)target, FALSE), LLVMPointerType (llvm_sig, 0)));
                                        LLVMSetLinkage (tramp_var, LLVMExternalLinkage);
@@ -3224,15 +3223,17 @@ process_call (EmitContext *ctx, MonoBasicBlock *bb, LLVMBuilderRef *builder_ref,
 #else
                                target =
                                        mono_create_jit_trampoline (mono_domain_get (),
-                                                                                               call->method, &error);
-                               if (!mono_error_ok (&error))
-                                       mono_error_raise_exception (&error); /* FIXME: Don't raise here */
+                                                                   call->method, &error);
+                               if (!is_ok (&error)) {
+                                       g_free (name);
+                                       set_failure (ctx, mono_error_get_message (&error));
+                                       mono_error_cleanup (&error);
+                                       return;
+                               }
 
                                callee = LLVMAddFunction (ctx->lmodule, name, llvm_sig);
                                g_free (name);
 
-                               if (!mono_error_ok (&error))
-                                       mono_error_raise_exception (&error); /* FIXME: Don't raise here */
                                LLVMAddGlobalMapping (ctx->module->ee, callee, target);
 #endif
                        }
@@ -3538,6 +3539,7 @@ process_call (EmitContext *ctx, MonoBasicBlock *bb, LLVMBuilderRef *builder_ref,
                        addresses [call->inst.dreg] = build_alloca (ctx, sig->ret);
                LLVMBuildStore (builder, lcall, addresses [call->inst.dreg]);
                break;
+       case LLVMArgAsIArgs:
        case LLVMArgFpStruct:
                if (!addresses [call->inst.dreg])
                        addresses [call->inst.dreg] = build_alloca (ctx, sig->ret);
@@ -4365,6 +4367,7 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                                LLVMBuildRetVoid (builder);
                                break;
                        }
+                       case LLVMArgAsIArgs:
                        case LLVMArgFpStruct: {
                                LLVMTypeRef ret_type = LLVMGetReturnType (LLVMGetElementType (LLVMTypeOf (method)));
                                LLVMValueRef retval;
@@ -5236,6 +5239,19 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                        ji = mono_aot_patch_info_dup (tmp_ji);
                        g_free (tmp_ji);
 
+                       if (ji->type == MONO_PATCH_INFO_ICALL_ADDR) {
+                               char *symbol = mono_aot_get_direct_call_symbol (MONO_PATCH_INFO_ICALL_ADDR_CALL, ji->data.target);
+                               if (symbol) {
+                                       /*
+                                        * Avoid emitting a got entry for these since the method is directly called, and it might not be
+                                        * resolvable at runtime using dlsym ().
+                                        */
+                                       g_free (symbol);
+                                       values [ins->dreg] = LLVMConstInt (IntPtrType (), 0, FALSE);
+                                       break;
+                               }
+                       }
+
                        ji->next = cfg->patch_info;
                        cfg->patch_info = ji;
                                   
@@ -5466,9 +5482,6 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                case OP_ATOMIC_STORE_U8:
                case OP_ATOMIC_STORE_R4:
                case OP_ATOMIC_STORE_R8: {
-                       set_failure (ctx, "atomic mono.store intrinsic");
-                       break;
-#if 0
                        int size;
                        gboolean sext, zext;
                        LLVMTypeRef t;
@@ -5476,6 +5489,11 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                        BarrierKind barrier = (BarrierKind) ins->backend.memory_barrier_kind;
                        LLVMValueRef index, addr, value;
 
+                       if (!cfg->llvm_only) {
+                               set_failure (ctx, "atomic mono.store intrinsic");
+                               break;
+                       }
+
                        if (!values [ins->inst_destbasereg]) {
                            set_failure (ctx, "inst_destbasereg");
                                break;
@@ -5489,7 +5507,6 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
 
                        emit_store_general (ctx, bb, &builder, size, value, addr, is_volatile, barrier);
                        break;
-#endif
                }
                case OP_RELAXED_NOP: {
 #if defined(TARGET_AMD64) || defined(TARGET_X86)
@@ -5549,6 +5566,43 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
 #endif
                        break;
                }
+               case OP_GC_SAFE_POINT: {
+                       LLVMValueRef val, cmp, callee;
+                       LLVMBasicBlockRef poll_bb, cont_bb;
+                       static LLVMTypeRef sig;
+                       const char *icall_name = "mono_threads_state_poll";
+
+                       if (!sig)
+                               sig = LLVMFunctionType0 (LLVMVoidType (), FALSE);
+
+                       /*
+                        * if (!*sreg1)
+                        *   mono_threads_state_poll ();
+                        * FIXME: Use a preserveall wrapper
+                        */
+                       val = mono_llvm_build_load (builder, convert (ctx, lhs, LLVMPointerType (IntPtrType (), 0)), "", TRUE, LLVM_BARRIER_NONE);
+                       cmp = LLVMBuildICmp (builder, LLVMIntEQ, val, LLVMConstNull (LLVMTypeOf (val)), "");
+                       poll_bb = gen_bb (ctx, "POLL_BB");
+                       cont_bb = gen_bb (ctx, "CONT_BB");
+                       LLVMBuildCondBr (builder, cmp, cont_bb, poll_bb);
+
+                       ctx->builder = builder = create_builder (ctx);
+                       LLVMPositionBuilderAtEnd (builder, poll_bb);
+
+                       if (ctx->cfg->compile_aot) {
+                               callee = get_callee (ctx, sig, MONO_PATCH_INFO_INTERNAL_METHOD, icall_name);
+                       } else {
+                               gpointer target = resolve_patch (ctx->cfg, MONO_PATCH_INFO_INTERNAL_METHOD, icall_name);
+                               callee = emit_jit_callee (ctx, icall_name, sig, target);
+                       }
+                       LLVMBuildCall (builder, callee, NULL, 0, "");
+                       LLVMBuildBr (builder, cont_bb);
+
+                       ctx->builder = builder = create_builder (ctx);
+                       LLVMPositionBuilderAtEnd (builder, cont_bb);
+                       ctx->bblocks [bb->block_num].end_bblock = cont_bb;
+                       break;
+               }
 
                        /*
                         * Overflow opcodes.
@@ -5559,14 +5613,12 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                case OP_ISUB_OVF_UN:
                case OP_IMUL_OVF:
                case OP_IMUL_OVF_UN:
-#if SIZEOF_VOID_P == 8
                case OP_LADD_OVF:
                case OP_LADD_OVF_UN:
                case OP_LSUB_OVF:
                case OP_LSUB_OVF_UN:
                case OP_LMUL_OVF:
                case OP_LMUL_OVF_UN:
-#endif
                        {
                                LLVMValueRef args [2], val, ovf, func;
 
@@ -5716,6 +5768,38 @@ process_bb (EmitContext *ctx, MonoBasicBlock *bb)
                        }
                        break;
                }
+               case OP_OBJC_GET_SELECTOR: {
+                       const char *name = (const char*)ins->inst_p0;
+                       LLVMValueRef var;
+
+                       if (!ctx->module->objc_selector_to_var)
+                               ctx->module->objc_selector_to_var = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
+                       var = g_hash_table_lookup (ctx->module->objc_selector_to_var, name);
+                       if (!var) {
+                               LLVMValueRef indexes [16];
+
+                               LLVMValueRef name_var = LLVMAddGlobal (ctx->lmodule, LLVMArrayType (LLVMInt8Type (), strlen (name) + 1), "@OBJC_METH_VAR_NAME");
+                               LLVMSetInitializer (name_var, mono_llvm_create_constant_data_array ((const uint8_t*)name, strlen (name) + 1));
+                               LLVMSetLinkage (name_var, LLVMPrivateLinkage);
+                               LLVMSetSection (name_var, "__TEXT,__objc_methname,cstring_literals");
+
+                               LLVMValueRef ref_var = LLVMAddGlobal (ctx->lmodule, LLVMPointerType (LLVMInt8Type (), 0), "@OBJC_SELECTOR_REFERENCES");
+
+                               indexes [0] = LLVMConstInt (LLVMInt32Type (), 0, 0);
+                               indexes [1] = LLVMConstInt (LLVMInt32Type (), 0, 0);
+                               LLVMSetInitializer (ref_var, LLVMConstGEP (name_var, indexes, 2));
+                               LLVMSetLinkage (ref_var, LLVMPrivateLinkage);
+                               LLVMSetExternallyInitialized (ref_var, TRUE);
+                               LLVMSetSection (ref_var, "__DATA, __objc_selrefs, literal_pointers, no_dead_strip");
+                               LLVMSetAlignment (ref_var, sizeof (mgreg_t));
+
+                               g_hash_table_insert (ctx->module->objc_selector_to_var, g_strdup (name), ref_var);
+                               var = ref_var;
+                       }
+
+                       values [ins->dreg] = LLVMBuildLoad (builder, var, "");
+                       break;
+               }
 
                        /* 
                         * SIMD
@@ -7062,6 +7146,12 @@ emit_method_inner (EmitContext *ctx)
 
                // FIXME: beforefieldinit
                if (ctx->has_got_access || mono_class_get_cctor (cfg->method->klass)) {
+                       /*
+                        * linkonce methods shouldn't have initialization,
+                        * because they might belong to assemblies which
+                        * haven't been loaded yet.
+                        */
+                       g_assert (!ctx->is_linkonce);
                        emit_init_method (ctx);
                } else {
                        LLVMBuildBr (ctx->builder, ctx->inited_bb);
@@ -7715,7 +7805,9 @@ static void
 add_intrinsic (LLVMModuleRef module, int id)
 {
        const char *name;
+#if defined(TARGET_AMD64) || defined(TARGET_X86)
        LLVMTypeRef ret_type, arg_types [16];
+#endif
 
        name = g_hash_table_lookup (intrins_id_to_name, GINT_TO_POINTER (id));
        g_assert (name);
@@ -8593,6 +8685,7 @@ mono_llvm_emit_aot_module (const char *filename, const char *cu_name)
                char *verifier_err;
 
                if (LLVMVerifyModule (module->lmodule, LLVMReturnStatusAction, &verifier_err)) {
+                       printf ("%s\n", verifier_err);
                        g_assert_not_reached ();
                }
        }
index 773bd20087c95e56a17e2f811f227a5b38e7867e..5d6ebc7b6bc126975df54bdc38c29d247d5ca8d0 100644 (file)
@@ -4671,10 +4671,11 @@ mono_arch_register_lowlevel_calls (void)
 }
 
 void
-mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors)
+mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors, MonoError *error)
 {
        MonoJumpInfo *patch_info;
-       MonoError error;
+
+       mono_error_init (error);
 
        for (patch_info = ji; patch_info; patch_info = patch_info->next) {
                unsigned char *ip = patch_info->ip.i + code;
@@ -4708,8 +4709,9 @@ mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain,
                case MONO_PATCH_INFO_R4:
                case MONO_PATCH_INFO_R8:
                        /* from OP_AOTCONST : lui + addiu */
-                       target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
-                       mono_error_raise_exception (&error); /* FIXME: don't raise here */
+                       target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, error);
+                       return_if_nok (error);
+
                        patch_lui_addiu ((guint32 *)(void *)ip, (guint32)target);
                        continue;
 #if 0
@@ -4722,8 +4724,9 @@ mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain,
                        /* everything is dealt with at epilog output time */
                        continue;
                default:
-                       target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
-                       mono_error_raise_exception (&error); /* FIXME: don't raise here */
+                       target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, error);
+                       return_if_nok (error);
+
                        mips_patch ((guint32 *)(void *)ip, (guint32)target);
                        break;
                }
index 9ce9be8a98c08ce51866bafee0324a087b8ee4c0..5d66853ece98745dcfe334f57c49d357517159d9 100644 (file)
@@ -349,6 +349,8 @@ mono_class_is_magic_assembly (MonoClass *klass)
                return TRUE;
        if (!strcmp ("Xamarin.Mac", klass->image->assembly_name))
                return TRUE;
+       if (!strcmp ("Xamarin.WatchOS", klass->image->assembly_name))
+               return TRUE;
        return FALSE;
 }
 
index ad48c07158e3f0877ae4033b5c2dd0ab9a1f207a..4c29d4a0e4dd0e9f5b3be528f88faa68f1be86ba 100644 (file)
@@ -42,6 +42,7 @@ MINI_OP(OP_SEQ_POINT, "seq_point", NONE, NONE, NONE)
 MINI_OP(OP_IL_SEQ_POINT, "il_seq_point", NONE, NONE, NONE)
 MINI_OP(OP_IMPLICIT_EXCEPTION, "implicit_exception", NONE, NONE, NONE)
 
+/* CALL opcodes need to stay together, see MONO_IS_CALL macro */
 MINI_OP(OP_VOIDCALL,   "voidcall", NONE, NONE, NONE)
 MINI_OP(OP_VOIDCALL_REG,       "voidcall_reg", NONE, IREG, NONE)
 MINI_OP(OP_VOIDCALL_MEMBASE,   "voidcall_membase", NONE, IREG, NONE)
@@ -705,6 +706,9 @@ MINI_OP(OP_STRLEN, "strlen", IREG, IREG, NONE)
 MINI_OP(OP_NEWARR, "newarr", IREG, IREG, NONE)
 MINI_OP(OP_LDLEN, "ldlen", IREG, IREG, NONE)
 MINI_OP(OP_BOUNDS_CHECK, "bounds_check", NONE, IREG, IREG)
+/* type checks */
+MINI_OP(OP_ISINST, "isinst", IREG, IREG, NONE)
+MINI_OP(OP_CASTCLASS, "castclass", IREG, IREG, NONE)
 /* get adress of element in a 2D array */
 MINI_OP(OP_LDELEMA2D, "getldelema2", NONE, NONE, NONE)
 /* inlined small memcpy with constant length */
index 95b45b56afb55485e6fef0845395d5e4638f6177..6f6e266a3b025d72fd9998435b46a8b053747b31 100644 (file)
@@ -107,7 +107,8 @@ mono_runtime_install_handlers (void)
 void
 mono_runtime_posix_install_handlers(void)
 {
-
+       /* we still need to ignore SIGPIPE */
+       signal (SIGPIPE, SIG_IGN);
 }
 
 void
@@ -704,7 +705,7 @@ static mono_native_thread_return_t
 sampling_thread_func (void *data)
 {
        mono_threads_attach_tools_thread ();
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Profiler sampler");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Profiler sampler");
 
        gint64 rate = 1000000000 / mono_profiler_get_sampling_rate ();
 
index c9116ff46e1e6a974f1e5391de97731bc38bd90e..3089a8546b1d3a4d605535a775c1f57d27eb793f 100644 (file)
@@ -4743,19 +4743,20 @@ mono_arch_register_lowlevel_calls (void)
 
 #ifndef DISABLE_JIT
 void
-mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors)
+mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors, MonoError *error)
 {
        MonoJumpInfo *patch_info;
        gboolean compile_aot = !run_cctors;
-       MonoError error;
+
+       mono_error_init (error);
 
        for (patch_info = ji; patch_info; patch_info = patch_info->next) {
                unsigned char *ip = patch_info->ip.i + code;
                unsigned char *target;
                gboolean is_fd = FALSE;
 
-               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
-               mono_error_raise_exception (&error); /* FIXME: don't raise here */
+               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, error);
+               return_if_nok (error);
 
                if (compile_aot) {
                        switch (patch_info->type) {
index 2c0750bfc72ca13e24597e8a2c98fcadcb0f58cd..d912d2c3d093f4749340af8f47fd6eedb7614b67 100644 (file)
@@ -63,6 +63,7 @@
 #include <mono/utils/dtrace.h>
 #include <mono/utils/mono-signal-handler.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/checked-build.h>
 #include <mono/io-layer/io-layer.h>
 
@@ -163,7 +164,8 @@ G_GNUC_UNUSED static char*
 get_method_from_ip (void *ip)
 {
        MonoJitInfo *ji;
-       char *method;
+       MonoMethod *method;
+       char *method_name;
        char *res;
        MonoDomain *domain = mono_domain_get ();
        MonoDebugSourceLocation *location;
@@ -192,14 +194,15 @@ get_method_from_ip (void *ip)
                return res;
        }
 
-       method = mono_method_full_name (jinfo_get_method (ji), TRUE);
+       method = jinfo_get_method (ji);
+       method_name = mono_method_full_name (method, TRUE);
        /* FIXME: unused ? */
-       location = mono_debug_lookup_source_location (jinfo_get_method (ji), (guint32)((guint8*)ip - (guint8*)ji->code_start), domain);
+       location = mono_debug_lookup_source_location (method, (guint32)((guint8*)ip - (guint8*)ji->code_start), domain);
 
-       res = g_strdup_printf (" %s + 0x%x (%p %p) [%p - %s]", method, (int)((char*)ip - (char*)ji->code_start), ji->code_start, (char*)ji->code_start + ji->code_size, domain, domain->friendly_name);
+       res = g_strdup_printf (" %s {%p} + 0x%x (%p %p) [%p - %s]", method_name, method, (int)((char*)ip - (char*)ji->code_start), ji->code_start, (char*)ji->code_start + ji->code_size, domain, domain->friendly_name);
 
        mono_debug_free_source_location (location);
-       g_free (method);
+       g_free (method_name);
 
        return res;
 }
@@ -360,65 +363,6 @@ mono_nacl_gc()
        __nacl_suspend_thread_if_needed();
 #endif
 }
-
-/* Given the temporary buffer (allocated by mono_global_codeman_reserve) into
- * which we are generating code, return a pointer to the destination in the
- * dynamic code segment into which the code will be copied when
- * mono_global_codeman_commit is called.
- * LOCKING: Acquires the jit lock.
- */
-void*
-nacl_global_codeman_get_dest (void *data)
-{
-       void *dest;
-       mono_jit_lock ();
-       dest = nacl_code_manager_get_code_dest (global_codeman, data);
-       mono_jit_unlock ();
-       return dest;
-}
-
-void
-mono_global_codeman_commit (void *data, int size, int newsize)
-{
-       mono_jit_lock ();
-       mono_code_manager_commit (global_codeman, data, size, newsize);
-       mono_jit_unlock ();
-}
-
-/*
- * Convenience function which calls mono_global_codeman_commit to validate and
- * copy the code. The caller sets *buf_base and *buf_size to the start and size
- * of the buffer (allocated by mono_global_codeman_reserve), and *code_end to
- * the byte after the last instruction byte. On return, *buf_base will point to
- * the start of the copied in the code segment, and *code_end will point after
- * the end of the copied code.
- */
-void
-nacl_global_codeman_validate (guint8 **buf_base, int buf_size, guint8 **code_end)
-{
-       guint8 *tmp = nacl_global_codeman_get_dest (*buf_base);
-       mono_global_codeman_commit (*buf_base, buf_size, *code_end - *buf_base);
-       *code_end = tmp + (*code_end - *buf_base);
-       *buf_base = tmp;
-}
-#else
-/* no-op versions of Native Client functions */
-void*
-nacl_global_codeman_get_dest (void *data)
-{
-       return data;
-}
-
-void
-mono_global_codeman_commit (void *data, int size, int newsize)
-{
-}
-
-void
-nacl_global_codeman_validate (guint8 **buf_base, int buf_size, guint8 **code_end)
-{
-}
-
 #endif /* __native_client__ */
 
 /**
@@ -614,6 +558,7 @@ mono_debug_count (void)
 gconstpointer
 mono_icall_get_wrapper_full (MonoJitICallInfo* callinfo, gboolean do_compile)
 {
+       MonoError error;
        char *name;
        MonoMethod *wrapper;
        gconstpointer trampoline;
@@ -635,9 +580,9 @@ mono_icall_get_wrapper_full (MonoJitICallInfo* callinfo, gboolean do_compile)
        g_free (name);
 
        if (do_compile) {
-               trampoline = mono_compile_method (wrapper);
+               trampoline = mono_compile_method_checked (wrapper, &error);
+               mono_error_assert_ok (&error);
        } else {
-               MonoError error;
 
                trampoline = mono_create_jit_trampoline (domain, wrapper, &error);
                mono_error_assert_ok (&error);
@@ -893,20 +838,20 @@ mono_set_lmf_addr (gpointer lmf_addr)
 }
 
 /*
- * mono_jit_thread_attach: called by native->managed wrappers
+ * mono_jit_thread_attach:
  *
- * In non-coop mode:
- *  - @dummy: is NULL
- *  - @return: the original domain which needs to be restored, or NULL.
+ * Called by Xamarin.Mac and other products. Attach thread to runtime if
+ * needed and switch to @domain.
  *
- * In coop mode:
- *  - @dummy: contains the original domain
- *  - @return: a cookie containing current MonoThreadInfo* if it was in BLOCKING mode, NULL otherwise
+ * @return the original domain which needs to be restored, or NULL.
  */
-gpointer
-mono_jit_thread_attach (MonoDomain *domain, gpointer *dummy)
+MonoDomain*
+mono_jit_thread_attach (MonoDomain *domain)
 {
        MonoDomain *orig;
+       gboolean attached;
+
+       g_assert (!mono_threads_is_coop_enabled ());
 
        if (!domain) {
                /* Happens when called from AOTed code which is only used in the root domain. */
@@ -915,97 +860,38 @@ mono_jit_thread_attach (MonoDomain *domain, gpointer *dummy)
 
        g_assert (domain);
 
-       if (!mono_threads_is_coop_enabled ()) {
-               gboolean attached;
-
 #ifdef MONO_HAVE_FAST_TLS
-               attached = MONO_FAST_TLS_GET (mono_lmf_addr) != NULL;
+       attached = MONO_FAST_TLS_GET (mono_lmf_addr) != NULL;
 #else
-               attached = mono_native_tls_get_value (mono_jit_tls_id) != NULL;
+       attached = mono_native_tls_get_value (mono_jit_tls_id) != NULL;
 #endif
 
-               if (!attached) {
-                       mono_thread_attach (domain);
-
-                       // #678164
-                       mono_thread_set_state (mono_thread_internal_current (), ThreadState_Background);
-               }
-
-               orig = mono_domain_get ();
-               if (orig != domain)
-                       mono_domain_set (domain, TRUE);
-
-               return orig != domain ? orig : NULL;
-       } else {
-               MonoThreadInfo *info;
-
-               info = mono_thread_info_current_unchecked ();
-               if (!info || !mono_thread_info_is_live (info)) {
-                       /* thread state STARTING -> RUNNING */
-                       mono_thread_attach (domain);
-
-                       // #678164
-                       mono_thread_set_state (mono_thread_internal_current (), ThreadState_Background);
-
-                       *dummy = NULL;
-
-                       /* mono_threads_reset_blocking_start returns the current MonoThreadInfo
-                        * if we were in BLOCKING mode */
-                       return mono_thread_info_current ();
-               } else {
-                       orig = mono_domain_get ();
-
-                       /* orig might be null if we did an attach -> detach -> attach sequence */
+       if (!attached) {
+               mono_thread_attach (domain);
 
-                       if (orig != domain)
-                               mono_domain_set (domain, TRUE);
+               // #678164
+               mono_thread_set_state (mono_thread_internal_current (), ThreadState_Background);
+       }
 
-                       *dummy = orig;
+       orig = mono_domain_get ();
+       if (orig != domain)
+               mono_domain_set (domain, TRUE);
 
-                       /* thread state (BLOCKING|RUNNING) -> RUNNING */
-                       return mono_threads_reset_blocking_start (dummy);
-               }
-       }
+       return orig != domain ? orig : NULL;
 }
 
 /*
- * mono_jit_thread_detach: called by native->managed wrappers
- *
- * In non-coop mode:
- *  - @cookie: the original domain which needs to be restored, or NULL.
- *  - @dummy: is NULL
+ * mono_jit_set_domain:
  *
- * In coop mode:
- *  - @cookie: contains current MonoThreadInfo* if it was in BLOCKING mode, NULL otherwise
- *  - @dummy: contains the original domain
+ * Set domain to @domain if @domain is not null
  */
 void
-mono_jit_thread_detach (gpointer cookie, gpointer *dummy)
+mono_jit_set_domain (MonoDomain *domain)
 {
-       MonoDomain *domain, *orig;
-
-       if (!mono_threads_is_coop_enabled ()) {
-               orig = (MonoDomain*) cookie;
-
-               if (orig)
-                       mono_domain_set (orig, TRUE);
-       } else {
-               orig = (MonoDomain*) *dummy;
-
-               domain = mono_domain_get ();
-               g_assert (domain);
+       g_assert (!mono_threads_is_coop_enabled ());
 
-               /* it won't do anything if cookie is NULL
-                * thread state RUNNING -> (RUNNING|BLOCKING) */
-               mono_threads_reset_blocking_end (cookie, dummy);
-
-               if (orig != domain) {
-                       if (!orig)
-                               mono_domain_unset ();
-                       else
-                               mono_domain_set (orig, TRUE);
-               }
-       }
+       if (domain)
+               mono_domain_set (domain, TRUE);
 }
 
 /**
@@ -1457,13 +1343,7 @@ mono_resolve_patch_target (MonoMethod *method, MonoDomain *domain, guint8 *code,
                target = patch_info->data.inst->inst_c0 + code;
                break;
        case MONO_PATCH_INFO_IP:
-#if defined(__native_client__) && defined(__native_client_codegen__)
-               /* Need to transform to the destination address, it's */
-               /* emitted as an immediate in the code. */
-               target = nacl_inverse_modify_patch_target(ip);
-#else
                target = ip;
-#endif
                break;
        case MONO_PATCH_INFO_METHOD_REL:
                target = code + patch_info->data.offset;
@@ -1490,25 +1370,8 @@ mono_resolve_patch_target (MonoMethod *method, MonoDomain *domain, guint8 *code,
                target = mono_create_jump_trampoline (domain, patch_info->data.method, FALSE, error);
                if (!mono_error_ok (error))
                        return NULL;
-#if defined(__native_client__) && defined(__native_client_codegen__)
-# if defined(TARGET_AMD64)
-               /* This target is an absolute address, not relative to the */
-               /* current code being emitted on AMD64. */
-               target = nacl_inverse_modify_patch_target(target);
-# endif
-#endif
                break;
        case MONO_PATCH_INFO_METHOD:
-#if defined(__native_client_codegen__) && defined(USE_JUMP_TABLES)
-               /*
-                * If we use jumptables, for recursive calls we cannot
-                * avoid trampoline, as we not yet know where we will
-                * be installed.
-                */
-               target = mono_create_jit_trampoline (domain, patch_info->data.method, error);
-               if (!mono_error_ok (error))
-                       return NULL;
-#else
                if (patch_info->data.method == method) {
                        target = code;
                } else {
@@ -1517,7 +1380,6 @@ mono_resolve_patch_target (MonoMethod *method, MonoDomain *domain, guint8 *code,
                        if (!mono_error_ok (error))
                                return NULL;
                }
-#endif
                break;
        case MONO_PATCH_INFO_METHOD_CODE_SLOT: {
                gpointer code_slot;
@@ -1562,24 +1424,10 @@ mono_resolve_patch_target (MonoMethod *method, MonoDomain *domain, guint8 *code,
 #endif
 
                for (i = 0; i < patch_info->data.table->table_size; i++) {
-#if defined(__native_client__) && defined(__native_client_codegen__)
-                       /* 'code' is relative to the current code blob, we */
-                       /* need to do this transform on it to make the     */
-                       /* pointers in this table absolute                 */
-                       jump_table [i] = nacl_inverse_modify_patch_target (code) + GPOINTER_TO_INT (patch_info->data.table->table [i]);
-#else
                        jump_table [i] = code + GPOINTER_TO_INT (patch_info->data.table->table [i]);
-#endif
                }
 
-#if defined(__native_client__) && defined(__native_client_codegen__)
-               /* jump_table is in the data section, we need to transform */
-               /* it here so when it gets modified in amd64_patch it will */
-               /* then point back to the absolute data address            */
-               target = nacl_inverse_modify_patch_target (jump_table);
-#else
                target = jump_table;
-#endif
                break;
        }
        case MONO_PATCH_INFO_METHODCONST:
@@ -1656,8 +1504,8 @@ mono_resolve_patch_target (MonoMethod *method, MonoDomain *domain, guint8 *code,
                break;
        case MONO_PATCH_INFO_LDSTR:
                target =
-                       mono_ldstr (domain, patch_info->data.token->image,
-                                               mono_metadata_token_index (patch_info->data.token->token));
+                       mono_ldstr_checked (domain, patch_info->data.token->image,
+                                           mono_metadata_token_index (patch_info->data.token->token), error);
                break;
        case MONO_PATCH_INFO_TYPE_FROM_HANDLE: {
                gpointer handle;
@@ -2023,7 +1871,7 @@ mono_jit_compile_method_with_opt (MonoMethod *method, guint32 opt, MonoError *er
 
                mono_class_init (method->klass);
 
-               if ((code = mono_aot_get_method (domain, method))) {
+               if ((code = mono_aot_get_method_checked (domain, method, error))) {
                        MonoVTable *vtable;
 
                        /*
@@ -2038,6 +1886,8 @@ mono_jit_compile_method_with_opt (MonoMethod *method, guint32 opt, MonoError *er
                                        return NULL;
                        }
                }
+               if (!is_ok (error))
+                       return NULL;
        }
 #endif
 
@@ -2498,8 +2348,10 @@ mono_llvmonly_runtime_invoke (MonoMethod *method, RuntimeInvokeInfo *info, void
        runtime_invoke = (MonoObject *(*)(MonoObject *, void **, MonoObject **, void *))info->runtime_invoke;
 
        runtime_invoke (NULL, args, exc, info->compiled_method);
-       if (exc && *exc)
+       if (exc && *exc) {
                mono_error_set_exception_instance (error, (MonoException*) *exc);
+               return NULL;
+       }
 
        if (sig->ret->type != MONO_TYPE_VOID && info->ret_box_class)
                return mono_value_box_checked (domain, info->ret_box_class, retval, error);
@@ -2671,11 +2523,13 @@ mono_jit_runtime_invoke (MonoMethod *method, void *obj, void **params, MonoObjec
                mono_arch_start_dyn_call (info->dyn_call_info, (gpointer**)args, retval, buf, sizeof (buf));
 
                dyn_runtime_invoke (buf, exc, info->compiled_method);
-               if (catchExcInMonoError && *exc != NULL)
-                       mono_error_set_exception_instance (error, (MonoException*) *exc);
-
                mono_arch_finish_dyn_call (info->dyn_call_info, buf);
 
+               if (catchExcInMonoError && *exc != NULL) {
+                       mono_error_set_exception_instance (error, (MonoException*) *exc);
+                       return NULL;
+               }
+
                if (info->ret_box_class)
                        return mono_value_box_checked (domain, info->ret_box_class, retval, error);
                else
@@ -2918,9 +2772,13 @@ MONO_SIG_HANDLER_FUNC (, mono_sigill_signal_handler)
        MonoException *exc;
        MONO_SIG_HANDLER_GET_CONTEXT;
 
+       MONO_ENTER_GC_UNSAFE_UNBALANCED;
+
        exc = mono_get_exception_execution_engine ("SIGILL");
 
        mono_arch_handle_exception (ctx, exc);
+
+       MONO_EXIT_GC_UNSAFE_UNBALANCED;
 }
 
 #if defined(MONO_ARCH_USE_SIGACTION) || defined(HOST_WIN32)
@@ -3041,24 +2899,25 @@ MONO_SIG_HANDLER_FUNC (, mono_sigint_signal_handler)
  * Returns: a pointer to the newly created code
  */
 static gpointer
-mono_jit_create_remoting_trampoline (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target)
+mono_jit_create_remoting_trampoline (MonoDomain *domain, MonoMethod *method, MonoRemotingTarget target, MonoError *error)
 {
        MonoMethod *nm;
        guint8 *addr = NULL;
 
+       mono_error_init (error);
+
        if ((method->flags & METHOD_ATTRIBUTE_VIRTUAL) && mono_method_signature (method)->generic_param_count) {
                return mono_create_specific_trampoline (method, MONO_TRAMPOLINE_GENERIC_VIRTUAL_REMOTING,
                        domain, NULL);
        }
 
        if ((method->flags & METHOD_ATTRIBUTE_ABSTRACT) ||
-           (mono_method_signature (method)->hasthis && (mono_class_is_marshalbyref (method->klass) || method->klass == mono_defaults.object_class))) {
+           (mono_method_signature (method)->hasthis && (mono_class_is_marshalbyref (method->klass) || method->klass == mono_defaults.object_class)))
                nm = mono_marshal_get_remoting_invoke_for_target (method, target);
-               addr = (guint8 *)mono_compile_method (nm);
-       } else
-       {
-               addr = (guint8 *)mono_compile_method (method);
-       }
+       else
+               nm = method;
+       addr = (guint8 *)mono_compile_method_checked (nm, error);
+       return_val_if_nok (error, NULL);
        return mono_get_addr_from_ftnptr (addr);
 }
 #endif
@@ -3399,6 +3258,7 @@ register_jit_stats (void)
        mono_counters_register ("JIT/liveness_handle_exception_clauses (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_liveness_handle_exception_clauses);
        mono_counters_register ("JIT/handle_out_of_line_bblock (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_handle_out_of_line_bblock);
        mono_counters_register ("JIT/decompose_long_opts (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_decompose_long_opts);
+       mono_counters_register ("JIT/decompose_typechecks (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_decompose_typechecks);
        mono_counters_register ("JIT/local_cprop (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_local_cprop);
        mono_counters_register ("JIT/local_emulate_ops (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_local_emulate_ops);
        mono_counters_register ("JIT/optimize_branches (sec)", MONO_COUNTER_JIT | MONO_COUNTER_DOUBLE, &mono_jit_stats.jit_optimize_branches);
@@ -3876,8 +3736,8 @@ register_icalls (void)
        register_icall (mono_trace_enter_method, "mono_trace_enter_method", NULL, TRUE);
        register_icall (mono_trace_leave_method, "mono_trace_leave_method", NULL, TRUE);
        register_icall (mono_get_lmf_addr, "mono_get_lmf_addr", "ptr", TRUE);
-       register_icall (mono_jit_thread_attach, "mono_jit_thread_attach", "ptr ptr ptr", TRUE);
-       register_icall (mono_jit_thread_detach, "mono_jit_thread_detach", "void ptr ptr", TRUE);
+       register_icall (mono_jit_thread_attach, "mono_jit_thread_attach", "ptr ptr", TRUE);
+       register_icall (mono_jit_set_domain, "mono_jit_set_domain", "void ptr", TRUE);
        register_icall (mono_domain_get, "mono_domain_get", "ptr", TRUE);
 
        register_icall (mono_llvm_throw_exception, "mono_llvm_throw_exception", "void object", TRUE);
@@ -3901,7 +3761,6 @@ register_icalls (void)
        register_icall (mono_thread_interruption_checkpoint, "mono_thread_interruption_checkpoint", "object", FALSE);
        register_icall (mono_thread_force_interruption_checkpoint_noraise, "mono_thread_force_interruption_checkpoint_noraise", "object", FALSE);
 #ifndef DISABLE_REMOTING
-       register_icall (mono_load_remote_field_new_icall, "mono_load_remote_field_new_icall", "object object ptr ptr", FALSE);
        register_icall (mono_store_remote_field_new_icall, "mono_store_remote_field_new_icall", "void object ptr ptr object", FALSE);
 #endif
 
@@ -3977,10 +3836,10 @@ register_icalls (void)
        register_opcode_emulation (OP_LCONV_TO_R_UN, "__emul_lconv_to_r8_un", "double long", mono_lconv_to_r8_un, "mono_lconv_to_r8_un", FALSE);
 #endif
 #ifdef MONO_ARCH_EMULATE_FREM
-#if defined(__default_codegen__)
+#if !defined(__native_client__)
        register_opcode_emulation (OP_FREM, "__emul_frem", "double double double", fmod, "fmod", FALSE);
        register_opcode_emulation (OP_RREM, "__emul_rrem", "float float float", fmodf, "fmodf", FALSE);
-#elif defined(__native_client_codegen__)
+#else
        register_opcode_emulation (OP_FREM, "__emul_frem", "double double double", mono_fmod, "mono_fmod", FALSE);
 #endif
 #endif
@@ -4040,14 +3899,14 @@ register_icalls (void)
 #endif
 
        /* other jit icalls */
-       register_icall (mono_delegate_ctor, "mono_delegate_ctor", "void object object ptr", FALSE);
+       register_icall (ves_icall_mono_delegate_ctor, "ves_icall_mono_delegate_ctor", "void object object ptr", FALSE);
        register_icall (mono_class_static_field_address , "mono_class_static_field_address",
                                 "ptr ptr ptr", FALSE);
        register_icall (mono_ldtoken_wrapper, "mono_ldtoken_wrapper", "ptr ptr ptr ptr", FALSE);
        register_icall (mono_ldtoken_wrapper_generic_shared, "mono_ldtoken_wrapper_generic_shared",
                "ptr ptr ptr ptr", FALSE);
        register_icall (mono_get_special_static_data, "mono_get_special_static_data", "ptr int", FALSE);
-       register_icall (mono_ldstr, "mono_ldstr", "object ptr ptr int32", FALSE);
+       register_icall (ves_icall_mono_ldstr, "ves_icall_mono_ldstr", "object ptr ptr int32", FALSE);
        register_icall (mono_helper_stelem_ref_check, "mono_helper_stelem_ref_check", "void object object", FALSE);
        register_icall (ves_icall_object_new, "ves_icall_object_new", "object ptr ptr", FALSE);
        register_icall (ves_icall_object_new_specific, "ves_icall_object_new_specific", "object ptr", FALSE);
@@ -4101,6 +3960,7 @@ register_icalls (void)
        register_icall (mono_llvmonly_init_delegate_virtual, "mono_llvmonly_init_delegate_virtual", "void object object ptr", TRUE);
        register_icall (mono_get_assembly_object, "mono_get_assembly_object", "object ptr", TRUE);
        register_icall (mono_get_method_object, "mono_get_method_object", "object ptr", TRUE);
+       register_icall (mono_throw_method_access, "mono_throw_method_access", "void ptr ptr", FALSE);
 
        register_icall_with_wrapper (mono_monitor_enter, "mono_monitor_enter", "void obj");
        register_icall_with_wrapper (mono_monitor_enter_v4, "mono_monitor_enter_v4", "void obj ptr");
@@ -4235,10 +4095,6 @@ mini_cleanup (MonoDomain *domain)
        mono_os_mutex_destroy (&jit_mutex);
 
        mono_code_manager_cleanup ();
-
-#ifdef USE_JUMP_TABLES
-       mono_jumptable_cleanup ();
-#endif
 }
 
 void
@@ -4324,15 +4180,21 @@ mono_precompile_assembly (MonoAssembly *ass, void *user_data)
                        g_print ("Compiling %d %s\n", count, desc);
                        g_free (desc);
                }
-               mono_compile_method (method);
+               mono_compile_method_checked (method, &error);
+               if (!is_ok (&error)) {
+                       mono_error_cleanup (&error); /* FIXME don't swallow the error */
+                       continue;
+               }
                if (strcmp (method->name, "Finalize") == 0) {
                        invoke = mono_marshal_get_runtime_invoke (method, FALSE);
-                       mono_compile_method (invoke);
+                       mono_compile_method_checked (invoke, &error);
+                       mono_error_assert_ok (&error);
                }
 #ifndef DISABLE_REMOTING
                if (mono_class_is_marshalbyref (method->klass) && mono_method_signature (method)->hasthis) {
                        invoke = mono_marshal_get_remoting_invoke_with_check (method);
-                       mono_compile_method (invoke);
+                       mono_compile_method_checked (invoke, &error);
+                       mono_error_assert_ok (&error);
                }
 #endif
        }
@@ -4364,98 +4226,3 @@ mono_personality (void)
        /* Not used */
        g_assert_not_reached ();
 }
-
-#ifdef USE_JUMP_TABLES
-#define DEFAULT_JUMPTABLE_CHUNK_ELEMENTS 128
-
-typedef struct MonoJumpTableChunk {
-       guint32 total;
-       guint32 active;
-       struct MonoJumpTableChunk *previous;
-       /* gpointer entries[total]; */
-} MonoJumpTableChunk;
-
-static MonoJumpTableChunk* g_jumptable;
-#define mono_jumptable_lock() mono_os_mutex_lock (&jumptable_mutex)
-#define mono_jumptable_unlock() mono_os_mutex_unlock (&jumptable_mutex)
-static mono_mutex_t jumptable_mutex;
-
-static  MonoJumpTableChunk*
-mono_create_jumptable_chunk (guint32 max_entries)
-{
-       guint32 size = sizeof (MonoJumpTableChunk) + max_entries * sizeof(gpointer);
-       MonoJumpTableChunk *chunk = (MonoJumpTableChunk*) g_new0 (guchar, size);
-       chunk->total = max_entries;
-       return chunk;
-}
-
-void
-mono_jumptable_init (void)
-{
-       if (g_jumptable == NULL) {
-               mono_os_mutex_init_recursive (&jumptable_mutex);
-               g_jumptable = mono_create_jumptable_chunk (DEFAULT_JUMPTABLE_CHUNK_ELEMENTS);
-       }
-}
-
-gpointer*
-mono_jumptable_add_entry (void)
-{
-       return mono_jumptable_add_entries (1);
-}
-
-gpointer*
-mono_jumptable_add_entries (guint32 entries)
-{
-       guint32 index;
-       gpointer *result;
-
-       mono_jumptable_init ();
-       mono_jumptable_lock ();
-       index = g_jumptable->active;
-       if (index + entries >= g_jumptable->total) {
-               /*
-                * Grow jumptable, by adding one more chunk.
-                * We cannot realloc jumptable, as there could be pointers
-                * to existing jump table entries in the code, so instead
-                * we just add one more chunk.
-                */
-               guint32 max_entries = entries;
-               MonoJumpTableChunk *new_chunk;
-
-               if (max_entries < DEFAULT_JUMPTABLE_CHUNK_ELEMENTS)
-                       max_entries = DEFAULT_JUMPTABLE_CHUNK_ELEMENTS;
-               new_chunk = mono_create_jumptable_chunk (max_entries);
-               /* Link old jumptable, so that we could free it up later. */
-               new_chunk->previous = g_jumptable;
-               g_jumptable = new_chunk;
-               index = 0;
-       }
-       g_jumptable->active = index + entries;
-       result = (gpointer*)((guchar*)g_jumptable + sizeof(MonoJumpTableChunk)) + index;
-       mono_jumptable_unlock();
-
-       return result;
-}
-
-void
-mono_jumptable_cleanup (void)
-{
-       if (g_jumptable) {
-               MonoJumpTableChunk *current = g_jumptable, *prev;
-               while (current != NULL) {
-                       prev = current->previous;
-                       g_free (current);
-                       current = prev;
-               }
-               g_jumptable = NULL;
-               mono_os_mutex_destroy (&jumptable_mutex);
-       }
-}
-
-gpointer*
-mono_jumptable_get_entry (guint8 *code_ptr)
-{
-       return mono_arch_jumptable_entry_from_code (code_ptr);
-}
-#endif
index e593e3b350102a00c7a020e36042b5fbdce771ed..3fe40d2cfc28fdd8a055b003ad58785d5cbd3427 100644 (file)
@@ -264,6 +264,8 @@ if (ins->inst_target_bb->native_offset) {                                   \
 #include <mono/metadata/appdomain.h>
 #include <mono/metadata/debug-helpers.h>
 #include <mono/metadata/profiler-private.h>
+#include <mono/utils/mono-error.h>
+#include <mono/utils/mono-error-internals.h>
 #include <mono/utils/mono-math.h>
 #include <mono/utils/mono-mmap.h>
 #include <mono/utils/mono-hwcap-s390x.h>
@@ -765,6 +767,20 @@ cvtMonoType(MonoTypeEnum t)
 /*                                                                 */
 /*------------------------------------------------------------------*/
 
+static void
+decodeParmString (MonoString *s)
+{
+       MonoError error;
+       char *str = mono_string_to_utf8_checked(s, &error);
+       if (is_ok (&error))  {
+               printf("[STRING:%p:%s], ", s, str);
+               g_free (str);
+       } else {
+               mono_error_cleanup (&error);
+               printf("[STRING:%p:], ", s);
+       }
+}
+
 static void 
 decodeParm(MonoType *type, void *curParm, int size)
 {
@@ -813,7 +829,7 @@ enum_parmtype:
                                MonoString *s = *((MonoString **) curParm);
                                if (s) {
                                        g_assert (((MonoObject *) s)->vtable->klass == mono_defaults.string_class);
-                                       printf("[STRING:%p:%s], ", s, mono_string_to_utf8(s));
+                                       decodeParmString (s);
                                } else {
                                        printf("[STRING:null], ");
                                }
@@ -828,8 +844,7 @@ enum_parmtype:
                                        klass = obj->vtable->klass;
                                        printf("%p [%p] ",obj,curParm);
                                        if (klass == mono_defaults.string_class) {
-                                               printf("[STRING:%p:%s]", 
-                                                      obj, mono_string_to_utf8 ((MonoString *) obj));
+                                               decodeParmString ((MonoString *)obj);
                                        } else if (klass == mono_defaults.int32_class) { 
                                                printf("[INT32:%p:%d]", 
                                                        obj, *(gint32 *)((char *)obj + sizeof (MonoObject)));
@@ -969,8 +984,8 @@ enter_method (MonoMethod *method, RegParm *rParm, char *sp)
                                if (obj->vtable) {
                                        klass = obj->vtable->klass;
                                        if (klass == mono_defaults.string_class) {
-                                               printf ("this:[STRING:%p:%s], ", 
-                                                       obj, mono_string_to_utf8 ((MonoString *)obj));
+                                               printf ("this:");
+                                               decodeParmString((MonoString *)obj);
                                        } else {
                                                printf ("this:%p[%s.%s], ", 
                                                        obj, klass->name_space, klass->name);
@@ -1126,7 +1141,7 @@ handle_enum:
 ;
                if (s) {
                        g_assert (((MonoObject *)s)->vtable->klass == mono_defaults.string_class);
-                       printf ("[STRING:%p:%s]", s, mono_string_to_utf8 (s));
+                       decodeParmString (s);
                } else 
                        printf ("[STRING:null], ");
                break;
@@ -5386,18 +5401,20 @@ mono_arch_register_lowlevel_calls (void)
 
 void
 mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, 
-                     guint8 *code, MonoJumpInfo *ji, gboolean run_cctors)
+                     guint8 *code, MonoJumpInfo *ji, gboolean run_cctors,
+                     MonoError *error)
 {
        MonoJumpInfo *patch_info;
-       MonoError error;
+
+       mono_error_init (error);
 
        for (patch_info = ji; patch_info; patch_info = patch_info->next) {
                unsigned char *ip = patch_info->ip.i + code;
                gconstpointer target = NULL;
 
                target = mono_resolve_patch_target (method, domain, code, 
-                                                                                       patch_info, run_cctors, &error);
-               mono_error_raise_exception (&error); /* FIXME: don't raise here */
+                                                                                       patch_info, run_cctors, error);
+               return_if_nok (error);
 
                switch (patch_info->type) {
                        case MONO_PATCH_INFO_IP:
index b29563dcb0ac480f6e6f93651ebd654b5e3c3466..022f8a5e790b8ea9334d4fa61bb7f92c99229c9f 100644 (file)
@@ -3672,18 +3672,19 @@ mono_arch_register_lowlevel_calls (void)
 }
 
 void
-mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors)
+mono_arch_patch_code (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors, MonoError *error)
 {
-       MonoError error;
        MonoJumpInfo *patch_info;
 
+       mono_error_init (error);
+
        /* FIXME: Move part of this to arch independent code */
        for (patch_info = ji; patch_info; patch_info = patch_info->next) {
                unsigned char *ip = patch_info->ip.i + code;
                gpointer target;
 
-               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, &error);
-               mono_error_raise_exception (&error); /* FIXME: don't raise here */
+               target = mono_resolve_patch_target (method, domain, code, patch_info, run_cctors, error);
+               return_if_nok (error);
 
                switch (patch_info->type) {
                case MONO_PATCH_INFO_NONE:
index c464a0033a77c727829ba44f5e6acea3bba0e84c..5700a93a11d886718288e8136d1bb4f0acb0793d 100644 (file)
@@ -15,6 +15,7 @@
 #include <mono/utils/mono-error-internals.h>
 #include <mono/utils/mono-membar.h>
 #include <mono/utils/mono-compiler.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include "mini.h"
 
@@ -153,7 +154,7 @@ mono_create_static_rgctx_trampoline (MonoMethod *m, gpointer addr)
  * Either IMPL_METHOD or OUT_AOT_ADDR will be set on return.
  */
 gpointer*
-mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_method, MonoMethod **impl_method, gpointer *out_aot_addr, gboolean *out_need_rgctx_tramp, MonoMethod **variant_iface)
+mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_method, MonoMethod **impl_method, gpointer *out_aot_addr, gboolean *out_need_rgctx_tramp, MonoMethod **variant_iface, MonoError *error)
 {
        MonoMethod *impl = NULL, *generic_virtual = NULL;
        gboolean lookup_aot, variance_used = FALSE, need_rgctx_tramp = FALSE;
@@ -165,6 +166,7 @@ mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_
 
        g_assert (imt_slot < MONO_IMT_SIZE);
 
+       mono_error_init (error);
        /* This has to be variance aware since imt_method can be from an interface that vt->klass doesn't directly implement */
        interface_offset = mono_class_interface_offset_with_variance (vt->klass, imt_method->klass, &variance_used);
        if (interface_offset < 0)
@@ -187,7 +189,6 @@ mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_
                mono_vtable_build_imt_slot (vt, mono_method_get_imt_slot (imt_method));
 
        if (imt_method->is_inflated && ((MonoMethodInflated*)imt_method)->context.method_inst) {
-               MonoError error;
                MonoGenericContext context = { NULL, NULL };
 
                /*
@@ -200,14 +201,17 @@ mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_
                if (impl->klass->generic_class)
                        context.class_inst = impl->klass->generic_class->context.class_inst;
                context.method_inst = ((MonoMethodInflated*)imt_method)->context.method_inst;
-               impl = mono_class_inflate_generic_method_checked (impl, &context, &error);
-               g_assert (mono_error_ok (&error)); /* FIXME don't swallow the error */
+               impl = mono_class_inflate_generic_method_checked (impl, &context, error);
+               mono_error_assert_ok (error);
        } else {
+
                /* Avoid loading metadata or creating a generic vtable if possible */
-               if (lookup_aot && !vt->klass->valuetype)
-                       aot_addr = (guint8 *)mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, interface_offset + mono_method_get_vtable_slot (imt_method));
-               else
+               if (lookup_aot && !vt->klass->valuetype) {
+                       aot_addr = (guint8 *)mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, interface_offset + mono_method_get_vtable_slot (imt_method), error);
+                       return_val_if_nok (error, NULL);
+               } else {
                        aot_addr = NULL;
+               }
                if (aot_addr)
                        impl = NULL;
                else
@@ -502,13 +506,13 @@ mini_add_method_wrappers_llvmonly (MonoMethod *m, gpointer compiled_method, gboo
 }
 
 /**
- * common_call_trampoline_inner:
+ * common_call_trampoline:
  *
  *   The code to handle normal, virtual, and interface method calls and jumps, both
  * from JITted and LLVM compiled code.
  */
 static gpointer
-common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVTable *vt, gpointer *vtable_slot, MonoError *error)
+common_call_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVTable *vt, gpointer *vtable_slot, MonoError *error)
 {
        gpointer addr, compiled_method;
        gboolean generic_shared = FALSE;
@@ -557,7 +561,9 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
                                need_rgctx_tramp = TRUE;
                        }
 
-                       vtable_slot = mini_resolve_imt_method (vt, vtable_slot, imt_method, &impl_method, &addr, &need_rgctx_tramp, &variant_iface);
+                       vtable_slot = mini_resolve_imt_method (vt, vtable_slot, imt_method, &impl_method, &addr, &need_rgctx_tramp, &variant_iface, error);
+                       return_val_if_nok (error, NULL);
+
                        /* This is the vcall slot which gets called through the IMT thunk */
                        vtable_slot_to_patch = vtable_slot;
 
@@ -580,7 +586,6 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
         * return TRUE for methods used in IMT calls too.
         */
        if (virtual_ && is_generic_method_definition (m)) {
-               MonoError error;
                MonoGenericContext context = { NULL, NULL };
                MonoMethod *declaring;
 
@@ -599,8 +604,8 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
                g_assert (generic_virtual->is_inflated);
                context.method_inst = ((MonoMethodInflated*)generic_virtual)->context.method_inst;
 
-               m = mono_class_inflate_generic_method_checked (declaring, &context, &error);
-               g_assert (mono_error_ok (&error)); /* FIXME don't swallow the error */
+               m = mono_class_inflate_generic_method_checked (declaring, &context, error);
+               mono_error_assert_ok (error);
                /* FIXME: only do this if the method is sharable */
                need_rgctx_tramp = TRUE;
        } else if ((context_used = mono_method_check_context_used (m))) {
@@ -653,7 +658,6 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
                }
 
                if (method_inst || m->wrapper_type) {
-                       MonoError error;
                        MonoGenericContext context = { NULL, NULL };
 
                        if (m->is_inflated)
@@ -667,8 +671,8 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
                                context.class_inst = klass->generic_container->context.class_inst;
                        context.method_inst = method_inst;
 
-                       actual_method = mono_class_inflate_generic_method_checked (declaring, &context, &error);
-                       g_assert (mono_error_ok (&error)); /* FIXME don't swallow the error */
+                       actual_method = mono_class_inflate_generic_method_checked (declaring, &context, error);
+                       mono_error_assert_ok (error);
                } else {
                        actual_method = mono_class_get_method_generic (klass, m);
                }
@@ -804,16 +808,6 @@ common_call_trampoline_inner (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVT
        return addr;
 }
 
-static gpointer
-common_call_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVTable *vt, gpointer *vtable_slot, MonoError *error)
-{
-       gpointer res;
-       MONO_PREPARE_RESET_BLOCKING;
-       res = common_call_trampoline_inner (regs, code, m, vt, vtable_slot, error);
-       MONO_FINISH_RESET_BLOCKING;
-       return res;
-}
-
 /**
  * mono_magic_trampoline:
  *
@@ -822,16 +816,21 @@ common_call_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, MonoVTable *
 gpointer
 mono_magic_trampoline (mgreg_t *regs, guint8 *code, gpointer arg, guint8* tramp)
 {
-       MonoError error;
        gpointer res;
 
+       MONO_ENTER_GC_UNSAFE_UNBALANCED;
+
+       MonoError error;
+
        trampoline_calls ++;
 
        res = common_call_trampoline (regs, code, (MonoMethod *)arg, NULL, NULL, &error);
-       if (!mono_error_ok (&error)) {
-               mono_error_set_pending_exception (&error);
-               return NULL;
-       }
+       mono_error_set_pending_exception (&error);
+
+       mono_interruption_checkpoint_from_trampoline ();
+
+       MONO_EXIT_GC_UNSAFE_UNBALANCED;
+
        return res;
 }
 
@@ -843,6 +842,8 @@ mono_magic_trampoline (mgreg_t *regs, guint8 *code, gpointer arg, guint8* tramp)
 static gpointer
 mono_vcall_trampoline (mgreg_t *regs, guint8 *code, int slot, guint8 *tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoObject *this_arg;
        MonoVTable *vt;
        gpointer *vtable_slot;
@@ -873,7 +874,9 @@ mono_vcall_trampoline (mgreg_t *regs, guint8 *code, int slot, guint8 *tramp)
                vtable_slot = &(vt->vtable [slot]);
 
                /* Avoid loading metadata or creating a generic vtable if possible */
-               addr = mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, slot);
+               addr = mono_aot_get_method_from_vt_slot (mono_domain_get (), vt, slot, &error);
+               if (!is_ok (&error))
+                       goto leave;
                if (addr && !vt->klass->valuetype) {
                        if (mono_domain_owns_vtable_slot (mono_domain_get (), vtable_slot))
                                *vtable_slot = addr;
@@ -903,6 +906,7 @@ mono_vcall_trampoline (mgreg_t *regs, guint8 *code, int slot, guint8 *tramp)
        }
 
        res = common_call_trampoline (regs, code, m, vt, vtable_slot, &error);
+leave:
        if (!mono_error_ok (&error)) {
                mono_error_set_pending_exception (&error);
                return NULL;
@@ -914,6 +918,8 @@ mono_vcall_trampoline (mgreg_t *regs, guint8 *code, int slot, guint8 *tramp)
 gpointer
 mono_generic_virtual_remoting_trampoline (mgreg_t *regs, guint8 *code, MonoMethod *m, guint8 *tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoError error;
        MonoGenericContext context = { NULL, NULL };
        MonoMethod *imt_method, *declaring;
@@ -962,11 +968,14 @@ gpointer
 mono_aot_trampoline (mgreg_t *regs, guint8 *code, guint8 *token_info, 
                                         guint8* tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoImage *image;
        guint32 token;
        MonoMethod *method = NULL;
        gpointer addr;
        guint8 *plt_entry;
+       MonoError error;
 
        trampoline_calls ++;
 
@@ -974,9 +983,10 @@ mono_aot_trampoline (mgreg_t *regs, guint8 *code, guint8 *token_info,
        token_info += sizeof (gpointer);
        token = *(guint32*)(gpointer)token_info;
 
-       addr = mono_aot_get_method_from_token (mono_domain_get (), image, token);
+       addr = mono_aot_get_method_from_token (mono_domain_get (), image, token, &error);
+       if (!is_ok (&error))
+               mono_error_cleanup (&error);
        if (!addr) {
-               MonoError error;
                method = mono_get_method_checked (image, token, NULL, NULL, &error);
                if (!method)
                        g_error ("Could not load AOT trampoline due to %s", mono_error_get_message (&error));
@@ -1005,6 +1015,8 @@ gpointer
 mono_aot_plt_trampoline (mgreg_t *regs, guint8 *code, guint8 *aot_module, 
                                                 guint8* tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        guint32 plt_info_offset = mono_aot_get_plt_info_offset (regs, code);
        gpointer res;
        MonoError error;
@@ -1028,6 +1040,8 @@ mono_aot_plt_trampoline (mgreg_t *regs, guint8 *code, guint8 *aot_module,
 static gpointer
 mono_rgctx_lazy_fetch_trampoline (mgreg_t *regs, guint8 *code, gpointer data, guint8 *tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        static gboolean inited = FALSE;
        static int num_lookups = 0;
        guint32 slot = GPOINTER_TO_UINT (data);
@@ -1067,6 +1081,8 @@ mono_rgctx_lazy_fetch_trampoline (mgreg_t *regs, guint8 *code, gpointer data, gu
 gpointer
 mono_delegate_trampoline (mgreg_t *regs, guint8 *code, gpointer *arg, guint8* tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoDomain *domain = mono_domain_get ();
        MonoDelegate *delegate;
        MonoJitInfo *ji;
@@ -1254,6 +1270,8 @@ mono_delegate_trampoline (mgreg_t *regs, guint8 *code, gpointer *arg, guint8* tr
 static gpointer
 mono_handler_block_guard_trampoline (mgreg_t *regs, guint8 *code, gpointer *tramp_info, guint8* tramp)
 {
+       MONO_REQ_GC_UNSAFE_MODE;
+
        MonoContext ctx;
        MonoException *exc;
        MonoJitTlsData *jit_tls = (MonoJitTlsData *)mono_native_tls_get_value (mono_jit_tls_id);
@@ -1493,7 +1511,7 @@ mono_create_jit_trampoline (MonoDomain *domain, MonoMethod *method, MonoError *e
                if (code)
                        return code;
                if (mono_llvm_only) {
-                       if (method->wrapper_type == MONO_WRAPPER_PROXY_ISINST || method->wrapper_type == MONO_WRAPPER_LDFLD_REMOTE ||
+                       if (method->wrapper_type == MONO_WRAPPER_PROXY_ISINST ||
                                method->wrapper_type == MONO_WRAPPER_STFLD_REMOTE)
                                /* These wrappers are not generated */
                                return method_not_found;
index 621a7a5fc31970e22d3e75e4993623ae10dddece..e7764e91beb749709474b294aef00cb5c30932ce 100644 (file)
@@ -59,14 +59,12 @@ void
 mono_runtime_install_handlers (void)
 {
 #ifndef MONO_CROSS_COMPILE
-       if (!mono_aot_only) {
-               win32_seh_init();
-               win32_seh_set_handler(SIGFPE, mono_sigfpe_signal_handler);
-               win32_seh_set_handler(SIGILL, mono_sigill_signal_handler);
-               win32_seh_set_handler(SIGSEGV, mono_sigsegv_signal_handler);
-               if (mini_get_debug_options ()->handle_sigint)
-                       win32_seh_set_handler(SIGINT, mono_sigint_signal_handler);
-       }
+       win32_seh_init();
+       win32_seh_set_handler(SIGFPE, mono_sigfpe_signal_handler);
+       win32_seh_set_handler(SIGILL, mono_sigill_signal_handler);
+       win32_seh_set_handler(SIGSEGV, mono_sigsegv_signal_handler);
+       if (mini_get_debug_options ()->handle_sigint)
+               win32_seh_set_handler(SIGINT, mono_sigint_signal_handler);
 #endif
 }
 
@@ -74,9 +72,7 @@ void
 mono_runtime_cleanup_handlers (void)
 {
 #ifndef MONO_CROSS_COMPILE
-       if (!mono_aot_only) {
-               win32_seh_cleanup();
-       }
+       win32_seh_cleanup();
 #endif
 }
 
index 6f2685dce80d67d586da67b8058f69e8f53d66a8..badf12b33b3bf1d72f1466b48e8c8a0aeb517e88 100644 (file)
@@ -75,39 +75,6 @@ static mono_mutex_t mini_arch_mutex;
 static guint8*
 emit_load_aotconst (guint8 *start, guint8 *code, MonoCompile *cfg, MonoJumpInfo **ji, int dreg, int tramp_type, gconstpointer target);
 
-#ifdef __native_client_codegen__
-
-/* Default alignment for Native Client is 32-byte. */
-gint8 nacl_align_byte = -32; /* signed version of 0xe0 */
-
-/* mono_arch_nacl_pad: Add pad bytes of alignment instructions at code,       */
-/* Check that alignment doesn't cross an alignment boundary.        */
-guint8 *
-mono_arch_nacl_pad (guint8 *code, int pad)
-{
-       const int kMaxPadding = 7;    /* see x86-codegen.h: x86_padding() */
-
-       if (pad == 0) return code;
-       /* assertion: alignment cannot cross a block boundary */
-       g_assert(((uintptr_t)code & (~kNaClAlignmentMask)) ==
-                        (((uintptr_t)code + pad - 1) & (~kNaClAlignmentMask)));
-       while (pad >= kMaxPadding) {
-               x86_padding (code, kMaxPadding);
-               pad -= kMaxPadding;
-       }
-       if (pad != 0) x86_padding (code, pad);
-       return code;
-}
-
-guint8 *
-mono_arch_nacl_skip_nops (guint8 *code)
-{
-       x86_skip_nops (code);
-       return code;
-}
-
-#endif /* __native_client_codegen__ */
-
 const char*
 mono_arch_regname (int reg)
 {
@@ -739,7 +706,6 @@ mono_arch_cleanup (void)
 guint32
 mono_arch_cpu_optimizations (guint32 *exclude_mask)
 {
-#if !defined(__native_client__)
        guint32 opts = 0;
 
        *exclude_mask = 0;
@@ -767,9 +733,6 @@ mono_arch_cpu_optimizations (guint32 *exclude_mask)
 #endif
 
        return opts;
-#else
-       return MONO_OPT_CMOV | MONO_OPT_FCMOV | MONO_OPT_SSE2;
-#endif
 }
 
 /*
@@ -1855,10 +1818,8 @@ emit_call (MonoCompile *cfg, guint8 *code, guint32 patch_type, gconstpointer dat
        This is required for code patching to be safe on SMP machines.
        */
        pad_size = (guint32)(code + 1 - cfg->native_code) & 0x3;
-#ifndef __native_client_codegen__
        if (needs_paddings && pad_size)
                x86_padding (code, 4 - pad_size);
-#endif
 
        mono_add_patch_info (cfg, code - cfg->native_code, patch_type, data);
        x86_call_code (code, 0);
@@ -2463,23 +2424,7 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        bb->native_offset = cfg->code_len;
                }
        }
-#ifdef __native_client_codegen__
-       {
-               /* For Native Client, all indirect call/jump targets must be   */
-               /* 32-byte aligned.  Exception handler blocks are jumped to    */
-               /* indirectly as well.                                         */
-               gboolean bb_needs_alignment = (bb->flags & BB_INDIRECT_JUMP_TARGET) ||
-                       (bb->flags & BB_EXCEPTION_HANDLER);
-
-               /* if ((cfg->code_len & kNaClAlignmentMask) != 0) { */
-               if ( bb_needs_alignment && ((cfg->code_len & kNaClAlignmentMask) != 0)) {
-            int pad = kNaClAlignment - (cfg->code_len & kNaClAlignmentMask);
-            if (pad != kNaClAlignment) code = mono_arch_nacl_pad(code, pad);
-            cfg->code_len += pad;
-            bb->native_offset = cfg->code_len;
-               }
-       }
-#endif  /* __native_client_codegen__ */
+
        if (cfg->verbose_level > 2)
                g_print ("Basic block %d starting at offset 0x%x\n", bb->block_num, bb->native_offset);
 
@@ -2507,7 +2452,7 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
 
                max_len = ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
 
-#define EXTRA_CODE_SPACE (NACL_SIZE (16, 16 + kNaClAlignment))
+#define EXTRA_CODE_SPACE (16)
 
                if (G_UNLIKELY (offset > (cfg->code_size - max_len - EXTRA_CODE_SPACE))) {
                        cfg->code_size *= 2;
@@ -2810,10 +2755,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                case OP_IDIV:
                case OP_IREM:
-#if defined( __native_client_codegen__ )
-                       x86_alu_reg_imm (code, X86_CMP, ins->sreg2, 0);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        /* 
                         * The code is the same for div/rem, the allocator will allocate dreg
                         * to RAX/RDX as appropriate.
@@ -2831,10 +2772,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                case OP_IDIV_UN:
                case OP_IREM_UN:
-#if defined( __native_client_codegen__ )
-                       x86_alu_reg_imm (code, X86_CMP, ins->sreg2, 0);
-                       EMIT_COND_SYSTEM_EXCEPTION (X86_CC_EQ, TRUE, "DivideByZeroException");
-#endif
                        if (ins->sreg2 == X86_EDX) {
                                x86_push_reg (code, ins->sreg2);
                                x86_alu_reg_reg (code, X86_XOR, X86_EDX, X86_EDX);
@@ -2846,13 +2783,6 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        }
                        break;
                case OP_DIV_IMM:
-#if defined( __native_client_codegen__ )
-                       if (ins->inst_imm == 0) {
-                               mono_add_patch_info (cfg, code - cfg->native_code, MONO_PATCH_INFO_EXC, "DivideByZeroException");
-                               x86_jump32 (code, 0);
-                               break;
-                       }
-#endif
                        x86_mov_reg_imm (code, ins->sreg2, ins->inst_imm);
                        x86_cdq (code);
                        x86_div_reg (code, ins->sreg2, TRUE);
@@ -4996,22 +4926,13 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                        break;
                }
                case OP_GC_SAFE_POINT: {
-                       const char *polling_func = NULL;
-                       int compare_val = 0;
                        guint8 *br [1];
 
-#if defined(__native_client_codegen__) && defined(__native_client_gc__)
-                       polling_func = "mono_nacl_gc";
-                       compare_val = 0xFFFFFFFF;
-#else
                        g_assert (mono_threads_is_coop_enabled ());
-                       polling_func = "mono_threads_state_poll";
-                       compare_val = 1;
-#endif
 
-                       x86_test_membase_imm (code, ins->sreg1, 0, compare_val);
+                       x86_test_membase_imm (code, ins->sreg1, 0, 1);
                        br[0] = code; x86_branch8 (code, X86_CC_EQ, 0, FALSE);
-                       code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD, polling_func);
+                       code = emit_call (cfg, code, MONO_PATCH_INFO_INTERNAL_METHOD, "mono_threads_state_poll");
                        x86_patch (br [0], code);
 
                        break;
@@ -5037,11 +4958,9 @@ mono_arch_output_basic_block (MonoCompile *cfg, MonoBasicBlock *bb)
                }
 
                if (G_UNLIKELY ((code - cfg->native_code - offset) > max_len)) {
-#ifndef __native_client_codegen__
                        g_warning ("wrong maximal instruction length of instruction %s (expected %d, got %d)",
                                           mono_inst_name (ins->opcode), max_len, code - cfg->native_code - offset);
                        g_assert_not_reached ();
-#endif  /* __native_client_codegen__ */
                }
               
                cpos += max_len;
@@ -5074,30 +4993,7 @@ mono_arch_patch_code_new (MonoCompile *cfg, MonoDomain *domain, guint8 *code, Mo
        case MONO_PATCH_INFO_LABEL:
        case MONO_PATCH_INFO_RGCTX_FETCH:
        case MONO_PATCH_INFO_JIT_ICALL_ADDR:
-#if defined(__native_client_codegen__) && defined(__native_client__)
-               if (nacl_is_code_address (code)) {
-                       /* For tail calls, code is patched after being installed */
-                       /* but not through the normal "patch callsite" method.   */
-                       unsigned char buf[kNaClAlignment];
-                       unsigned char *aligned_code = (uintptr_t)code & ~kNaClAlignmentMask;
-                       unsigned char *_target = target;
-                       int ret;
-                       /* All patch targets modified in x86_patch */
-                       /* are IP relative.                        */
-                       _target = _target + (uintptr_t)buf - (uintptr_t)aligned_code;
-                       memcpy (buf, aligned_code, kNaClAlignment);
-                       /* Patch a temp buffer of bundle size, */
-                       /* then install to actual location.    */
-                       x86_patch (buf + ((uintptr_t)code - (uintptr_t)aligned_code), _target);
-                       ret = nacl_dyncode_modify (aligned_code, buf, kNaClAlignment);
-                       g_assert (ret == 0);
-               }
-               else {
-                       x86_patch (ip, (unsigned char*)target);
-               }
-#else
                x86_patch (ip, (unsigned char*)target);
-#endif
                break;
        case MONO_PATCH_INFO_NONE:
                break;
@@ -5109,11 +5005,7 @@ mono_arch_patch_code_new (MonoCompile *cfg, MonoDomain *domain, guint8 *code, Mo
        }
        default: {
                guint32 offset = mono_arch_get_patch_offset (ip);
-#if !defined(__native_client__)
                *((gconstpointer *)(ip + offset)) = target;
-#else
-               *((gconstpointer *)(ip + offset)) = nacl_modify_patch_target (target);
-#endif
                break;
        }
        }
@@ -5138,31 +5030,13 @@ mono_arch_emit_prolog (MonoCompile *cfg)
        int alloc_size, pos, max_offset, i, cfa_offset;
        guint8 *code;
        gboolean need_stack_frame;
-#ifdef __native_client_codegen__
-       guint alignment_check;
-#endif
 
        cfg->code_size = MAX (cfg->header->code_size * 4, 10240);
 
        if (cfg->prof_options & MONO_PROFILE_ENTER_LEAVE)
                cfg->code_size += 512;
 
-#if defined(__default_codegen__)
        code = cfg->native_code = g_malloc (cfg->code_size);
-#elif defined(__native_client_codegen__)
-       /* native_code_alloc is not 32-byte aligned, native_code is. */
-       cfg->code_size = NACL_BUNDLE_ALIGN_UP (cfg->code_size);
-       cfg->native_code_alloc = g_malloc (cfg->code_size + kNaClAlignment);
-
-       /* Align native_code to next nearest kNaclAlignment byte. */
-       cfg->native_code = (guint)cfg->native_code_alloc + kNaClAlignment; 
-       cfg->native_code = (guint)cfg->native_code & ~kNaClAlignmentMask;
-       
-       code = cfg->native_code;
-
-       alignment_check = (guint)cfg->native_code & kNaClAlignmentMask;
-       g_assert(alignment_check == 0);
-#endif
 
 #if 0
        {
@@ -5314,42 +5188,9 @@ mono_arch_emit_prolog (MonoCompile *cfg)
                        /* max alignment for loops */
                        if ((cfg->opt & MONO_OPT_LOOP) && bb_is_loop_start (bb))
                                max_offset += LOOP_ALIGNMENT;
-#ifdef __native_client_codegen__
-                       /* max alignment for native client */
-                       if (bb->flags & BB_INDIRECT_JUMP_TARGET || bb->flags & BB_EXCEPTION_HANDLER)
-                               max_offset += kNaClAlignment;
-#endif
                        MONO_BB_FOR_EACH_INS (bb, ins) {
                                if (ins->opcode == OP_LABEL)
                                        ins->inst_c1 = max_offset;
-#ifdef __native_client_codegen__
-                               switch (ins->opcode)
-                               {
-                                       case OP_FCALL:
-                                       case OP_LCALL:
-                                       case OP_VCALL:
-                                       case OP_VCALL2:
-                                       case OP_VOIDCALL:
-                                       case OP_CALL:
-                                       case OP_FCALL_REG:
-                                       case OP_LCALL_REG:
-                                       case OP_VCALL_REG:
-                                       case OP_VCALL2_REG:
-                                       case OP_VOIDCALL_REG:
-                                       case OP_CALL_REG:
-                                       case OP_FCALL_MEMBASE:
-                                       case OP_LCALL_MEMBASE:
-                                       case OP_VCALL_MEMBASE:
-                                       case OP_VCALL2_MEMBASE:
-                                       case OP_VOIDCALL_MEMBASE:
-                                       case OP_CALL_MEMBASE:
-                                               max_offset += kNaClAlignment;
-                                               break;
-                                       default:
-                                               max_offset += ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN] - 1;
-                                               break;
-                               }
-#endif  /* __native_client_codegen__ */
                                max_offset += ((guint8 *)ins_get_spec (ins->opcode))[MONO_INST_LEN];
                        }
                }
@@ -5628,12 +5469,8 @@ mono_arch_emit_exceptions (MonoCompile *cfg)
                                guint32 size;
 
                                /* Compute size of code following the push <OFFSET> */
-#if defined(__default_codegen__)
                                size = 5 + 5;
-#elif defined(__native_client_codegen__)
-                               code = mono_nacl_align (code);
-                               size = kNaClAlignment;
-#endif
+
                                /*This is aligned to 16 bytes by the callee. This way we save a few bytes here.*/
 
                                if ((code - cfg->native_code) - throw_ip < 126 - size) {
@@ -5720,15 +5557,8 @@ mono_arch_free_jit_tls_data (MonoJitTlsData *tls)
 //[1 + 5] x86_jump_mem(inst,mem)
 
 #define CMP_SIZE 6
-#if defined(__default_codegen__)
 #define BR_SMALL_SIZE 2
 #define BR_LARGE_SIZE 5
-#elif defined(__native_client_codegen__)
-/* I suspect the size calculation below is actually incorrect. */
-/* TODO: fix the calculation that uses these sizes.  */
-#define BR_SMALL_SIZE 16
-#define BR_LARGE_SIZE 12
-#endif  /*__native_client_codegen__*/
 #define JUMP_IMM_SIZE 6
 #define ENABLE_WRONG_METHOD_CHECK 0
 #define DEBUG_IMT 0
@@ -5777,17 +5607,10 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                }
                size += item->chunk_size;
        }
-#if defined(__native_client__) && defined(__native_client_codegen__)
-       /* In Native Client, we don't re-use thunks, allocate from the */
-       /* normal code manager paths. */
-       size = NACL_BUNDLE_ALIGN_UP (size);
-       code = mono_domain_code_reserve (domain, size);
-#else
        if (fail_tramp)
                code = mono_method_alloc_generic_virtual_thunk (domain, size);
        else
                code = mono_domain_code_reserve (domain, size);
-#endif
        start = code;
 
        unwind_ops = mono_arch_get_cie_program ();
@@ -5875,7 +5698,6 @@ mono_arch_build_imt_thunk (MonoVTable *vtable, MonoDomain *domain, MonoIMTCheckI
                g_free (buff);
        }
 
-       nacl_domain_code_validate (domain, &start, size, &code);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_IMT_TRAMPOLINE, NULL);
 
        mono_tramp_info_register (mono_tramp_info_create (NULL, start, code - start, NULL, unwind_ops), domain);
@@ -6098,12 +5920,7 @@ get_delegate_invoke_impl (MonoTrampInfo **info, gboolean has_target, guint32 par
        } else {
                int i = 0;
                /* 8 for mov_reg and jump, plus 8 for each parameter */
-#ifdef __native_client_codegen__
-               /* TODO: calculate this size correctly */
-               code_reserve = 13 + (param_count * 8) + 2 * kNaClAlignment;
-#else
                code_reserve = 8 + (param_count * 8);
-#endif  /* __native_client_codegen__ */
                /*
                 * The stack contains:
                 * <args in reverse order>
@@ -6136,8 +5953,6 @@ get_delegate_invoke_impl (MonoTrampInfo **info, gboolean has_target, guint32 par
                g_assert ((code - start) < code_reserve);
        }
 
-       nacl_global_codeman_validate (&start, code_reserve, &code);
-
        if (has_target) {
                *info = mono_tramp_info_create ("delegate_invoke_impl_has_target", start, code - start, NULL, unwind_ops);
        } else {
index 0ca2bdcec44d54524c13b56004e93c1149bb4c8c..4150cdf60d0aed1d2527748e11d940407bec8b7a 100644 (file)
@@ -5,13 +5,6 @@
 #include <mono/utils/mono-sigcontext.h>
 #include <mono/utils/mono-context.h>
 
-#ifdef __native_client_codegen__
-#define kNaClAlignmentX86 32
-#define kNaClAlignmentMaskX86 (kNaClAlignmentX86 - 1)
-
-#define kNaClLengthOfCallImm kx86NaClLengthOfCallImm
-#endif
-
 #ifdef HOST_WIN32
 #include <windows.h>
 /* use SIG* defines if possible */
@@ -52,7 +45,7 @@ struct sigcontext {
 #define MONO_ARCH_USE_SIGACTION
 #endif
 
-#if defined(__native_client__) || defined(HOST_WATCHOS)
+#if defined(HOST_WATCHOS)
 #undef MONO_ARCH_USE_SIGACTION
 #endif
 
@@ -217,9 +210,7 @@ typedef struct {
 #define MONO_ARCH_HAVE_GENERALIZED_IMT_THUNK 1
 #define MONO_ARCH_HAVE_LIVERANGE_OPS 1
 #define MONO_ARCH_HAVE_SIGCTX_TO_MONOCTX 1
-#if !defined(__native_client_codegen__)
 #define MONO_ARCH_HAVE_FULL_AOT_TRAMPOLINES 1
-#endif
 #define MONO_ARCH_GOT_REG X86_EBX
 #define MONO_ARCH_HAVE_GET_TRAMPOLINES 1
 #define MONO_ARCH_HAVE_GENERAL_RGCTX_LAZY_FETCH_TRAMPOLINE 1
index 94062ec4b84ef71dcc6d6b01c97042e268f4f217..da9f3bb6a2061d3efafc67a3cee6a9e797ad10eb 100644 (file)
@@ -58,6 +58,7 @@
 #include <mono/utils/mono-hwcap.h>
 #include <mono/utils/dtrace.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/io-layer/io-layer.h>
 
 #include "mini.h"
@@ -95,211 +96,9 @@ MonoBackend *current_backend;
 gpointer
 mono_realloc_native_code (MonoCompile *cfg)
 {
-#if defined(__default_codegen__)
        return g_realloc (cfg->native_code, cfg->code_size);
-#elif defined(__native_client_codegen__)
-       guint old_padding;
-       gpointer native_code;
-       guint alignment_check;
-
-       /* Save the old alignment offset so we can re-align after the realloc. */
-       old_padding = (guint)(cfg->native_code - cfg->native_code_alloc);
-       cfg->code_size = NACL_BUNDLE_ALIGN_UP (cfg->code_size);
-
-       cfg->native_code_alloc = g_realloc ( cfg->native_code_alloc,
-                                                                                cfg->code_size + kNaClAlignment );
-
-       /* Align native_code to next nearest kNaClAlignment byte. */
-       native_code = (guint)cfg->native_code_alloc + kNaClAlignment;
-       native_code = (guint)native_code & ~kNaClAlignmentMask;
-
-       /* Shift the data to be 32-byte aligned again. */
-       memmove (native_code, cfg->native_code_alloc + old_padding, cfg->code_size);
-
-       alignment_check = (guint)native_code & kNaClAlignmentMask;
-       g_assert (alignment_check == 0);
-       return native_code;
-#else
-       g_assert_not_reached ();
-       return cfg->native_code;
-#endif
-}
-
-#ifdef __native_client_codegen__
-
-/* Prevent instructions from straddling a 32-byte alignment boundary.   */
-/* Instructions longer than 32 bytes must be aligned internally.        */
-/* IN: pcode, instlen                                                   */
-/* OUT: pcode                                                           */
-void mono_nacl_align_inst(guint8 **pcode, int instlen) {
-  int space_in_block;
-
-  space_in_block = kNaClAlignment - ((uintptr_t)(*pcode) & kNaClAlignmentMask);
-
-  if (G_UNLIKELY (instlen >= kNaClAlignment)) {
-    g_assert_not_reached();
-  } else if (instlen > space_in_block) {
-    *pcode = mono_arch_nacl_pad(*pcode, space_in_block);
-  }
-}
-
-/* Move emitted call sequence to the end of a kNaClAlignment-byte block.  */
-/* IN: start    pointer to start of call sequence                         */
-/* IN: pcode    pointer to end of call sequence (current "IP")            */
-/* OUT: start   pointer to the start of the call sequence after padding   */
-/* OUT: pcode   pointer to the end of the call sequence after padding     */
-void mono_nacl_align_call(guint8 **start, guint8 **pcode) {
-  const size_t MAX_NACL_CALL_LENGTH = kNaClAlignment;
-  guint8 copy_of_call[MAX_NACL_CALL_LENGTH];
-  guint8 *temp;
-
-  const size_t length = (size_t)((*pcode)-(*start));
-  g_assert(length < MAX_NACL_CALL_LENGTH);
-
-  memcpy(copy_of_call, *start, length);
-  temp = mono_nacl_pad_call(*start, (guint8)length);
-  memcpy(temp, copy_of_call, length);
-  (*start) = temp;
-  (*pcode) = temp + length;
 }
 
-/* mono_nacl_pad_call(): Insert padding for Native Client call instructions */
-/*    code     pointer to buffer for emitting code                          */
-/*    ilength  length of call instruction                                   */
-guint8 *mono_nacl_pad_call(guint8 *code, guint8 ilength) {
-  int freeSpaceInBlock = kNaClAlignment - ((uintptr_t)code & kNaClAlignmentMask);
-  int padding = freeSpaceInBlock - ilength;
-
-  if (padding < 0) {
-    /* There isn't enough space in this block for the instruction. */
-    /* Fill this block and start a new one.                        */
-    code = mono_arch_nacl_pad(code, freeSpaceInBlock);
-    freeSpaceInBlock = kNaClAlignment;
-    padding = freeSpaceInBlock - ilength;
-  }
-  g_assert(ilength > 0);
-  g_assert(padding >= 0);
-  g_assert(padding < kNaClAlignment);
-  if (0 == padding) return code;
-  return mono_arch_nacl_pad(code, padding);
-}
-
-guint8 *mono_nacl_align(guint8 *code) {
-  int padding = kNaClAlignment - ((uintptr_t)code & kNaClAlignmentMask);
-  if (padding != kNaClAlignment) code = mono_arch_nacl_pad(code, padding);
-  return code;
-}
-
-void mono_nacl_fix_patches(const guint8 *code, MonoJumpInfo *ji)
-{
-#ifndef USE_JUMP_TABLES
-  MonoJumpInfo *patch_info;
-  for (patch_info = ji; patch_info; patch_info = patch_info->next) {
-    unsigned char *ip = patch_info->ip.i + code;
-    ip = mono_arch_nacl_skip_nops(ip);
-    patch_info->ip.i = ip - code;
-  }
-#endif
-}
-#endif  /* __native_client_codegen__ */
-
-#ifdef USE_JUMP_TABLES
-
-#define DEFAULT_JUMPTABLE_CHUNK_ELEMENTS 128
-
-typedef struct MonoJumpTableChunk {
-       guint32 total;
-       guint32 active;
-       struct MonoJumpTableChunk *previous;
-       /* gpointer entries[total]; */
-} MonoJumpTableChunk;
-
-static MonoJumpTableChunk* g_jumptable;
-#define mono_jumptable_lock() mono_os_mutex_lock (&jumptable_mutex)
-#define mono_jumptable_unlock() mono_os_mutex_unlock (&jumptable_mutex)
-static mono_mutex_t jumptable_mutex;
-
-static  MonoJumpTableChunk*
-mono_create_jumptable_chunk (guint32 max_entries)
-{
-       guint32 size = sizeof (MonoJumpTableChunk) + max_entries * sizeof(gpointer);
-       MonoJumpTableChunk *chunk = (MonoJumpTableChunk*) g_new0 (guchar, size);
-       chunk->total = max_entries;
-       return chunk;
-}
-
-void
-mono_jumptable_init (void)
-{
-       if (g_jumptable == NULL) {
-               mono_os_mutex_init_recursive (&jumptable_mutex);
-               g_jumptable = mono_create_jumptable_chunk (DEFAULT_JUMPTABLE_CHUNK_ELEMENTS);
-       }
-}
-
-gpointer*
-mono_jumptable_add_entry (void)
-{
-       return mono_jumptable_add_entries (1);
-}
-
-gpointer*
-mono_jumptable_add_entries (guint32 entries)
-{
-       guint32 index;
-       gpointer *result;
-
-       mono_jumptable_init ();
-       mono_jumptable_lock ();
-       index = g_jumptable->active;
-       if (index + entries >= g_jumptable->total) {
-               /*
-                * Grow jumptable, by adding one more chunk.
-                * We cannot realloc jumptable, as there could be pointers
-                * to existing jump table entries in the code, so instead
-                * we just add one more chunk.
-                */
-               guint32 max_entries = entries;
-               MonoJumpTableChunk *new_chunk;
-
-               if (max_entries < DEFAULT_JUMPTABLE_CHUNK_ELEMENTS)
-                       max_entries = DEFAULT_JUMPTABLE_CHUNK_ELEMENTS;
-               new_chunk = mono_create_jumptable_chunk (max_entries);
-               /* Link old jumptable, so that we could free it up later. */
-               new_chunk->previous = g_jumptable;
-               g_jumptable = new_chunk;
-               index = 0;
-       }
-       g_jumptable->active = index + entries;
-       result = (gpointer*)((guchar*)g_jumptable + sizeof(MonoJumpTableChunk)) + index;
-       mono_jumptable_unlock();
-
-       return result;
-}
-
-void
-mono_jumptable_cleanup (void)
-{
-       if (g_jumptable) {
-               MonoJumpTableChunk *current = g_jumptable, *prev;
-               while (current != NULL) {
-                       prev = current->previous;
-                       g_free (current);
-                       current = prev;
-               }
-               g_jumptable = NULL;
-               mono_os_mutex_destroy (&jumptable_mutex);
-       }
-}
-
-gpointer*
-mono_jumptable_get_entry (guint8 *code_ptr)
-{
-       return mono_arch_jumptable_entry_from_code (code_ptr);
-}
-
-#endif /* USE_JUMP_TABLES */
-
 typedef struct {
        MonoExceptionClause *clause;
        MonoBasicBlock *basic_block;
@@ -2429,12 +2228,6 @@ mono_postprocess_patches (MonoCompile *cfg)
                        MonoJumpList *jlist;
                        MonoDomain *domain = cfg->domain;
                        unsigned char *ip = cfg->native_code + patch_info->ip.i;
-#if defined(__native_client__) && defined(__native_client_codegen__)
-                       /* When this jump target gets evaluated, the method */
-                       /* will be installed in the dynamic code section,   */
-                       /* not at the location of cfg->native_code.         */
-                       ip = nacl_inverse_modify_patch_target (cfg->native_code) + patch_info->ip.i;
-#endif
 
                        mono_domain_lock (domain);
                        jlist = (MonoJumpList *)g_hash_table_lookup (domain_jit_info (domain)->jump_target_hash, patch_info->data.method);
@@ -2472,15 +2265,6 @@ mono_codegen (MonoCompile *cfg)
        else
                code_domain = cfg->domain;
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       void *code_dest;
-
-       /* This keeps patch targets from being transformed during
-        * ordinary method compilation, for local branches and jumps.
-        */
-       nacl_allow_target_modification (FALSE);
-#endif
-
        for (bb = cfg->bb_entry; bb; bb = bb->next_bb) {
                cfg->spill_count = 0;
                /* we reuse dfn here */
@@ -2527,18 +2311,13 @@ mono_codegen (MonoCompile *cfg)
                }
        }
 
-#ifdef __native_client_codegen__
-       mono_nacl_fix_patches (cfg->native_code, cfg->patch_info);
-#endif
        mono_arch_emit_exceptions (cfg);
 
        max_epilog_size = 0;
 
        /* we always allocate code in cfg->domain->code_mp to increase locality */
        cfg->code_size = cfg->code_len + max_epilog_size;
-#ifdef __native_client_codegen__
-       cfg->code_size = NACL_BUNDLE_ALIGN_UP (cfg->code_size);
-#endif
+
        /* fixme: align to MONO_ARCH_CODE_ALIGNMENT */
 
 #ifdef MONO_ARCH_HAVE_UNWIND_TABLE
@@ -2561,9 +2340,7 @@ mono_codegen (MonoCompile *cfg)
        } else {
                code = (guint8 *)mono_domain_code_reserve (code_domain, cfg->code_size + cfg->thunk_area + unwindlen);
        }
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       nacl_allow_target_modification (TRUE);
-#endif
+
        if (cfg->thunk_area) {
                cfg->thunks_offset = cfg->code_size + unwindlen;
                cfg->thunks = code + cfg->thunks_offset;
@@ -2572,17 +2349,7 @@ mono_codegen (MonoCompile *cfg)
 
        g_assert (code);
        memcpy (code, cfg->native_code, cfg->code_len);
-#if defined(__default_codegen__)
        g_free (cfg->native_code);
-#elif defined(__native_client_codegen__)
-       if (cfg->native_code_alloc) {
-               g_free (cfg->native_code_alloc);
-               cfg->native_code_alloc = 0;
-       }
-       else if (cfg->native_code) {
-               g_free (cfg->native_code);
-       }
-#endif /* __native_client_codegen__ */
        cfg->native_code = code;
        code = cfg->native_code + cfg->code_len;
   
@@ -2624,20 +2391,6 @@ mono_codegen (MonoCompile *cfg)
        mono_arch_save_unwind_info (cfg);
 #endif
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       if (!cfg->compile_aot) {
-               if (cfg->method->dynamic) {
-                       code_dest = nacl_code_manager_get_code_dest(cfg->dynamic_info->code_mp, cfg->native_code);
-               } else {
-                       code_dest = nacl_domain_get_code_dest(cfg->domain, cfg->native_code);
-               }
-       }
-#endif
-
-#if defined(__native_client_codegen__)
-       mono_nacl_fix_patches (cfg->native_code, cfg->patch_info);
-#endif
-
 #ifdef MONO_ARCH_HAVE_PATCH_CODE_NEW
        {
                MonoJumpInfo *ji;
@@ -2667,7 +2420,11 @@ mono_codegen (MonoCompile *cfg)
                }
        }
 #else
-       mono_arch_patch_code (cfg, cfg->method, cfg->domain, cfg->native_code, cfg->patch_info, cfg->run_cctors);
+       mono_arch_patch_code (cfg, cfg->method, cfg->domain, cfg->native_code, cfg->patch_info, cfg->run_cctors, &cfg->error);
+       if (!is_ok (&cfg->error)) {
+               mono_cfg_set_exception (cfg, MONO_EXCEPTION_MONO_ERROR);
+               return;
+       }
 #endif
 
        if (cfg->method->dynamic) {
@@ -3139,10 +2896,25 @@ is_open_method (MonoMethod *method)
        return FALSE;
 }
 
+static void mono_insert_nop_in_empty_bb (MonoCompile *cfg)
+{
+       MonoBasicBlock *bb;
+       for (bb = cfg->bb_entry; bb; bb = bb->next_bb) {
+               if (bb->code)
+                       continue;
+               MonoInst *nop;
+               MONO_INST_NEW (cfg, nop, OP_NOP);
+               MONO_ADD_INS (bb, nop);
+       }
+}
 static void
 mono_create_gc_safepoint (MonoCompile *cfg, MonoBasicBlock *bblock)
 {
        MonoInst *poll_addr, *ins;
+
+       if (cfg->disable_gc_safe_points)
+               return;
+
        if (cfg->verbose_level > 1)
                printf ("ADDING SAFE POINT TO BB %d\n", bblock->block_num);
 
@@ -3228,8 +3000,7 @@ mono_insert_safepoints (MonoCompile *cfg)
 
                if (info && info->subtype == WRAPPER_SUBTYPE_ICALL_WRAPPER &&
                        (info->d.icall.func == mono_thread_interruption_checkpoint ||
-                       info->d.icall.func == mono_threads_finish_blocking ||
-                       info->d.icall.func == mono_threads_reset_blocking_start)) {
+                       info->d.icall.func == mono_threads_exit_gc_safe_region_unbalanced)) {
                        /* These wrappers are called from the wrapper for the polling function, leading to potential stack overflow */
                        if (cfg->verbose_level > 1)
                                printf ("SKIPPING SAFEPOINTS for wrapper %s\n", cfg->method->name);
@@ -3645,6 +3416,17 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, JitFl
 
        mini_gc_init_cfg (cfg);
 
+       if (method->wrapper_type == MONO_WRAPPER_UNKNOWN) {
+               WrapperInfo *info = mono_marshal_get_wrapper_info (method);
+
+               /* These wrappers are using linkonce linkage, so they can't access GOT slots */
+               if ((info && (info->subtype == WRAPPER_SUBTYPE_GSHAREDVT_IN_SIG || info->subtype == WRAPPER_SUBTYPE_GSHAREDVT_OUT_SIG))) {
+                       cfg->disable_gc_safe_points = TRUE;
+                       /* This is safe, these wrappers only store to the stack */
+                       cfg->gen_write_barriers = FALSE;
+               }
+       }
+
        if (COMPILE_LLVM (cfg)) {
                cfg->opt |= MONO_OPT_ABCREM;
        }
@@ -3728,6 +3510,12 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, JitFl
        MONO_TIME_TRACK (mono_jit_stats.jit_method_to_ir, i = mono_method_to_ir (cfg, method_to_compile, NULL, NULL, NULL, NULL, 0, FALSE));
        mono_cfg_dump_ir (cfg, "method-to-ir");
 
+       if (cfg->gdump_ctx != NULL) {
+               /* workaround for graph visualization, as it doesn't handle empty basic blocks properly */
+               mono_insert_nop_in_empty_bb (cfg);
+               mono_cfg_dump_ir (cfg, "mono_insert_nop_in_empty_bb");
+       }
+
        if (i < 0) {
                if (try_generic_shared && cfg->exception_type == MONO_EXCEPTION_GENERIC_SHARING_FAILED) {
                        if (compile_aot) {
@@ -3806,6 +3594,15 @@ mini_method_compile (MonoMethod *method, guint32 opts, MonoDomain *domain, JitFl
                mono_cfg_dump_ir (cfg, "local_cprop");
        }
 
+       if (cfg->flags & MONO_CFG_HAS_TYPE_CHECK) {
+               MONO_TIME_TRACK (mono_jit_stats.jit_decompose_typechecks, mono_decompose_typechecks (cfg));
+               if (cfg->gdump_ctx != NULL) {
+                       /* workaround for graph visualization, as it doesn't handle empty basic blocks properly */
+                       mono_insert_nop_in_empty_bb (cfg);
+               }
+               mono_cfg_dump_ir (cfg, "decompose_typechecks");
+       }
+
        /*
         * Should be done after cprop which can do strength reduction on
         * some of these ops, after propagating immediates.
@@ -4301,7 +4098,9 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
                                mono_lookup_pinvoke_call (method, NULL, NULL);
                }
                nm = mono_marshal_get_native_wrapper (method, TRUE, mono_aot_only);
-               code = mono_get_addr_from_ftnptr (mono_compile_method (nm));
+               gpointer compiled_method = mono_compile_method_checked (nm, error);
+               return_val_if_nok (error, NULL);
+               code = mono_get_addr_from_ftnptr (compiled_method);
                jinfo = mono_jit_info_table_find (target_domain, (char *)code);
                if (!jinfo)
                        jinfo = mono_jit_info_table_find (mono_domain_get (), (char *)code);
@@ -4315,7 +4114,7 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
 
                if (method->klass->parent == mono_defaults.multicastdelegate_class) {
                        if (*name == '.' && (strcmp (name, ".ctor") == 0)) {
-                               MonoJitICallInfo *mi = mono_find_jit_icall_by_name ("mono_delegate_ctor");
+                               MonoJitICallInfo *mi = mono_find_jit_icall_by_name ("ves_icall_mono_delegate_ctor");
                                g_assert (mi);
                                /*
                                 * We need to make sure this wrapper
@@ -4331,15 +4130,21 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
                        } else if (*name == 'I' && (strcmp (name, "Invoke") == 0)) {
                                if (mono_llvm_only) {
                                        nm = mono_marshal_get_delegate_invoke (method, NULL);
-                                       return mono_get_addr_from_ftnptr (mono_compile_method (nm));
+                                       gpointer compiled_ptr = mono_compile_method_checked (nm, error);
+                                       mono_error_assert_ok (error);
+                                       return mono_get_addr_from_ftnptr (compiled_ptr);
                                }
                                return mono_create_delegate_trampoline (target_domain, method->klass);
                        } else if (*name == 'B' && (strcmp (name, "BeginInvoke") == 0)) {
                                nm = mono_marshal_get_delegate_begin_invoke (method);
-                               return mono_get_addr_from_ftnptr (mono_compile_method (nm));
+                               gpointer compiled_ptr = mono_compile_method_checked (nm, error);
+                               mono_error_assert_ok (error);
+                               return mono_get_addr_from_ftnptr (compiled_ptr);
                        } else if (*name == 'E' && (strcmp (name, "EndInvoke") == 0)) {
                                nm = mono_marshal_get_delegate_end_invoke (method);
-                               return mono_get_addr_from_ftnptr (mono_compile_method (nm));
+                               gpointer compiled_ptr = mono_compile_method_checked (nm, error);
+                               mono_error_assert_ok (error);
+                               return mono_get_addr_from_ftnptr (compiled_ptr);
                        }
                }
 
@@ -4387,13 +4192,9 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
 
        if (mono_aot_only) {
                char *fullname = mono_method_full_name (method, TRUE);
-               char *msg = g_strdup_printf ("Attempting to JIT compile method '%s' while running with --aot-only. See http://docs.xamarin.com/ios/about/limitations for more information.\n", fullname);
-
-               ex = mono_get_exception_execution_engine (msg);
-               mono_error_set_exception_instance (error, ex);
+               mono_error_set_execution_engine (error, "Attempting to JIT compile method '%s' while running with --aot-only. See http://docs.xamarin.com/ios/about/limitations for more information.\n", fullname);
                g_free (fullname);
-               g_free (msg);
-               
+
                return NULL;
        }
 
@@ -4509,10 +4310,6 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
                        patch_info.data.method = method;
                        g_hash_table_remove (domain_jit_info (target_domain)->jump_target_hash, method);
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-                       /* These patches are applied after a method has been installed, no target munging is needed. */
-                       nacl_allow_target_modification (FALSE);
-#endif
 #ifdef MONO_ARCH_HAVE_PATCH_CODE_NEW
                        for (tmp = jlist->list; tmp; tmp = tmp->next) {
                                gpointer target = mono_resolve_patch_target (NULL, target_domain, (guint8 *)tmp->data, &patch_info, TRUE, error);
@@ -4521,11 +4318,11 @@ mono_jit_compile_method_inner (MonoMethod *method, MonoDomain *target_domain, in
                                mono_arch_patch_code_new (NULL, target_domain, (guint8 *)tmp->data, &patch_info, target);
                        }
 #else
-                       for (tmp = jlist->list; tmp; tmp = tmp->next)
-                               mono_arch_patch_code (NULL, NULL, target_domain, tmp->data, &patch_info, TRUE);
-#endif
-#if defined(__native_client_codegen__) && defined(__native_client__)
-                       nacl_allow_target_modification (TRUE);
+                       for (tmp = jlist->list; tmp; tmp = tmp->next) {
+                               mono_arch_patch_code (NULL, NULL, target_domain, tmp->data, &patch_info, TRUE, error);
+                               if (!is_ok (error))
+                                       break;
+                       }
 #endif
                }
        }
index 7452864b101efb491e0b332de19dfbc1201717d9..a93d795b6750404f3a98cc2b78890e9602593308 100644 (file)
@@ -31,6 +31,7 @@
 #include <mono/utils/mono-machine.h>
 #include <mono/utils/mono-stack-unwinding.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/mono-tls.h>
 #include <mono/utils/atomic.h>
 #include <mono/utils/mono-conc-hashtable.h>
 #endif
 
 /* Version number of the AOT file format */
-#define MONO_AOT_FILE_VERSION 133
+#define MONO_AOT_FILE_VERSION 134
 
 //TODO: This is x86/amd64 specific.
 #define mono_simd_shuffle_mask(a,b,c,d) ((a) | ((b) << 2) | ((c) << 4) | ((d) << 6))
@@ -485,14 +486,15 @@ enum {
 
 #define MONO_IS_COND_EXC(ins) ((((ins)->opcode >= OP_COND_EXC_EQ) && ((ins)->opcode <= OP_COND_EXC_LT_UN)) || (((ins)->opcode >= OP_COND_EXC_IEQ) && ((ins)->opcode <= OP_COND_EXC_ILT_UN)))
 
-#define MONO_IS_SETCC(ins) ((((ins)->opcode >= OP_CEQ) && ((ins)->opcode <= OP_CLT_UN)) || (((ins)->opcode >= OP_ICEQ) && ((ins)->opcode <= OP_ICLT_UN)) || (((ins)->opcode >= OP_LCEQ) && ((ins)->opcode <= OP_LCLT_UN)) || (((ins)->opcode >= OP_FCEQ) && ((ins)->opcode <= OP_FCLT_UN)))
+#define MONO_IS_SETCC(ins) ((((ins)->opcode >= OP_CEQ) && ((ins)->opcode <= OP_CLT_UN)) || (((ins)->opcode >= OP_ICEQ) && ((ins)->opcode <= OP_ICLE_UN)) || (((ins)->opcode >= OP_LCEQ) && ((ins)->opcode <= OP_LCLT_UN)) || (((ins)->opcode >= OP_FCEQ) && ((ins)->opcode <= OP_FCLT_UN)))
 
 
 #define MONO_IS_LOAD_MEMBASE(ins) (((ins)->opcode >= OP_LOAD_MEMBASE && (ins)->opcode <= OP_LOADV_MEMBASE) || ((ins)->opcode >= OP_ATOMIC_LOAD_I1 && (ins)->opcode <= OP_ATOMIC_LOAD_R8))
 #define MONO_IS_STORE_MEMBASE(ins) (((ins)->opcode >= OP_STORE_MEMBASE_REG && (ins)->opcode <= OP_STOREV_MEMBASE) || ((ins)->opcode >= OP_ATOMIC_STORE_I1 && (ins)->opcode <= OP_ATOMIC_STORE_R8))
 #define MONO_IS_STORE_MEMINDEX(ins) (((ins)->opcode >= OP_STORE_MEMINDEX) && ((ins)->opcode <= OP_STORER8_MEMINDEX))
 
-#define MONO_IS_CALL(ins) (((ins->opcode >= OP_VOIDCALL) && (ins->opcode <= OP_VOIDCALL_MEMBASE)) || ((ins->opcode >= OP_FCALL) && (ins->opcode <= OP_FCALL_MEMBASE)) || ((ins->opcode >= OP_LCALL) && (ins->opcode <= OP_LCALL_MEMBASE)) || ((ins->opcode >= OP_VCALL) && (ins->opcode <= OP_VCALL_MEMBASE)) || ((ins->opcode >= OP_CALL) && (ins->opcode <= OP_CALL_MEMBASE)) || ((ins->opcode >= OP_VCALL2) && (ins->opcode <= OP_VCALL2_MEMBASE)) || (ins->opcode == OP_TAILCALL) || ((ins->opcode >= OP_RCALL) && (ins->opcode <= OP_RCALL_MEMBASE)))
+// OP_DYN_CALL is not a MonoCallInst
+#define MONO_IS_CALL(ins) (((ins->opcode >= OP_VOIDCALL) && (ins->opcode <= OP_VCALL2_MEMBASE)) || (ins->opcode == OP_TAILCALL))
 
 #define MONO_IS_JUMP_TABLE(ins) (((ins)->opcode == OP_JUMP_TABLE) ? TRUE : ((((ins)->opcode == OP_AOTCONST) && (ins->inst_i1 == (gpointer)MONO_PATCH_INFO_SWITCH)) ? TRUE : ((ins)->opcode == OP_SWITCH) ? TRUE : ((((ins)->opcode == OP_GOT_ENTRY) && ((ins)->inst_right->inst_i1 == (gpointer)MONO_PATCH_INFO_SWITCH)) ? TRUE : FALSE)))
 
@@ -784,7 +786,7 @@ typedef enum {
        LLVMArgGsharedvtFixedVtype,
        /* Variable sized argument passed to/returned from gsharedvt method by ref */
        LLVMArgGsharedvtVariable,
-       /* Vtype passed as one int array argument */
+       /* Vtype passed/returned as one int array argument */
        LLVMArgAsIArgs,
        /* Vtype passed as a set of fp arguments */
        LLVMArgAsFpArgs,
@@ -1614,8 +1616,7 @@ typedef struct {
        MonoInst *gsharedvt_info_var;
 
        /* For native-to-managed wrappers, CEE_MONO_JIT_(AT|DE)TACH opcodes */
-       MonoInst *attach_cookie;
-       MonoInst *attach_dummy;
+       MonoInst *orig_domain_var;
 
        MonoInst *lmf_var;
        MonoInst *lmf_addr_var;
@@ -1669,6 +1670,7 @@ typedef struct {
        guint            disable_deadce_vars : 1;
        guint            disable_out_of_line_bblocks : 1;
        guint            disable_direct_icalls : 1;
+       guint            disable_gc_safe_points : 1;
        guint            create_lmf_var : 1;
        /*
         * When this is set, the code to push/pop the LMF from the LMF stack is generated as IR
@@ -1875,7 +1877,8 @@ typedef enum {
        MONO_CFG_HAS_FPOUT    = 1 << 5, /* there are fp values passed in int registers */
        MONO_CFG_HAS_SPILLUP  = 1 << 6, /* spill var slots are allocated from bottom to top */
        MONO_CFG_HAS_CHECK_THIS  = 1 << 7,
-       MONO_CFG_HAS_ARRAY_ACCESS = 1 << 8
+       MONO_CFG_HAS_ARRAY_ACCESS = 1 << 8,
+       MONO_CFG_HAS_TYPE_CHECK = 1 << 9
 } MonoCompileFlags;
 
 typedef struct {
@@ -1909,6 +1912,7 @@ typedef struct {
        double jit_liveness_handle_exception_clauses;
        double jit_handle_out_of_line_bblock;
        double jit_decompose_long_opts;
+       double jit_decompose_typechecks;
        double jit_local_cprop;
        double jit_local_emulate_ops;
        double jit_optimize_branches;
@@ -2395,8 +2399,8 @@ MonoLMF * mono_get_lmf                      (void);
 MonoLMF** mono_get_lmf_addr                 (void);
 void      mono_set_lmf                      (MonoLMF *lmf);
 MonoJitTlsData* mono_get_jit_tls            (void);
-MONO_API gpointer  mono_jit_thread_attach            (MonoDomain *domain, gpointer *dummy);
-MONO_API void      mono_jit_thread_detach            (gpointer cookie, gpointer *dummy);
+MONO_API MonoDomain* mono_jit_thread_attach (MonoDomain *domain);
+MONO_API void      mono_jit_set_domain      (MonoDomain *domain);
 gint32    mono_get_jit_tls_offset           (void);
 gint32    mono_get_lmf_tls_offset           (void);
 gint32    mono_get_lmf_addr_tls_offset      (void);
@@ -2426,7 +2430,7 @@ MonoInst *mono_get_got_var (MonoCompile *cfg);
 void      mono_add_seq_point (MonoCompile *cfg, MonoBasicBlock *bb, MonoInst *ins, int native_offset);
 void      mono_add_var_location (MonoCompile *cfg, MonoInst *var, gboolean is_reg, int reg, int offset, int from, int to);
 MonoInst* mono_emit_jit_icall (MonoCompile *cfg, gconstpointer func, MonoInst **args);
-MonoInst* mono_emit_jit_icall_by_info (MonoCompile *cfg, MonoJitICallInfo *info, MonoInst **args);
+MonoInst* mono_emit_jit_icall_by_info (MonoCompile *cfg, int il_offset, MonoJitICallInfo *info, MonoInst **args);
 MonoInst* mono_emit_method_call (MonoCompile *cfg, MonoMethod *method, MonoInst **args, MonoInst *this_ins);
 void      mono_create_helper_signatures (void);
 
@@ -2445,29 +2449,6 @@ void      mono_liveness_handle_exception_clauses (MonoCompile *cfg);
 
 /* Native Client functions */
 gpointer mono_realloc_native_code(MonoCompile *cfg);
-#ifdef __native_client_codegen__
-void mono_nacl_align_inst(guint8 **pcode, int instlen);
-void mono_nacl_align_call(guint8 **start, guint8 **pcode);
-guint8 *mono_nacl_pad_call(guint8 *code, guint8 ilength);
-guint8 *mono_nacl_align(guint8 *code);
-void mono_nacl_fix_patches(const guint8 *code, MonoJumpInfo *ji);
-/* Defined for each arch */
-guint8 *mono_arch_nacl_pad(guint8 *code, int pad);
-guint8 *mono_arch_nacl_skip_nops(guint8 *code);
-
-#if defined(TARGET_X86)
-#define kNaClAlignment kNaClAlignmentX86
-#define kNaClAlignmentMask kNaClAlignmentMaskX86
-#elif defined(TARGET_AMD64)
-#define kNaClAlignment kNaClAlignmentAMD64
-#define kNaClAlignmentMask kNaClAlignmentMaskAMD64
-#elif defined(TARGET_ARM)
-#define kNaClAlignment kNaClAlignmentARM
-#define kNaClAlignmentMask kNaClAlignmentMaskARM
-#endif
-
-#define NACL_BUNDLE_ALIGN_UP(p) ((((p)+kNaClAlignmentMask)) & ~kNaClAlignmentMask)
-#endif
 
 #if defined(__native_client__) || defined(__native_client_codegen__)
 extern volatile int __nacl_thread_suspension_needed;
@@ -2475,12 +2456,6 @@ void __nacl_suspend_thread_if_needed(void);
 void mono_nacl_gc(void);
 #endif
 
-#if defined(__native_client_codegen__) || defined(__native_client__)
-#define NACL_SIZE(a, b) (b)
-#else
-#define NACL_SIZE(a, b) (a)
-#endif
-
 extern MonoDebugOptions debug_options;
 
 static inline MonoMethod*
@@ -2492,9 +2467,9 @@ jinfo_get_method (MonoJitInfo *ji)
 /* AOT */
 void      mono_aot_init                     (void);
 void      mono_aot_cleanup                  (void);
-gpointer  mono_aot_get_method               (MonoDomain *domain,
-                                                                                        MonoMethod *method);
-gpointer  mono_aot_get_method_from_token    (MonoDomain *domain, MonoImage *image, guint32 token);
+gpointer  mono_aot_get_method_checked       (MonoDomain *domain,
+                                                                                        MonoMethod *method, MonoError *error);
+gpointer  mono_aot_get_method_from_token    (MonoDomain *domain, MonoImage *image, guint32 token, MonoError *error);
 gboolean  mono_aot_is_got_entry             (guint8 *code, guint8 *addr);
 guint8*   mono_aot_get_plt_entry            (guint8 *code);
 guint32   mono_aot_get_plt_info_offset      (mgreg_t *regs, guint8 *code);
@@ -2503,7 +2478,7 @@ gboolean  mono_aot_get_class_from_name      (MonoImage *image, const char *name_
 MonoJitInfo* mono_aot_find_jit_info         (MonoDomain *domain, MonoImage *image, gpointer addr);
 gpointer mono_aot_plt_resolve               (gpointer aot_module, guint32 plt_info_offset, guint8 *code, MonoError *error);
 void     mono_aot_patch_plt_entry           (guint8 *code, guint8 *plt_entry, gpointer *got, mgreg_t *regs, guint8 *addr);
-gpointer mono_aot_get_method_from_vt_slot   (MonoDomain *domain, MonoVTable *vtable, int slot);
+gpointer mono_aot_get_method_from_vt_slot   (MonoDomain *domain, MonoVTable *vtable, int slot, MonoError *error);
 gpointer mono_aot_create_specific_trampoline   (MonoImage *image, gpointer arg1, MonoTrampolineType tramp_type, MonoDomain *domain, guint32 *code_len);
 gpointer mono_aot_get_trampoline            (const char *name);
 gpointer mono_aot_get_trampoline_full       (const char *name, MonoTrampInfo **out_tinfo);
@@ -2607,14 +2582,12 @@ gpointer          mini_add_method_trampoline (MonoMethod *m, gpointer compiled_m
 gpointer          mini_add_method_wrappers_llvmonly (MonoMethod *m, gpointer compiled_method, gboolean caller_gsharedvt, gboolean add_unbox_tramp, gpointer *out_arg);
 gboolean          mini_jit_info_is_gsharedvt (MonoJitInfo *ji);
 gpointer*         mini_resolve_imt_method (MonoVTable *vt, gpointer *vtable_slot, MonoMethod *imt_method, MonoMethod **impl_method, gpointer *out_aot_addr,
-                                                                                  gboolean *out_need_rgctx_tramp, MonoMethod **variant_iface);
+                                          gboolean *out_need_rgctx_tramp, MonoMethod **variant_iface,
+                                          MonoError *error);
 MonoFtnDesc      *mini_create_llvmonly_ftndesc (MonoDomain *domain, gpointer addr, gpointer arg);
 
 gboolean          mono_running_on_valgrind (void);
 void*             mono_global_codeman_reserve (int size);
-void*             nacl_global_codeman_get_dest(void *data);
-void              mono_global_codeman_commit(void *data, int size, int newsize);
-void              nacl_global_codeman_validate(guint8 **buf_base, int buf_size, guint8 **code_end);
 const char       *mono_regname_full (int reg, int bank);
 gint32*           mono_allocate_stack_slots (MonoCompile *cfg, gboolean backward, guint32 *stack_size, guint32 *stack_align);
 void              mono_local_regalloc (MonoCompile *cfg, MonoBasicBlock *bb);
@@ -2692,7 +2665,7 @@ GList    *mono_arch_get_global_fp_regs          (MonoCompile *cfg);
 GList    *mono_arch_get_iregs_clobbered_by_call (MonoCallInst *call);
 GList    *mono_arch_get_fregs_clobbered_by_call (MonoCallInst *call);
 guint32   mono_arch_regalloc_cost               (MonoCompile *cfg, MonoMethodVar *vmv);
-void      mono_arch_patch_code                  (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors);
+void      mono_arch_patch_code                  (MonoCompile *cfg, MonoMethod *method, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gboolean run_cctors, MonoError *error);
 void      mono_arch_patch_code_new              (MonoCompile *cfg, MonoDomain *domain, guint8 *code, MonoJumpInfo *ji, gpointer target);
 void      mono_arch_flush_icache                (guint8 *code, gint size);
 int       mono_arch_max_epilog_size             (MonoCompile *cfg);
@@ -2757,21 +2730,6 @@ gpointer mono_arch_get_seq_point_info           (MonoDomain *domain, guint8 *cod
 void     mono_arch_init_lmf_ext                 (MonoLMFExt *ext, gpointer prev_lmf);
 #endif
 
-#ifdef USE_JUMP_TABLES
-void
-mono_jumptable_init  (void);
-gpointer*
-mono_jumptable_add_entry (void);
-gpointer*
-mono_jumptable_add_entries (guint32 entries);
-void
-mono_jumptable_cleanup  (void);
-gpointer*
-mono_arch_jumptable_entry_from_code (guint8 *code);
-gpointer*
-mono_jumptable_get_entry (guint8 *code);
-#endif
-
 gboolean
 mono_arch_unwind_frame (MonoDomain *domain, MonoJitTlsData *jit_tls, 
                                                MonoJitInfo *ji, MonoContext *ctx, 
@@ -2907,6 +2865,7 @@ typedef void  (*MonoUnhandledExceptionFunc)         (MonoObject *exc, gpointer u
 MONO_API void mono_install_unhandled_exception_hook (MonoUnhandledExceptionFunc func, gpointer user_data);
 void          mono_invoke_unhandled_exception_hook  (MonoObject *exc);
 
+void mono_decompose_typechecks (MonoCompile *cfg);
 /* Dominator/SSA methods */
 void        mono_compile_dominator_info         (MonoCompile *cfg, int dom_flags);
 void        mono_compute_natural_loops          (MonoCompile *cfg);
@@ -3194,7 +3153,7 @@ void mono_cross_helpers_run (void);
  * Signal handling
  */
 
-#ifdef DISABLE_HW_TRAPS
+#if defined(DISABLE_HW_TRAPS) || defined(MONO_ARCH_DISABLE_HW_TRAPS)
  // Signal handlers not available
 #define MONO_ARCH_NEED_DIV_CHECK 1
 #endif
@@ -3220,5 +3179,9 @@ gboolean MONO_SIG_HANDLER_SIGNATURE (mono_chain_signal);
  */
 void mono_exception_native_unwind (void *ctx, MONO_SIG_HANDLER_INFO_TYPE *info);
 
+/*
+ * Coop support for trampolines
+ */
+void mono_interruption_checkpoint_from_trampoline (void);
 
 #endif /* __MONO_MINI_H__ */
index d8e4437b75d5ddb7836dbee0230e052f673744d6..98f89d63500b7fe89ea677a7bbe041a911dd4a00 100644 (file)
@@ -534,7 +534,7 @@ mono_trace_enter_method (MonoMethod *method, char *ebp)
                                        g_free (as);
                                } else if (klass == mono_defaults.int32_class) {
                                        printf ("[INT32:%p:%d], ", o, *(gint32 *)((char *)o + sizeof (MonoObject)));
-                               } else if (klass == mono_defaults.monotype_class) {
+                               } else if (klass == mono_defaults.runtimetype_class) {
                                        printf ("[TYPE:%s], ", mono_type_full_name (((MonoReflectionType*)o)->type));
                                } else
                                        printf ("[%s.%s:%p], ", klass->name_space, klass->name, o);
index 675dcf6d3deedd2e75fcbecd46c6c1c708d88eec..f5600adbde78198f5a9935ef9971316cc1abfb8c 100644 (file)
@@ -5,6 +5,7 @@
  *   Zoltan Varga <vargaz@gmail.com>
  *   Rodrigo Kumpera <kumpera@gmail.com>
  *   Andi McClure <andi.mcclure@xamarin.com>
+ *   Johan Lorensson <johan.lorensson@xamarin.com>
  *
  * Copyright 2015 Xamarin, Inc (http://www.xamarin.com)
  * Licensed under the MIT license. See LICENSE file in the project root for full license information.
@@ -138,7 +139,6 @@ mono_arch_get_gsharedvt_arg_trampoline (MonoDomain *domain, gpointer arg, gpoint
        amd64_jump_code (code, addr);
        g_assert ((code - start) < buf_len);
 
-       nacl_domain_code_validate (domain, &start, buf_len, &code);
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -146,7 +146,6 @@ mono_arch_get_gsharedvt_arg_trampoline (MonoDomain *domain, gpointer arg, gpoint
        return start;
 }
 
-
 gpointer
 mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
 {
@@ -246,8 +245,8 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        <caller registers area>
        <rgctx>
        <gsharedvt info>
-       <calee stack area>
-       <calee reg area>
+       <callee stack area>
+       <callee reg area>
         */
 
        /* Call start_gsharedvt_call () */
@@ -264,7 +263,23 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
 
        if (aot) {
                code = mono_arch_emit_load_aotconst (buf, code, &ji, MONO_PATCH_INFO_JIT_ICALL_ADDR, "mono_amd64_start_gsharedvt_call");
-               amd64_call_reg (code, AMD64_R11);
+               #ifdef TARGET_WIN32
+                       /* Since we are doing a call as part of setting up stackframe, the reserved shadow stack used by Windows platform is allocated up in
+                       the callee stack area but currently the callee reg area is in between. Windows calling convention dictates that room is made on stack where
+                       callee can save any parameters passed in registers. Since Windows x64 calling convention
+                       uses 4 registers for the first 4 parameters, stack needs to be adjusted before making the call.
+                       NOTE, Windows calling convention assumes that space for all registers have been reserved, regardless
+                       of the number of function parameters actually used.
+                       */
+                       int shadow_reg_size = 0;
+
+                       shadow_reg_size = ALIGN_TO (PARAM_REGS * sizeof(gpointer), MONO_ARCH_FRAME_ALIGNMENT);
+                       amd64_alu_reg_imm (code, X86_SUB, AMD64_RSP, shadow_reg_size);
+                       amd64_call_reg (code, AMD64_R11);
+                       amd64_alu_reg_imm (code, X86_ADD, AMD64_RSP, shadow_reg_size);
+               #else
+                       amd64_call_reg (code, AMD64_R11);
+               #endif
        } else {
                g_error ("no aot");
        }
@@ -303,13 +318,14 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
         */
 
        /* Load vret_slot */
-       amd64_mov_reg_membase (code, AMD64_RDI, AMD64_R10, MONO_STRUCT_OFFSET (GSharedVtCallInfo, vret_slot), 4);
-       amd64_alu_reg_imm (code, X86_SUB, AMD64_RDI, n_arg_regs + n_arg_fregs);
-       amd64_shift_reg_imm (code, X86_SHL, AMD64_RDI, 3);
+       /* Use first input parameter register as scratch since it is volatile on all platforms */
+       amd64_mov_reg_membase (code, MONO_AMD64_ARG_REG1, AMD64_R10, MONO_STRUCT_OFFSET (GSharedVtCallInfo, vret_slot), 4);
+       amd64_alu_reg_imm (code, X86_SUB, MONO_AMD64_ARG_REG1, n_arg_regs + n_arg_fregs);
+       amd64_shift_reg_imm (code, X86_SHL, MONO_AMD64_ARG_REG1, 3);
 
        /* vret address is RBP - (framesize - caller_reg_area_offset) */
        amd64_mov_reg_reg (code, AMD64_R11, AMD64_RSP, sizeof(mgreg_t));
-       amd64_alu_reg_reg (code, X86_ADD, AMD64_R11, AMD64_RDI);
+       amd64_alu_reg_reg (code, X86_ADD, AMD64_R11, MONO_AMD64_ARG_REG1);
 
        /* Load ret marshal type */
        /* Load vret address in R11 */
@@ -367,10 +383,10 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
 
        /*
                Address to write return to is in the original value of the register specified by vret_arg_reg.
-               This will be either RSI or RDI depending on whether this is a static call.
+               This will be either RSI, RDI (System V) or RCX, RDX (Windows) depending on whether this is a static call.
                Its location:
                We alloc 'framesize' bytes below RBP to save regs, info and rgctx. RSP = RBP - framesize
-               We store rdi at RSP + caller_reg_area_offset + slot_index_of (register) * 8.
+               We store RDI (System V), RCX (Windows) at RSP + caller_reg_area_offset + slot_index_of (register) * 8.
 
                address: RBP - framesize + caller_reg_area_offset + 8*slot
        */
index 05fb2cecac28d58dd2f4146a7bc60ec6d434763c..d9737fb8c52e948339da1868b78630a3a2005c34 100644 (file)
 #include "mini-amd64.h"
 #include "debugger-agent.h"
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-#include <malloc.h>
-#include <nacl/nacl_dyncode.h>
-#endif
-
 #define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
 
 #define IS_REX(inst) (((inst) >= 0x40) && ((inst) <= 0x4f))
@@ -52,7 +47,7 @@ mono_arch_get_unbox_trampoline (MonoMethod *m, gpointer addr)
 {
        guint8 *code, *start;
        GSList *unwind_ops;
-       int this_reg, size = NACL_SIZE (20, 32);
+       int this_reg, size = 20;
 
        MonoDomain *domain = mono_domain_get ();
 
@@ -68,8 +63,6 @@ mono_arch_get_unbox_trampoline (MonoMethod *m, gpointer addr)
        amd64_jump_reg (code, AMD64_RAX);
        g_assert ((code - start) < size);
 
-       nacl_domain_code_validate (domain, &start, size, &code);
-
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_UNBOX_TRAMPOLINE, m);
 
@@ -97,9 +90,9 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
 #else
        /* AOTed code could still have a non-32 bit address */
        if ((((guint64)addr) >> 32) == 0)
-               buf_len = NACL_SIZE (16, 32);
+               buf_len = 16;
        else
-               buf_len = NACL_SIZE (30, 32);
+               buf_len = 30;
 #endif
 
        start = code = (guint8 *)mono_domain_code_reserve (domain, buf_len);
@@ -110,7 +103,6 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
        amd64_jump_code (code, addr);
        g_assert ((code - start) < buf_len);
 
-       nacl_domain_code_validate (domain, &start, buf_len, &code);
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -133,7 +125,6 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
 void
 mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
 {
-#if defined(__default_codegen__)
        guint8 *code;
        guint8 buf [16];
        gboolean can_write = mono_breakpoint_clean_code (method_start, orig_code, 14, buf, sizeof (buf));
@@ -178,38 +169,6 @@ mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
                        VALGRIND_DISCARD_TRANSLATIONS (orig_code - 5, sizeof (gpointer));
                }
        }
-#elif defined(__native_client__)
-       /* These are essentially the same 2 cases as above, modified for NaCl*/
-
-       /* Target must be bundle-aligned */
-       g_assert (((guint32)addr & kNaClAlignmentMask) == 0);
-       /* Return target must be bundle-aligned */
-       g_assert (((guint32)orig_code & kNaClAlignmentMask) == 0);
-
-       if (orig_code[-5] == 0xe8) {
-               /* Direct call */
-               int ret;
-               gint32 offset = (gint32)addr - (gint32)orig_code;
-               guint8 buf[sizeof(gint32)];
-               *((gint32*)(buf)) = offset;
-               ret = nacl_dyncode_modify (orig_code - sizeof(gint32), buf, sizeof(gint32));
-               g_assert (ret == 0);
-       }
-
-       else if (is_nacl_call_reg_sequence (orig_code - 10) && orig_code[-16] == 0x41 && orig_code[-15] == 0xbb) {
-               int ret;
-               guint8 buf[sizeof(gint32)];
-               *((gint32 *)(buf)) = addr;
-               /* orig_code[-14] is the start of the immediate. */
-               ret = nacl_dyncode_modify (orig_code - 14, buf, sizeof(gint32));
-               g_assert (ret == 0);
-       }
-       else {
-               g_assert_not_reached ();
-       }
-
-       return;
-#endif
 }
 
 guint8*
@@ -238,7 +197,6 @@ mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *a
        gint32 disp;
        gpointer *plt_jump_table_entry;
 
-#if defined(__default_codegen__)
        /* A PLT entry: jmp *<DISP>(%rip) */
        g_assert (code [0] == 0xff);
        g_assert (code [1] == 0x25);
@@ -246,23 +204,6 @@ mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *a
        disp = *(gint32*)(code + 2);
 
        plt_jump_table_entry = (gpointer*)(code + 6 + disp);
-#elif defined(__native_client_codegen__)
-       /* A PLT entry:            */
-       /* mov <DISP>(%rip), %r11d */
-       /* nacljmp *%r11           */
-
-       /* Verify the 'mov' */
-       g_assert (code [0] == 0x45);
-       g_assert (code [1] == 0x8b);
-       g_assert (code [2] == 0x1d);
-
-       disp = *(gint32*)(code + 3);
-
-       /* 7 = 3 (mov opcode) + 4 (disp) */
-       /* This needs to resolve to the target of the RIP-relative offset */
-       plt_jump_table_entry = (gpointer*)(code + 7 + disp);
-
-#endif /* __native_client_codegen__ */
 
        InterlockedExchangePointer (plt_jump_table_entry, addr);
 }
@@ -284,11 +225,7 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
        gboolean has_caller;
        GSList *unwind_ops = NULL;
        MonoJumpInfo *ji = NULL;
-       const guint kMaxCodeSize = NACL_SIZE (630, 630*2);
-
-#if defined(__native_client_codegen__)
-       const guint kNaClTrampOffset = 17;
-#endif
+       const guint kMaxCodeSize = 630;
 
        if (tramp_type == MONO_TRAMPOLINE_JUMP || tramp_type == MONO_TRAMPOLINE_HANDLER_BLOCK_GUARD)
                has_caller = FALSE;
@@ -368,12 +305,8 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
 
        /* Compute the trampoline address from the return address */
        if (aot) {
-#if defined(__default_codegen__)
                /* 7 = length of call *<offset>(rip) */
                amd64_alu_reg_imm (code, X86_SUB, AMD64_R11, 7);
-#elif defined(__native_client_codegen__)
-               amd64_alu_reg_imm (code, X86_SUB, AMD64_R11, kNaClTrampOffset);
-#endif
        } else {
                /* 5 = length of amd64_call_membase () */
                amd64_alu_reg_imm (code, X86_SUB, AMD64_R11, 5);
@@ -417,7 +350,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                amd64_movsd_membase_reg (code, AMD64_RBP, saved_fpregs_offset + (i * sizeof(mgreg_t)), i);
 
        /* Check that the stack is aligned */
-#if defined(__default_codegen__)
        amd64_mov_reg_reg (code, AMD64_R11, AMD64_RSP, sizeof (mgreg_t));
        amd64_alu_reg_imm (code, X86_AND, AMD64_R11, 15);
        amd64_alu_reg_imm (code, X86_CMP, AMD64_R11, 0);
@@ -433,14 +365,12 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
        }
        mono_amd64_patch (br [0], code);
        //amd64_breakpoint (code);
-#endif
 
        if (tramp_type != MONO_TRAMPOLINE_HANDLER_BLOCK_GUARD) {
                /* Obtain the trampoline argument which is encoded in the instruction stream */
                if (aot) {
                        /* Load the GOT offset */
                        amd64_mov_reg_membase (code, AMD64_R11, AMD64_RBP, tramp_offset, sizeof(gpointer));
-#if defined(__default_codegen__)
                        /*
                         * r11 points to a call *<offset>(%rip) instruction, load the
                         * pc-relative offset from the instruction itself.
@@ -448,18 +378,12 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                        amd64_mov_reg_membase (code, AMD64_RAX, AMD64_R11, 3, 4);
                        /* 7 is the length of the call, 8 is the offset to the next got slot */
                        amd64_alu_reg_imm_size (code, X86_ADD, AMD64_RAX, 7 + sizeof (gpointer), sizeof(gpointer));
-#elif defined(__native_client_codegen__)
-                       /* The arg is hidden in a "push imm32" instruction, */
-                       /* add one to skip the opcode.                      */
-                       amd64_mov_reg_membase (code, AMD64_RAX, AMD64_R11, kNaClTrampOffset+1, 4);
-#endif
                        /* Compute the address of the GOT slot */
                        amd64_alu_reg_reg_size (code, X86_ADD, AMD64_R11, AMD64_RAX, sizeof(gpointer));
                        /* Load the value */
                        amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11, 0, sizeof(gpointer));
                } else {                        
                        amd64_mov_reg_membase (code, AMD64_R11, AMD64_RBP, tramp_offset, sizeof(gpointer));
-#if defined(__default_codegen__)
                        amd64_mov_reg_membase (code, AMD64_RAX, AMD64_R11, 5, 1);
                        amd64_widen_reg (code, AMD64_RAX, AMD64_RAX, TRUE, FALSE);
                        amd64_alu_reg_imm_size (code, X86_CMP, AMD64_RAX, 4, 1);
@@ -473,10 +397,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                        mono_amd64_patch (br [0], code);
                        amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11, 6, 8);
                        mono_amd64_patch (br [1], code);
-#elif defined(__native_client_codegen__)
-                       /* All args are 32-bit pointers in NaCl */
-                       amd64_mov_reg_membase (code, AMD64_R11, AMD64_R11, 6, 4);
-#endif
                }
                amd64_mov_membase_reg (code, AMD64_RBP, arg_offset, AMD64_R11, sizeof(gpointer));
        } else {
@@ -627,8 +547,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
 
        g_assert ((code - buf) <= kMaxCodeSize);
 
-       nacl_global_codeman_validate (&buf, kMaxCodeSize, &code);
-
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_HELPER, NULL);
 
@@ -648,7 +566,6 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
 
        tramp = mono_get_trampoline_code (tramp_type);
 
-#if defined(__default_codegen__)
        if ((((guint64)arg1) >> 32) == 0)
                size = 5 + 1 + 4;
        else
@@ -664,15 +581,6 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
                size += 16;
                code = buf = (guint8 *)mono_domain_code_reserve_align (domain, size, 1);
        }
-#elif defined(__native_client_codegen__)
-       size = 5 + 1 + 4;
-       /* Aligning the call site below could */
-       /* add up to kNaClAlignment-1 bytes   */
-       size += (kNaClAlignment-1);
-       size = NACL_BUNDLE_ALIGN_UP (size);
-       buf = mono_domain_code_reserve_align (domain, size, kNaClAlignment);
-       code = buf;
-#endif
 
        if (far_addr) {
                amd64_mov_reg_imm (code, AMD64_R11, tramp);
@@ -681,7 +589,6 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
                amd64_call_code (code, tramp);
        }
        /* The trampoline code will obtain the argument from the instruction stream */
-#if defined(__default_codegen__)
        if ((((guint64)arg1) >> 32) == 0) {
                *code = 0x4;
                *(guint32*)(code + 1) = (gint64)arg1;
@@ -691,20 +598,12 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
                *(guint64*)(code + 1) = (gint64)arg1;
                code += 9;
        }
-#elif defined(__native_client_codegen__)
-       /* For NaCl, all tramp args are 32-bit because they're pointers */
-       *code = 0x68; /* push imm32 */
-       *(guint32*)(code + 1) = (gint32)arg1;
-       code += 5;
-#endif
 
        g_assert ((code - buf) <= size);
 
        if (code_len)
                *code_len = size;
 
-       nacl_domain_code_validate(domain, &buf, size, &code);
-
        mono_arch_flush_icache (buf, size);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_SPECIFIC_TRAMPOLINE, mono_get_generic_trampoline_simple_name (tramp_type));
 
@@ -736,7 +635,7 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
                index -= size - 1;
        }
 
-       tramp_size = NACL_SIZE (64 + 8 * depth, 128 + 8 * depth);
+       tramp_size = 64 + 8 * depth;
 
        code = buf = (guint8 *)mono_global_codeman_reserve (tramp_size);
 
@@ -798,7 +697,6 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
                amd64_jump_code (code, tramp);
        }
 
-       nacl_global_codeman_validate (&buf, tramp_size, &code);
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -811,6 +709,41 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
        return buf;
 }
 
+gpointer
+mono_arch_create_general_rgctx_lazy_fetch_trampoline (MonoTrampInfo **info, gboolean aot)
+{
+       guint8 *code, *buf;
+       int tramp_size;
+       MonoJumpInfo *ji = NULL;
+       GSList *unwind_ops;
+
+       g_assert (aot);
+       tramp_size = 64;
+
+       code = buf = (guint8 *)mono_global_codeman_reserve (tramp_size);
+
+       unwind_ops = mono_arch_get_cie_program ();
+
+       // FIXME: Currently, we always go to the slow path.
+       /* This receives a <slot, trampoline> in the rgctx arg reg. */
+       /* Load trampoline addr */
+       amd64_mov_reg_membase (code, AMD64_R11, MONO_ARCH_RGCTX_REG, 8, 8);
+       /* move the rgctx pointer to the VTABLE register */
+       amd64_mov_reg_reg (code, MONO_ARCH_VTABLE_REG, AMD64_ARG_REG1, sizeof(gpointer));
+       /* Jump to the trampoline */
+       amd64_jump_reg (code, AMD64_R11);
+
+       mono_arch_flush_icache (buf, code - buf);
+       mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
+
+       g_assert (code - buf <= tramp_size);
+
+       if (info)
+               *info = mono_tramp_info_create ("rgctx_fetch_trampoline_general", buf, code - buf, ji, unwind_ops);
+
+       return buf;
+}
+
 void
 mono_arch_invalidate_method (MonoJitInfo *ji, void *func, gpointer func_arg)
 {
@@ -903,13 +836,7 @@ mono_arch_get_call_target (guint8 *code)
 guint32
 mono_arch_get_plt_info_offset (guint8 *plt_entry, mgreg_t *regs, guint8 *code)
 {
-#if defined(__native_client__) || defined(__native_client_codegen__)
-       /* 18 = 3 (mov opcode) + 4 (disp) + 10 (nacljmp) + 1 (push opcode) */
-       /* See aot-compiler.c arch_emit_plt_entry for details.             */
-       return *(guint32*)(plt_entry + 18);
-#else
        return *(guint32*)(plt_entry + 6);
-#endif
 }
 
 /*
index f84c5424a14c3c84b5d588868b74aca0738d0979..acc1dd839ff1f5ed644013141850e8925389b458 100644 (file)
@@ -23,7 +23,6 @@
 
 #define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
 
-
 #ifdef MONO_ARCH_GSHAREDVT_SUPPORTED
 
 static inline guint8*
@@ -36,9 +35,9 @@ emit_bx (guint8* code, int reg)
        return code;
 }
 
-
 gpointer
-mono_arm_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpointer *callee, gpointer mrgctx_reg)
+mono_arm_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpointer *callee, gpointer mrgctx_reg,
+                                                          double *caller_fregs, double *callee_fregs)
 {
        int i;
 
@@ -110,6 +109,66 @@ mono_arm_start_gsharedvt_call (GSharedVtCallInfo *info, gpointer *caller, gpoint
                }
        }
 
+       /* The slot based approach above is very complicated, use a nested switch instead for fp regs */
+       // FIXME: Use this for the other cases as well
+       if (info->have_fregs) {
+               CallInfo *caller_cinfo = info->caller_cinfo;
+               CallInfo *callee_cinfo = info->callee_cinfo;
+               int aindex;
+
+               for (aindex = 0; aindex < caller_cinfo->nargs; ++aindex) {
+                       ArgInfo *ainfo = &caller_cinfo->args [aindex];
+                       ArgInfo *ainfo2 = &callee_cinfo->args [aindex];
+
+                       switch (ainfo->storage) {
+                       case RegTypeFP: {
+                               switch (ainfo2->storage) {
+                               case RegTypeFP:
+                                       callee_fregs [ainfo2->reg / 2] = caller_fregs [ainfo->reg / 2];
+                                       break;
+                               case RegTypeGSharedVtInReg:
+                                       callee [ainfo2->reg] = &caller_fregs [ainfo->reg / 2];
+                                       break;
+                               case RegTypeGSharedVtOnStack: {
+                                       int sslot = ainfo2->offset / 4;
+                                       callee [sslot + 4] = &caller_fregs [ainfo->reg / 2];
+                                       break;
+                               }
+                               default:
+                                       g_assert_not_reached ();
+                                       break;
+                               }
+                               break;
+                       }
+                       case RegTypeGSharedVtInReg: {
+                               switch (ainfo2->storage) {
+                               case RegTypeFP: {
+                                       callee_fregs [ainfo2->reg / 2] = *(double*)caller [ainfo->reg];
+                                       break;
+                               }
+                               default:
+                                       break;
+                               }
+                               break;
+                       }
+                       case RegTypeGSharedVtOnStack: {
+                               switch (ainfo2->storage) {
+                               case RegTypeFP: {
+                                       int sslot = ainfo->offset / 4;
+                                       callee_fregs [ainfo2->reg / 2] = *(double*)caller [sslot + 4];
+                                       break;
+                               }
+                               default:
+                                       break;
+                               }
+                               break;
+                       }
+                       default:
+                               break;
+                       }
+               }
+       }
+
        if (info->vcall_offset != -1) {
                MonoObject *this_obj = caller [0];
 
@@ -138,10 +197,11 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        GSList *unwind_ops = NULL;
        MonoJumpInfo *ji = NULL;
        guint8 *br_out, *br [16], *br_ret [16];
-       int i, arg_reg, npushed, info_offset, mrgctx_offset, caller_reg_area_offset, callee_reg_area_offset;
+       int i, offset, arg_reg, npushed, info_offset, mrgctx_offset;
+       int caller_reg_area_offset, caller_freg_area_offset, callee_reg_area_offset, callee_freg_area_offset;
        int lr_offset, fp, br_ret_index, args_size;
 
-       buf_len = 512;
+       buf_len = 784;
        buf = code = mono_global_codeman_reserve (buf_len);
 
        arg_reg = ARMREG_R0;
@@ -160,10 +220,20 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_MOV_REG_REG (code, fp, ARMREG_SP);
        mono_add_unwind_op_def_cfa_reg (unwind_ops, code, buf, fp);
        /* Allocate stack frame */
-       ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 32);
-       info_offset = -4;
-       mrgctx_offset = -8;
-       callee_reg_area_offset = - (6 * 4);
+       ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 32 + (16 * sizeof (double)));
+       if (MONO_ARCH_FRAME_ALIGNMENT > 8)
+               ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, (MONO_ARCH_FRAME_ALIGNMENT - 8));
+       offset = 4;
+       info_offset = -offset;
+       offset += 4;
+       mrgctx_offset = -offset;
+       offset += 4 * 4;
+       callee_reg_area_offset = -offset;
+       offset += 8 * 8;
+       caller_freg_area_offset = -offset;
+       offset += 8 * 8;
+       callee_freg_area_offset = -offset;
+
        caller_reg_area_offset = cfa_offset - (npushed * sizeof (gpointer));
        lr_offset = 4;
        /* Save info struct which is in r0 */
@@ -173,8 +243,14 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        /* Allocate callee area */
        ARM_LDR_IMM (code, ARMREG_IP, arg_reg, MONO_STRUCT_OFFSET (GSharedVtCallInfo, stack_usage));
        ARM_SUB_REG_REG (code, ARMREG_SP, ARMREG_SP, ARMREG_IP);
-       /* Allocate callee register area just below the callee area so it can be accessed from start_gsharedvt_call using negative offsets */
+       /* Allocate callee register area just below the callee area so the slots are correct */
        ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 4 * sizeof (gpointer));
+       if (mono_arm_is_hard_float ()) {
+               /* Save caller fregs */
+               ARM_SUB_REG_IMM8 (code, ARMREG_IP, fp, -caller_freg_area_offset);
+               for (i = 0; i < 8; ++i)
+                       ARM_FSTD (code, i * 2, ARMREG_IP, (i * sizeof (double)));
+       }
 
        /*
         * The stack now looks like this:
@@ -187,8 +263,8 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        g_assert (mono_arm_thumb_supported ());
 
        /* Call start_gsharedvt_call () */
-       /* 4 arguments, needs 0 stack slot, need to clean it up after the call */
-       args_size = 0 * sizeof (gpointer);
+       /* 6 arguments, needs 2 stack slot, need to clean it up after the call */
+       args_size = 2 * sizeof (gpointer);
        ARM_SUB_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, args_size);
        /* arg1 == info */
        ARM_LDR_IMM (code, ARMREG_R0, fp, info_offset);
@@ -198,6 +274,12 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_ADD_REG_IMM8 (code, ARMREG_R2, ARMREG_SP, args_size);
        /* arg4 == mrgctx reg */
        ARM_LDR_IMM (code, ARMREG_R3, fp, mrgctx_offset);
+       /* arg5 == caller freg area */
+       ARM_SUB_REG_IMM8 (code, ARMREG_IP, fp, -caller_freg_area_offset);
+       ARM_STR_IMM (code, ARMREG_IP, ARMREG_SP, 0);
+       /* arg6 == callee freg area */
+       ARM_SUB_REG_IMM8 (code, ARMREG_IP, fp, -callee_freg_area_offset);
+       ARM_STR_IMM (code, ARMREG_IP, ARMREG_SP, 4);
        /* Make the call */
        if (aot) {
                ji = mono_patch_info_list_prepend (ji, code - buf, MONO_PATCH_INFO_JIT_ICALL_ADDR, "mono_arm_start_gsharedvt_call");
@@ -222,6 +304,12 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_MOV_REG_REG (code, ARMREG_IP, ARMREG_R0);
        /* Load argument registers */
        ARM_LDM (code, ARMREG_SP, (1 << ARMREG_R0) | (1 << ARMREG_R1) | (1 << ARMREG_R2) | (1 << ARMREG_R3));
+       if (mono_arm_is_hard_float ()) {
+               /* Load argument fregs */
+               ARM_SUB_REG_IMM8 (code, ARMREG_LR, fp, -callee_freg_area_offset);
+               for (i = 0; i < 8; ++i)
+                       ARM_FLDD (code, i * 2, ARMREG_LR, (i * sizeof (double)));
+       }
        /* Pop callee register area */
        ARM_ADD_REG_IMM8 (code, ARMREG_SP, ARMREG_SP, 4 * sizeof (gpointer));
        /* Load rgctx */
@@ -285,6 +373,12 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_CMP_REG_IMM8 (code, ARMREG_IP, GSHAREDVT_RET_U2);
        br [5] = code;
        ARM_B_COND (code, ARMCOND_EQ, 0);
+       ARM_CMP_REG_IMM8 (code, ARMREG_IP, GSHAREDVT_RET_VFP_R4);
+       br [6] = code;
+       ARM_B_COND (code, ARMCOND_EQ, 0);
+       ARM_CMP_REG_IMM8 (code, ARMREG_IP, GSHAREDVT_RET_VFP_R8);
+       br [7] = code;
+       ARM_B_COND (code, ARMCOND_EQ, 0);
        br_ret [br_ret_index ++] = code;
        ARM_B (code, 0);
 
@@ -319,6 +413,18 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_LDRH_IMM (code, ARMREG_R0, ARMREG_LR, 0);
        br_ret [br_ret_index ++] = code;
        ARM_B (code, 0);
+       /* R4 case */
+       arm_patch (br [6], code);
+       ARM_FLDS (code, ARM_VFP_D0, ARMREG_LR, 0);
+       code += 4;
+       br_ret [br_ret_index ++] = code;
+       ARM_B (code, 0);
+       /* R8 case */
+       arm_patch (br [7], code);
+       ARM_FLDD (code, ARM_VFP_D0, ARMREG_LR, 0);
+       code += 4;
+       br_ret [br_ret_index ++] = code;
+       ARM_B (code, 0);
 
        /* OUT CASE */
        arm_patch (br_out, code);
@@ -382,6 +488,42 @@ mono_arch_get_gsharedvt_trampoline (MonoTrampInfo **info, gboolean aot)
        ARM_B (code, 0);
        arm_patch (br [0], code);
 
+       ARM_CMP_REG_IMM8 (code, ARMREG_IP, GSHAREDVT_RET_VFP_R4);
+       br [0] = code;
+       ARM_B_COND (code, ARMCOND_NE, 0);
+
+       /* OUT R4 case */
+       /* Load vtype ret addr from the caller arg regs */
+       ARM_LDR_IMM (code, ARMREG_IP, fp, info_offset);
+       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, MONO_STRUCT_OFFSET (GSharedVtCallInfo, vret_arg_reg));
+       ARM_SHL_IMM (code, ARMREG_IP, ARMREG_IP, 2);
+       ARM_ADD_REG_REG (code, ARMREG_IP, ARMREG_IP, fp);
+       ARM_ADD_REG_IMM8 (code, ARMREG_IP, ARMREG_IP, caller_reg_area_offset);
+       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, 0);
+       /* Save the return value to the buffer pointed to by the vret addr */
+       ARM_FSTS (code, ARM_VFP_D0, ARMREG_IP, 0);
+       br_ret [br_ret_index ++] = code;
+       ARM_B (code, 0);
+       arm_patch (br [0], code);
+
+       ARM_CMP_REG_IMM8 (code, ARMREG_IP, GSHAREDVT_RET_VFP_R8);
+       br [0] = code;
+       ARM_B_COND (code, ARMCOND_NE, 0);
+
+       /* OUT R8 case */
+       /* Load vtype ret addr from the caller arg regs */
+       ARM_LDR_IMM (code, ARMREG_IP, fp, info_offset);
+       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, MONO_STRUCT_OFFSET (GSharedVtCallInfo, vret_arg_reg));
+       ARM_SHL_IMM (code, ARMREG_IP, ARMREG_IP, 2);
+       ARM_ADD_REG_REG (code, ARMREG_IP, ARMREG_IP, fp);
+       ARM_ADD_REG_IMM8 (code, ARMREG_IP, ARMREG_IP, caller_reg_area_offset);
+       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, 0);
+       /* Save the return value to the buffer pointed to by the vret addr */
+       ARM_FSTD (code, ARM_VFP_D0, ARMREG_IP, 0);
+       br_ret [br_ret_index ++] = code;
+       ARM_B (code, 0);
+       arm_patch (br [0], code);
+
        /* OUT other cases */
        br_ret [br_ret_index ++] = code;
        ARM_B (code, 0);
index 5ff7bbfdfc8309b5105e0052c8b39dc1199e92b4..d24ddf4a72c1a259902f130e133db595ff606c9d 100644 (file)
 
 #define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
 
-#ifdef USE_JUMP_TABLES
-
-static guint16
-decode_imm16 (guint32 insn)
-{
-       return (((insn >> 16) & 0xf) << 12) | (insn & 0xfff);
-}
-
-#define INSN_MASK 0xff00000
-#define MOVW_MASK ((3 << 24) | (0 << 20))
-#define MOVT_MASK ((3 << 24) | (4 << 20))
-
-gpointer*
-mono_arch_jumptable_entry_from_code (guint8 *code)
-{
-       guint32 insn1 = ((guint32*)code) [0];
-       guint32 insn2 = ((guint32*)code) [1];
-
-       if (((insn1 & INSN_MASK) == MOVW_MASK) &&
-           ((insn2 & INSN_MASK) == MOVT_MASK) ) {
-               guint32 imm_lo = decode_imm16 (insn1);
-               guint32 imm_hi = decode_imm16 (insn2);
-               return (gpointer*) GUINT_TO_POINTER (imm_lo | (imm_hi << 16));
-       } else {
-               g_assert_not_reached ();
-               return NULL;
-       }
-}
-
-#undef INSN_MASK
-#undef MOVW_MASK
-#undef MOVT_MASK
-
-void
-mono_arch_patch_callsite (guint8 *method_start, guint8 *code_ptr, guint8 *addr)
-{
-       gpointer *jte;
-       /*
-        * code_ptr is 4 instructions after MOVW/MOVT used to address
-        * jumptable entry.
-        */
-       jte = mono_jumptable_get_entry (code_ptr - 16);
-       g_assert ( jte != NULL);
-       *jte = addr;
-}
-#else
 void
 mono_arch_patch_callsite (guint8 *method_start, guint8 *code_ptr, guint8 *addr)
 {
@@ -101,7 +55,6 @@ mono_arch_patch_callsite (guint8 *method_start, guint8 *code_ptr, guint8 *addr)
 
        g_assert_not_reached ();
 }
-#endif
 
 void
 mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *addr)
@@ -135,7 +88,6 @@ mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *a
 
 #define arm_is_imm12(v) ((int)(v) > -4096 && (int)(v) < 4096)
 
-#ifndef USE_JUMP_TABLES
 /*
  * Return the instruction to jump from code to target, 0 if not
  * reachable with a single instruction
@@ -155,7 +107,6 @@ branch_for_target_reachable (guint8 *branch, guint8 *target)
        }
        return 0;
 }
-#endif
 
 static inline guint8*
 emit_bx (guint8* code, int reg)
@@ -182,21 +133,13 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
 {
        char *tramp_name;
        guint8 *buf, *code = NULL;
-#ifdef USE_JUMP_TABLES
-       gpointer *load_get_lmf_addr = NULL, *load_trampoline = NULL;
-#else
        guint8 *load_get_lmf_addr  = NULL, *load_trampoline  = NULL;
        gpointer *constants;
-#endif
        int i, cfa_offset, regsave_size, lr_offset;
        GSList *unwind_ops = NULL;
        MonoJumpInfo *ji = NULL;
        int buf_len;
 
-#ifdef USE_JUMP_TABLES
-       g_assert (!aot);
-#endif
-
        /* Now we'll create in 'buf' the ARM trampoline code. This
         is the trampoline code common to all methods  */
 
@@ -272,13 +215,8 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                code += 4;
                ARM_LDR_REG_REG (code, ARMREG_R0, ARMREG_PC, ARMREG_R0);
        } else {
-#ifdef USE_JUMP_TABLES
-                load_get_lmf_addr = mono_jumptable_add_entry ();
-                code = mono_arm_load_jumptable_entry (code, load_get_lmf_addr, ARMREG_R0);
-#else
                load_get_lmf_addr = code;
                code += 4;
-#endif
        }
        ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
        code = emit_bx (code, ARMREG_R0);
@@ -356,13 +294,8 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                code += 4;
                ARM_LDR_REG_REG (code, ARMREG_IP, ARMREG_PC, ARMREG_IP);
        } else {
-#ifdef USE_JUMP_TABLES
-               load_trampoline = mono_jumptable_add_entry ();
-               code = mono_arm_load_jumptable_entry (code, load_trampoline, ARMREG_IP);
-#else
                load_trampoline = code;
                code += 4;
-#endif
        }
 
        ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
@@ -388,16 +321,10 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                code += 4;
                ARM_LDR_REG_REG (code, ARMREG_IP, ARMREG_PC, ARMREG_IP);
        } else {
-#ifdef USE_JUMP_TABLES
-               gpointer *jte = mono_jumptable_add_entry ();
-               code = mono_arm_load_jumptable_entry (code, jte, ARMREG_IP);
-               jte [0] = mono_interruption_checkpoint_from_trampoline;
-#else
                ARM_LDR_IMM (code, ARMREG_IP, ARMREG_PC, 0);
                ARM_B (code, 0);
                *(gpointer*)code = mono_interruption_checkpoint_from_trampoline;
                code += 4;
-#endif
        }
        ARM_MOV_REG_REG (code, ARMREG_LR, ARMREG_PC);
        code = emit_bx (code, ARMREG_IP);
@@ -442,10 +369,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
        else
                code = emit_bx (code, ARMREG_IP);
 
-#ifdef USE_JUMP_TABLES
-       load_get_lmf_addr [0] = mono_get_lmf_addr;
-       load_trampoline [0] = (gpointer)mono_get_trampoline_func (tramp_type);
-#else
        constants = (gpointer*)code;
        constants [0] = mono_get_lmf_addr;
        constants [1] = (gpointer)mono_get_trampoline_func (tramp_type);
@@ -457,7 +380,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
        }
 
        code += 8;
-#endif
 
        /* Flush instruction cache, since we've generated code */
        mono_arch_flush_icache (buf, code - buf);
@@ -481,47 +403,24 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
 {
        guint8 *code, *buf, *tramp;
        gpointer *constants;
-#ifndef USE_JUMP_TABLES
        guint32 short_branch = FALSE;
-#endif
        guint32 size = SPEC_TRAMP_SIZE;
 
        tramp = mono_get_trampoline_code (tramp_type);
 
        if (domain) {
                mono_domain_lock (domain);
-#ifdef USE_JUMP_TABLES
-               code = buf = mono_domain_code_reserve_align (domain, size, 4);
-#else
                code = buf = mono_domain_code_reserve_align (domain, size, 4);
                if ((short_branch = branch_for_target_reachable (code + 4, tramp))) {
                        size = 12;
                        mono_domain_code_commit (domain, code, SPEC_TRAMP_SIZE, size);
-       }
-#endif
+               }
                mono_domain_unlock (domain);
        } else {
                code = buf = mono_global_codeman_reserve (size);
                short_branch = FALSE;
        }
 
-#ifdef USE_JUMP_TABLES
-       /* For jumptables case we always generate the same code for trampolines,
-        * namely
-        *   push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, lr}
-        *   movw lr, lo(jte)
-        *   movt lr, hi(jte)
-        *   ldr r1, [lr + 4]
-        *   bx r1
-        */
-       ARM_PUSH (code, 0x5fff);
-       constants = mono_jumptable_add_entries (2);
-       code = mono_arm_load_jumptable_entry_addr (code, constants, ARMREG_LR);
-       ARM_LDR_IMM (code, ARMREG_R1, ARMREG_LR, 4);
-       code = emit_bx (code, ARMREG_R1);
-       constants [0] = arg1;
-       constants [1] = tramp;
-#else
        /* we could reduce this to 12 bytes if tramp is within reach:
         * ARM_PUSH ()
         * ARM_BL ()
@@ -551,7 +450,6 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
                constants [1] = tramp;
                code += 8;
        }
-#endif
 
        /* Flush instruction cache, since we've generated code */
        mono_arch_flush_icache (buf, code - buf);
@@ -580,30 +478,17 @@ mono_arch_get_unbox_trampoline (MonoMethod *m, gpointer addr)
        guint8 *code, *start;
        MonoDomain *domain = mono_domain_get ();
        GSList *unwind_ops;
-#ifdef USE_JUMP_TABLES
-       gpointer *jte;
-       guint32 size = 20;
-#else
-        guint32 size = 16;
-#endif
+       guint32 size = 16;
 
        start = code = mono_domain_code_reserve (domain, size);
 
        unwind_ops = mono_arch_get_cie_program ();
 
-#ifdef USE_JUMP_TABLES
-       jte = mono_jumptable_add_entry ();
-       code = mono_arm_load_jumptable_entry (code, jte, ARMREG_IP);
-       ARM_ADD_REG_IMM8 (code, ARMREG_R0, ARMREG_R0, sizeof (MonoObject));
-       code = emit_bx (code, ARMREG_IP);
-       jte [0] = addr;
-#else
        ARM_LDR_IMM (code, ARMREG_IP, ARMREG_PC, 4);
        ARM_ADD_REG_IMM8 (code, ARMREG_R0, ARMREG_R0, sizeof (MonoObject));
        code = emit_bx (code, ARMREG_IP);
        *(guint32*)code = (guint32)addr;
        code += 4;
-#endif
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_UNBOX_TRAMPOLINE, m);
        g_assert ((code - start) <= size);
@@ -620,34 +505,19 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
 {
        guint8 *code, *start;
        GSList *unwind_ops;
-#ifdef USE_JUMP_TABLES
-       int buf_len = 20;
-       gpointer *jte;
-#else
        int buf_len = 16;
-#endif
        MonoDomain *domain = mono_domain_get ();
 
        start = code = mono_domain_code_reserve (domain, buf_len);
 
        unwind_ops = mono_arch_get_cie_program ();
 
-#ifdef USE_JUMP_TABLES
-       jte = mono_jumptable_add_entries (2);
-       code = mono_arm_load_jumptable_entry_addr (code, jte, ARMREG_IP);
-       ARM_LDR_IMM (code, MONO_ARCH_RGCTX_REG, ARMREG_IP, 0);
-       ARM_LDR_IMM (code, ARMREG_IP, ARMREG_IP, 4);
-       ARM_BX (code, ARMREG_IP);
-       jte [0] = mrgctx;
-       jte [1] = addr;
-#else
        ARM_LDR_IMM (code, MONO_ARCH_RGCTX_REG, ARMREG_PC, 0);
        ARM_LDR_IMM (code, ARMREG_PC, ARMREG_PC, 0);
        *(guint32*)code = (guint32)mrgctx;
        code += 4;
        *(guint32*)code = (guint32)addr;
        code += 4;
-#endif
 
        g_assert ((code - start) <= buf_len);
 
@@ -672,9 +542,6 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
        gboolean mrgctx;
        MonoJumpInfo *ji = NULL;
        GSList *unwind_ops = NULL;
-#ifdef USE_JUMP_TABLES
-       gpointer *jte;
-#endif
 
        mrgctx = MONO_RGCTX_SLOT_IS_MRGCTX (slot);
        index = MONO_RGCTX_SLOT_INDEX (slot);
@@ -762,17 +629,10 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
                tramp = mono_arch_create_specific_trampoline (GUINT_TO_POINTER (slot), MONO_TRAMPOLINE_RGCTX_LAZY_FETCH, mono_get_root_domain (), &code_len);
 
                /* Jump to the actual trampoline */
-#ifdef USE_JUMP_TABLES
-               jte = mono_jumptable_add_entry ();
-               jte [0] = tramp;
-               code = mono_arm_load_jumptable_entry (code, jte, ARMREG_R1);
-               code = emit_bx (code, ARMREG_R1);
-#else
                ARM_LDR_IMM (code, ARMREG_R1, ARMREG_PC, 0); /* temp reg */
                code = emit_bx (code, ARMREG_R1);
                *(gpointer*)code = tramp;
                code += 4;
-#endif
        }
 
        mono_arch_flush_icache (buf, code - buf);
@@ -919,13 +779,6 @@ mono_arch_create_sdb_trampoline (gboolean single_step, MonoTrampInfo **info, gbo
 
        /* call */
        // FIXME: AOT
-#ifdef USE_JUMP_TABLES
-       {
-               gpointer *jte = mono_jumptable_add_entry ();
-               code = mono_arm_load_jumptable_entry (code, jte, ARMREG_IP);
-               jte [0] = function;
-       }
-#else
        ARM_LDR_IMM (code, ARMREG_IP, ARMREG_PC, 0);
        ARM_B (code, 0);
        if (single_step)
@@ -933,7 +786,6 @@ mono_arch_create_sdb_trampoline (gboolean single_step, MonoTrampInfo **info, gbo
        else
                *(gpointer*)code = debugger_agent_breakpoint_from_context;
        code += 4;
-#endif
        ARM_BLX_REG (code, ARMREG_IP);
 
        /* we're back; save ctx.eip and ctx.esp into the corresponding regs slots. */
@@ -1116,7 +968,6 @@ mono_arch_get_gsharedvt_arg_trampoline (MonoDomain *domain, gpointer arg, gpoint
 
        g_assert ((code - buf) <= buf_len);
 
-       nacl_domain_code_validate (domain, &buf, buf_len, &code);
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
index dd560843018d8a2a3a59b8917eb25aada8874680..017fe2f84e38edbcb6724c6fad022712538cfe60 100644 (file)
@@ -43,7 +43,7 @@ gpointer
 mono_arch_get_unbox_trampoline (MonoMethod *m, gpointer addr)
 {
        guint8 *code, *start;
-       int this_pos = 4, size = NACL_SIZE(16, 32);
+       int this_pos = 4, size = 16;
        MonoDomain *domain = mono_domain_get ();
        GSList *unwind_ops;
 
@@ -55,7 +55,6 @@ mono_arch_get_unbox_trampoline (MonoMethod *m, gpointer addr)
        x86_jump_code (code, addr);
        g_assert ((code - start) < size);
 
-       nacl_domain_code_validate (domain, &start, size, &code);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_UNBOX_TRAMPOLINE, m);
 
        mono_tramp_info_register (mono_tramp_info_create (NULL, start, code - start, NULL, unwind_ops), domain);
@@ -72,7 +71,7 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
 
        MonoDomain *domain = mono_domain_get ();
 
-       buf_len = NACL_SIZE (10, 32);
+       buf_len = 10;
 
        start = code = mono_domain_code_reserve (domain, buf_len);
 
@@ -82,7 +81,6 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
        x86_jump_code (code, addr);
        g_assert ((code - start) <= buf_len);
 
-       nacl_domain_code_validate (domain, &start, buf_len, &code);
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -94,7 +92,6 @@ mono_arch_get_static_rgctx_trampoline (MonoMethod *m, MonoMethodRuntimeGenericCo
 void
 mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
 {
-#if defined(__default_codegen__)
        guint8 *code;
        guint8 buf [8];
        gboolean can_write = mono_breakpoint_clean_code (method_start, orig_code, 8, buf, sizeof (buf));
@@ -126,23 +123,6 @@ mono_arch_patch_callsite (guint8 *method_start, guint8 *orig_code, guint8 *addr)
                                code [4], code [5], code [6]);
                g_assert_not_reached ();
        }
-#elif defined(__native_client__)
-       /* Target must be bundle-aligned */
-       g_assert (((guint32)addr & kNaClAlignmentMask) == 0);
-
-       /* 0xe8 = call <DISP>, 0xe9 = jump <DISP> */
-       if ((orig_code [-5] == 0xe8) || orig_code [-6] == 0xe9) {
-               int ret;
-               gint32 offset = (gint32)addr - (gint32)orig_code;
-               guint8 buf[sizeof(gint32)];
-               *((gint32*)(buf)) = offset;
-               ret = nacl_dyncode_modify (orig_code - sizeof(gint32), buf, sizeof(gint32));
-               g_assert (ret == 0);
-       } else {
-               printf ("Invalid trampoline sequence %p: %02x %02x %02x %02x %02x\n", orig_code, orig_code [-5], orig_code [-4], orig_code [-3], orig_code [-2], orig_code[-1]);
-               g_assert_not_reached ();
-       }
-#endif
 }
 
 void
@@ -152,23 +132,11 @@ mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *a
 
        /* Patch the jump table entry used by the plt entry */
 
-#if defined(__native_client_codegen__) || defined(__native_client__)
-       /* for both compiler and runtime      */
-       /* A PLT entry:                       */
-       /*        mov <DISP>(%ebx), %ecx      */
-       /*        and 0xffffffe0, %ecx        */
-       /*        jmp *%ecx                   */
-       g_assert (code [0] == 0x8b);
-       g_assert (code [1] == 0x8b);
-
-       offset = *(guint32*)(code + 2);
-#elif defined(__default_codegen__)
        /* A PLT entry: jmp *<DISP>(%ebx) */
        g_assert (code [0] == 0xff);
        g_assert (code [1] == 0xa3);
 
        offset = *(guint32*)(code + 2);
-#endif  /* __native_client_codegen__ */
        if (!got)
                got = (gpointer*)(gsize) regs [MONO_ARCH_GOT_REG];
        *(guint8**)((guint8*)got + offset) = addr;
@@ -177,7 +145,7 @@ mono_arch_patch_plt_entry (guint8 *code, gpointer *got, mgreg_t *regs, guint8 *a
 static gpointer
 get_vcall_slot (guint8 *code, mgreg_t *regs, int *displacement)
 {
-       const int kBufSize = NACL_SIZE (8, 16);
+       const int kBufSize = 8;
        guint8 buf [64];
        guint8 reg = 0;
        gint32 disp = 0;
@@ -190,15 +158,6 @@ get_vcall_slot (guint8 *code, mgreg_t *regs, int *displacement)
        if ((code [0] == 0xff) && ((code [1] & 0x18) == 0x10) && ((code [1] >> 6) == 2)) {
                reg = code [1] & 0x07;
                disp = *((gint32*)(code + 2));
-#if defined(__native_client_codegen__) || defined(__native_client__)
-       } else if ((code[1] == 0x83) && (code[2] == 0xe1) && (code[4] == 0xff) &&
-                          (code[5] == 0xd1) && (code[-5] == 0x8b)) {
-               disp = *((gint32*)(code - 3));
-               reg = code[-4] & 0x07;
-       } else if ((code[-2] == 0x8b) && (code[1] == 0x83) && (code[4] == 0xff)) {
-               reg = code[-1] & 0x07;
-               disp = (signed char)code[0];
-#endif
        } else {
                g_assert_not_reached ();
                return NULL;
@@ -468,7 +427,6 @@ mono_arch_create_generic_trampoline (MonoTrampolineType tramp_type, MonoTrampInf
                }
        }
 
-       nacl_global_codeman_validate (&buf, 256, &code);
        g_assert ((code - buf) <= 256);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_HELPER, NULL);
 
@@ -488,14 +446,12 @@ mono_arch_create_specific_trampoline (gpointer arg1, MonoTrampolineType tramp_ty
        
        tramp = mono_get_trampoline_code (tramp_type);
 
-       code = buf = mono_domain_code_reserve_align (domain, TRAMPOLINE_SIZE, NACL_SIZE (4, kNaClAlignment));
+       code = buf = mono_domain_code_reserve_align (domain, TRAMPOLINE_SIZE, 4);
 
        x86_push_imm (buf, arg1);
        x86_jump_code (buf, tramp);
        g_assert ((buf - code) <= TRAMPOLINE_SIZE);
 
-       nacl_domain_code_validate (domain, &code, NACL_SIZE (4, kNaClAlignment), &buf);
-
        mono_arch_flush_icache (code, buf - code);
        mono_profiler_code_buffer_new (code, buf - code, MONO_PROFILER_CODE_BUFFER_SPECIFIC_TRAMPOLINE, mono_get_generic_trampoline_simple_name (tramp_type));
 
@@ -532,12 +488,7 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
                index -= size - 1;
        }
 
-#if defined(__default_codegen__)
        tramp_size = (aot ? 64 : 36) + 6 * depth;
-#elif defined(__native_client_codegen__)
-       tramp_size = (aot ? 64 : 36) + 2 * kNaClAlignment +
-         6 * (depth + kNaClAlignment);
-#endif
 
        code = buf = mono_global_codeman_reserve (tramp_size);
 
@@ -595,7 +546,6 @@ mono_arch_create_rgctx_lazy_fetch_trampoline (guint32 slot, MonoTrampInfo **info
                x86_jump_code (code, tramp);
        }
 
-       nacl_global_codeman_validate (&buf, tramp_size, &code);
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -639,7 +589,6 @@ mono_arch_create_general_rgctx_lazy_fetch_trampoline (MonoTrampInfo **info, gboo
 
        x86_jump_reg (code, X86_EAX);
 
-       nacl_global_codeman_validate (&buf, tramp_size, &code);
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
@@ -715,8 +664,6 @@ mono_arch_create_handler_block_trampoline (MonoTrampInfo **info, gboolean aot)
        mono_add_unwind_op_def_cfa_offset (unwind_ops, code, buf, cfa_offset);
        x86_jump_code (code, tramp);
 
-       nacl_global_codeman_validate (&buf, tramp_size, &code);
-
        mono_arch_flush_icache (buf, code - buf);
        mono_profiler_code_buffer_new (buf, code - buf, MONO_PROFILER_CODE_BUFFER_HELPER, NULL);
        g_assert (code - buf <= tramp_size);
@@ -742,7 +689,7 @@ mono_arch_get_call_target (guint8 *code)
 guint32
 mono_arch_get_plt_info_offset (guint8 *plt_entry, mgreg_t *regs, guint8 *code)
 {
-       return *(guint32*)(plt_entry + NACL_SIZE (6, 12));
+       return *(guint32*)(plt_entry + 6);
 }
 
 /*
@@ -768,7 +715,6 @@ mono_arch_get_gsharedvt_arg_trampoline (MonoDomain *domain, gpointer arg, gpoint
        x86_jump_code (code, addr);
        g_assert ((code - start) <= buf_len);
 
-       nacl_domain_code_validate (domain, &start, buf_len, &code);
        mono_arch_flush_icache (start, code - start);
        mono_profiler_code_buffer_new (start, code - start, MONO_PROFILER_CODE_BUFFER_GENERICS_TRAMPOLINE, NULL);
 
index 6ae3d2556e90c46cd2cba6631b4c60cb4814d5f1..b215a3091c3c87d3da5aee213d6421f9fc3ac585 100644 (file)
@@ -5,7 +5,6 @@ Z_LIBS=
 endif
 
 AM_CPPFLAGS = \
-       -fexceptions -DMONO_USE_EXC_TABLES      \
        -DSUPPRESSION_DIR=\""$(datadir)/mono-$(API_VER)/mono/profiler"\"        \
        -I$(top_srcdir)         \
        $(GLIB_CFLAGS)
@@ -15,77 +14,83 @@ if !DISABLE_LIBRARIES
 if !DISABLE_PROFILER
 bin_PROGRAMS = mprof-report
 
+if !BITCODE
+prof_shlibs = \
+       libmono-profiler-aot.la \
+       libmono-profiler-iomap.la \
+       libmono-profiler-log.la
+endif
+
 if HAVE_VTUNE
-vtune_lib = libmono-profiler-vtune.la
+vtune_stlibs = libmono-profiler-vtune-static.la
+if !BITCODE
+vtune_shlibs = libmono-profiler-vtune.la
+endif
 endif
 
-lib_LTLIBRARIES = libmono-profiler-aot.la libmono-profiler-iomap.la libmono-profiler-log.la libmono-profiler-log-static.la $(vtune_lib)
+lib_LTLIBRARIES = \
+       $(prof_shlibs) \
+       libmono-profiler-aot-static.la \
+       libmono-profiler-iomap-static.la \
+       libmono-profiler-log-static.la \
+       $(vtune_shlibs) \
+       $(vtune_stlibs)
+
+suppressiondir = $(datadir)/mono-$(API_VER)/mono/profiler
+suppression_DATA = mono-profiler-log.suppression
 
 if PLATFORM_DARWIN
-if BITCODE
-libmono_profiler_log_la_LDFLAGS = -no-undefined
-else
-libmono_profiler_log_la_LDFLAGS = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
-endif
+prof_ldflags = -Wl,-undefined -Wl,suppress -Wl,-flat_namespace
 endif
+
 if PLATFORM_ANDROID
-libmono_profiler_log_la_LDFLAGS = -avoid-version
-endif
-endif
-endif
+prof_ldflags = -avoid-version
 endif
 
-if HAVE_OPROFILE
-# Do something that uses OPROFILE_CFLAGS and OPROFILE_LIBS
+# FIXME fix the profiler tests to work with coop.
+if !ENABLE_COOP
+if !NACL_CODEGEN
+check_targets = testlog
+endif
 endif
 
-if SUPPORT_BOEHM
-if DISABLE_EXECUTABLES
-LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
-else
-if !SHARED_MONO
-static_libs=   \
-       $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
-       $(top_builddir)/mono/io-layer/libwapi.la        \
-       $(top_builddir)/mono/utils/libmonoutils.la \
-       $(GLIB_LIBS) $(LIBICONV) \
-       $(LIBGC_STATIC_LIBS)
-
-LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
-else
-LIBMONO=$(top_builddir)/mono/mini/$(LIBMONO_LA)
 endif
 endif
-else
-LIBMONO=$(top_builddir)/mono/mini/libmonosgen-$(API_VER).la
 endif
 
+# The log profiler uses eglib functions, so it needs to be linked against
+# libeglib in shared mode, but not in static mode, since that would
+# leads to duplicate symbols when it is linked into an app which
+# also uses eglib (e.g. the runtime). Automake doesn't support this
+# functionality, so create a separate static version of the library.
+
 libmono_profiler_aot_la_SOURCES = mono-profiler-aot.c
 libmono_profiler_aot_la_LIBADD = $(GLIB_LIBS) $(LIBICONV)
-if BITCODE
-libmono_profiler_aot_la_LDFLAGS = -no-undefined
-endif
+libmono_profiler_aot_la_LDFLAGS = $(prof_ldflags)
+libmono_profiler_aot_static_la_SOURCES = mono-profiler-aot.c
+libmono_profiler_aot_static_la_LDFLAGS = -static
+
 libmono_profiler_iomap_la_SOURCES = mono-profiler-iomap.c
 libmono_profiler_iomap_la_LIBADD = $(GLIB_LIBS) $(LIBICONV)
-if BITCODE
-libmono_profiler_iomap_la_LDFLAGS = -no-undefined
-endif
+libmono_profiler_iomap_la_LDFLAGS = $(prof_ldflags)
+libmono_profiler_iomap_static_la_SOURCES = mono-profiler-iomap.c
+libmono_profiler_iomap_static_la_LDFLAGS = -static
+
 libmono_profiler_log_la_SOURCES = proflog.c
 libmono_profiler_log_la_LIBADD = $(GLIB_LIBS) $(Z_LIBS)
+libmono_profiler_log_la_LDFLAGS = $(prof_ldflags)
+libmono_profiler_log_static_la_SOURCES = proflog.c
+libmono_profiler_log_static_la_LDFLAGS = -static
+
 if HAVE_VTUNE
 libmono_profiler_vtune_la_SOURCES = mono-profiler-vtune.c
 libmono_profiler_vtune_la_CFLAGS = $(VTUNE_CFLAGS)
 libmono_profiler_vtune_la_LIBADD = $(VTUNE_LIBS) $(GLIB_LIBS) $(LIBICONV)
+libmono_profiler_vtune_la_LDFLAGS = $(prof_ldflags)
+libmono_profiler_vtune_static_la_SOURCES = mono-profiler-vtune.c
+libmono_profiler_vtune_static_la_LDFLAGS = -static
 endif
 
-# The log profile uses eglib functions, so it needs to be linked against
-# libeglib in shared mode, but not in static mode, since that would
-# leads to duplicate symbols when it is linked into an app which
-# also uses eglib (e.g. the runtime). Automake doesn't support this
-# functionality, so create a separate static version of the library.
-libmono_profiler_log_static_la_SOURCES = proflog.c
-libmono_profiler_log_static_la_LDFLAGS = -static
-
 mprof_report_SOURCES = decode.c
 mprof_report_LDADD = $(Z_LIBS) $(GLIB_LIBS) $(LIBICONV)
 
@@ -106,14 +111,7 @@ MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -nowarn:0162 -now
 testlog: $(PLOG_TESTS)
        $(with_mono_path) perl $(srcdir)/ptestrunner.pl $(top_builddir)
 
-if NACL_CODEGEN
-check-local:
-else
-check-local: testlog
-endif
-
-suppressiondir = $(datadir)/mono-$(API_VER)/mono/profiler
-suppression_DATA = mono-profiler-log.suppression
+check-local: $(check_targets)
 
 EXTRA_DIST=utils.c utils.h proflog.h \
        $(PLOG_TESTS_SRC) ptestrunner.pl \
index e658bf9777b6b78e81c6851a74b41a6fc44ec53a..15baec017ac03cd4dc6a5451303577f73ab1433e 100644 (file)
@@ -203,7 +203,8 @@ static inline void print_report (const gchar *format, ...)
        prop = mono_class_get_property_from_name (klass, "StackTrace");
        str = (MonoString*)mono_property_get_value_checked (prop, NULL, NULL, &error);
        mono_error_assert_ok (&error);
-       stack_trace = mono_string_to_utf8 (str);
+       stack_trace = mono_string_to_utf8_checked (str, &error);
+       mono_error_assert_ok (&error);
 
        fprintf (stdout, "-= Stack Trace =-\n%s\n\n", stack_trace);
        g_free (stack_trace);
@@ -212,7 +213,6 @@ static inline void print_report (const gchar *format, ...)
 
 static inline void append_report (GString **report, const gchar *format, ...)
 {
-#if defined (_EGLIB_MAJOR) || GLIB_CHECK_VERSION(2,14,0)
        va_list ap;
        if (!*report)
                *report = g_string_new ("");
@@ -220,13 +220,11 @@ static inline void append_report (GString **report, const gchar *format, ...)
        va_start (ap, format);
        g_string_append_vprintf (*report, format, ap);
        va_end (ap);
-#else
-       g_assert_not_reached ();
-#endif
 }
 
 static gboolean saved_strings_find_func (gpointer key, gpointer value, gpointer user_data)
 {
+       MonoError error;
        SavedStringFindInfo *info = (SavedStringFindInfo*)user_data;
        SavedString *saved = (SavedString*)value;
        gchar *utf_str;
@@ -235,7 +233,8 @@ static gboolean saved_strings_find_func (gpointer key, gpointer value, gpointer
        if (!info || !saved || mono_string_length (saved->string) != info->len)
                return FALSE;
 
-       utf_str = mono_string_to_utf8 (saved->string);
+       utf_str = mono_string_to_utf8_checked (saved->string, &error);
+       mono_error_assert_ok (&error);
        hash = do_calc_string_hash (0, utf_str);
        g_free (utf_str);
 
index 23605903f4350f01b1a6c982b077a56648aae204..99e68567571dcf59b3759f143d2642e0861c06de 100644 (file)
 #include <mono/utils/mono-mmap.h>
 #include <mono/utils/mono-counters.h>
 #include <mono/utils/mono-os-mutex.h>
+#include <mono/utils/mono-os-semaphore.h>
 #include <mono/utils/mono-conc-hashtable.h>
 #include <mono/utils/lock-free-alloc.h>
 #include <mono/utils/lock-free-queue.h>
+#include <mono/utils/hazard-pointer.h>
+#include <mono/utils/mono-threads.h>
 #include <stdlib.h>
 #include <string.h>
 #include <assert.h>
@@ -4020,7 +4023,7 @@ helper_thread (void* arg)
        MonoThread *thread = NULL;
 
        mono_threads_attach_tools_thread ();
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Profiler helper");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Profiler helper");
 
        //fprintf (stderr, "Server listening\n");
        command_socket = -1;
@@ -4275,7 +4278,7 @@ writer_thread (void *arg)
        MonoProfiler *prof = (MonoProfiler *)arg;
 
        mono_threads_attach_tools_thread ();
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Profiler writer");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Profiler writer");
 
        dump_header (prof);
 
@@ -4386,7 +4389,7 @@ dumper_thread (void *arg)
        MonoProfiler *prof = (MonoProfiler *)arg;
 
        mono_threads_attach_tools_thread ();
-       mono_thread_info_set_name (mono_native_thread_id_get (), "Profiler dumper");
+       mono_native_thread_set_name (mono_native_thread_id_get (), "Profiler dumper");
 
        while (InterlockedRead (&prof->run_dumper_thread)) {
                mono_os_sem_wait (&prof->dumper_queue_sem, MONO_SEM_FLAGS_NONE);
index 2bc3214f143745d39b577525eea5a6bbc257bd66..2e9f4666d21675f5a13596ee5bb8d14ecd26c68d 100644 (file)
@@ -68,6 +68,9 @@ static __thread char *tlab_temp_end;
 static __thread char *tlab_real_end;
 /* Used by the managed allocator/wbarrier */
 static __thread char **tlab_next_addr MONO_ATTR_USED;
+#ifndef SGEN_WITHOUT_MONO
+static __thread volatile int *in_critical_region_addr MONO_ATTR_USED;
+#endif
 #endif
 
 #ifdef HAVE_KW_THREAD
@@ -93,7 +96,7 @@ alloc_degraded (GCVTable vtable, size_t size, gboolean for_mature)
                sgen_ensure_free_space (size, GENERATION_OLD);
        } else {
                if (sgen_need_major_collection (size))
-                       sgen_perform_collection (size, GENERATION_OLD, "mature allocation failure", !for_mature);
+                       sgen_perform_collection (size, GENERATION_OLD, "mature allocation failure", !for_mature, TRUE);
        }
 
 
@@ -161,7 +164,7 @@ sgen_alloc_obj_nolock (GCVTable vtable, size_t size)
 
                if (collect_before_allocs) {
                        if (((current_alloc % collect_before_allocs) == 0) && nursery_section) {
-                               sgen_perform_collection (0, GENERATION_NURSERY, "collect-before-alloc-triggered", TRUE);
+                               sgen_perform_collection (0, GENERATION_NURSERY, "collect-before-alloc-triggered", TRUE, TRUE);
                                if (!degraded_mode && sgen_can_alloc_size (size) && real_size <= SGEN_MAX_SMALL_OBJ_SIZE) {
                                        // FIXME:
                                        g_assert_not_reached ();
@@ -197,11 +200,6 @@ sgen_alloc_obj_nolock (GCVTable vtable, size_t size)
                if (G_LIKELY (new_next < TLAB_TEMP_END)) {
                        /* Fast path */
 
-                       /* 
-                        * FIXME: We might need a memory barrier here so the change to tlab_next is 
-                        * visible before the vtable store.
-                        */
-
                        CANARIFY_ALLOC(p,real_size);
                        SGEN_LOG (6, "Allocated object %p, vtable: %p (%s), size: %zd", p, vtable, sgen_client_vtable_get_name (vtable), size);
                        binary_protocol_alloc (p , vtable, size, sgen_client_get_provenance ());
@@ -426,7 +424,7 @@ sgen_alloc_obj (GCVTable vtable, size_t size)
                if (collect_before_allocs) {
                        if (((current_alloc % collect_before_allocs) == 0) && nursery_section) {
                                LOCK_GC;
-                               sgen_perform_collection (0, GENERATION_NURSERY, "collect-before-alloc-triggered", TRUE);
+                               sgen_perform_collection (0, GENERATION_NURSERY, "collect-before-alloc-triggered", TRUE, TRUE);
                                UNLOCK_GC;
                        }
                }
@@ -506,6 +504,9 @@ sgen_init_tlab_info (SgenThreadInfo* info)
 
 #ifdef HAVE_KW_THREAD
        tlab_next_addr = &tlab_next;
+#ifndef SGEN_WITHOUT_MONO
+       in_critical_region_addr = &info->client_info.in_critical_region;
+#endif
 #endif
 }
 
@@ -530,13 +531,15 @@ sgen_init_allocator (void)
 #if defined(HAVE_KW_THREAD) && !defined(SGEN_WITHOUT_MONO)
        int tlab_next_addr_offset = -1;
        int tlab_temp_end_offset = -1;
-
+       int in_critical_region_addr_offset = -1;
 
        MONO_THREAD_VAR_OFFSET (tlab_next_addr, tlab_next_addr_offset);
        MONO_THREAD_VAR_OFFSET (tlab_temp_end, tlab_temp_end_offset);
+       MONO_THREAD_VAR_OFFSET (in_critical_region_addr, in_critical_region_addr_offset);
 
        mono_tls_key_set_offset (TLS_KEY_SGEN_TLAB_NEXT_ADDR, tlab_next_addr_offset);
        mono_tls_key_set_offset (TLS_KEY_SGEN_TLAB_TEMP_END, tlab_temp_end_offset);
+       mono_tls_key_set_offset (TLS_KEY_SGEN_IN_CRITICAL_REGION_ADDR, in_critical_region_addr_offset);
 #endif
 
 #ifdef HEAVY_STATISTICS
index c72ed326b00afbb28d565e48b113352bed1965d1..da6aaf01823c56265c44967c7e78504ec1165670 100644 (file)
 
 #include <mono/utils/mono-context.h>
 
-/*
- * Define either USE_MONO_CTX, or
- * ARCH_SIGCTX_SP/ARCH_SIGCTX_IP/ARCH_STORE_REGS/ARCH_COPY_SIGCTX_REGS.
- * Define ARCH_NUM_REGS to be the number of general registers in MonoContext, or the
- * number of registers stored by ARCH_STORE_REGS.
- */
-
 #if defined(MONO_CROSS_COMPILE)
 
 #define REDZONE_SIZE   0
 
-#define ARCH_NUM_REGS 0
-#define ARCH_STORE_REGS(ptr)
-#define ARCH_SIGCTX_SP(ctx) NULL
-#define ARCH_SIGCTX_IP(ctx) NULL
-#define ARCH_COPY_SIGCTX_REGS(a,ctx)
-
 #elif defined(TARGET_X86)
 
 #define REDZONE_SIZE   0
 
-#define ARCH_NUM_REGS 8
-
 #ifndef MONO_ARCH_HAS_MONO_CONTEXT
 #error 0
 #endif
 
-#define USE_MONO_CTX
-
 #elif defined(TARGET_AMD64)
 
 #define REDZONE_SIZE   128
 
-#define ARCH_NUM_REGS 16
-#define USE_MONO_CTX
-
 #elif defined(TARGET_POWERPC)
 
 #define REDZONE_SIZE   224
 
-#define ARCH_NUM_REGS 32
-#ifdef __APPLE__
-#define ARCH_STORE_REGS(ptr)   \
-       __asm__ __volatile__(   \
-               "stmw r0, 0(%0)\n"      \
-               :                       \
-               : "b" (ptr)             \
-       )
-#else
-#define ARCH_STORE_REGS(ptr)   \
-       __asm__ __volatile__(   \
-               "stmw 0, 0(%0)\n"       \
-               :                       \
-               : "b" (ptr)             \
-       )
-#endif
-#define ARCH_SIGCTX_SP(ctx)    (UCONTEXT_REG_Rn((ctx), 1))
-#define ARCH_SIGCTX_IP(ctx)    (UCONTEXT_REG_NIP((ctx)))
-#define ARCH_COPY_SIGCTX_REGS(a,ctx) do {      \
-       int __i;        \
-       for (__i = 0; __i < 32; ++__i)  \
-               ((a)[__i]) = (gpointer) UCONTEXT_REG_Rn((ctx), __i);    \
-       } while (0)
-
 /* MS_BLOCK_SIZE must be a multiple of the system pagesize, which for some
    architectures is 64k.  */
 #if defined(TARGET_POWERPC) || defined(TARGET_POWERPC64)
 #elif defined(TARGET_ARM)
 
 #define REDZONE_SIZE   0
-#define USE_MONO_CTX
-
-/* We dont store ip, sp */
-#define ARCH_NUM_REGS 14
 
 #elif defined(TARGET_ARM64)
 
 #else
 #error "Not implemented."
 #endif
-#define USE_MONO_CTX
-#define ARCH_NUM_REGS 31
 
 #elif defined(__mips__)
 
 #define REDZONE_SIZE   0
 
-#define USE_MONO_CTX
-#define ARCH_NUM_REGS 32
-
 #elif defined(__s390x__)
 
 #define REDZONE_SIZE   0
 
-#define USE_MONO_CTX
-#define ARCH_NUM_REGS 16       
-
 #elif defined(__sparc__)
 
 #define REDZONE_SIZE   0
 
-/* Don't bother with %g0 (%r0), it's always hard-coded to zero */
-#define ARCH_NUM_REGS 15       
-#ifdef __sparcv9
-#define ARCH_STORE_REGS(ptr)   \
-       __asm__ __volatile__(   \
-               "st %%g1,[%0]\n\t"      \
-               "st %%g2,[%0+0x08]\n\t" \
-               "st %%g3,[%0+0x10]\n\t" \
-               "st %%g4,[%0+0x18]\n\t" \
-               "st %%g5,[%0+0x20]\n\t" \
-               "st %%g6,[%0+0x28]\n\t" \
-               "st %%g7,[%0+0x30]\n\t" \
-               "st %%o0,[%0+0x38]\n\t" \
-               "st %%o1,[%0+0x40]\n\t" \
-               "st %%o2,[%0+0x48]\n\t" \
-               "st %%o3,[%0+0x50]\n\t" \
-               "st %%o4,[%0+0x58]\n\t" \
-               "st %%o5,[%0+0x60]\n\t" \
-               "st %%o6,[%0+0x68]\n\t" \
-               "st %%o7,[%0+0x70]\n\t" \
-               :                       \
-               : "r" (ptr)             \
-               : "memory"                      \
-       )
-#else
-#define ARCH_STORE_REGS(ptr)   \
-       __asm__ __volatile__(   \
-               "st %%g1,[%0]\n\t"      \
-               "st %%g2,[%0+0x04]\n\t" \
-               "st %%g3,[%0+0x08]\n\t" \
-               "st %%g4,[%0+0x0c]\n\t" \
-               "st %%g5,[%0+0x10]\n\t" \
-               "st %%g6,[%0+0x14]\n\t" \
-               "st %%g7,[%0+0x18]\n\t" \
-               "st %%o0,[%0+0x1c]\n\t" \
-               "st %%o1,[%0+0x20]\n\t" \
-               "st %%o2,[%0+0x24]\n\t" \
-               "st %%o3,[%0+0x28]\n\t" \
-               "st %%o4,[%0+0x2c]\n\t" \
-               "st %%o5,[%0+0x30]\n\t" \
-               "st %%o6,[%0+0x34]\n\t" \
-               "st %%o7,[%0+0x38]\n\t" \
-               :                       \
-               : "r" (ptr)             \
-               : "memory"                      \
-       )
-#endif
-
-#ifndef REG_SP
-#define REG_SP REG_O6
-#endif
-
-#define ARCH_SIGCTX_SP(ctx)    (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_SP])
-#define ARCH_SIGCTX_IP(ctx)    (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_PC])
-#define ARCH_COPY_SIGCTX_REGS(a,ctx) do {      \
-       (a)[0] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G1]);        \
-       (a)[1] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G2]);        \
-       (a)[2] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G3]);        \
-       (a)[3] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G4]);        \
-       (a)[4] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G5]);        \
-       (a)[5] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G6]);        \
-       (a)[6] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_G7]);        \
-       (a)[7] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O0]);        \
-       (a)[8] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O1]);        \
-       (a)[9] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O2]);        \
-       (a)[10] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O3]);       \
-       (a)[11] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O4]);       \
-       (a)[12] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O5]);       \
-       (a)[13] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O6]);       \
-       (a)[14] = (gpointer) (((ucontext_t *)(ctx))->uc_mcontext.gregs [REG_O7]);       \
-       } while (0)
-
 #endif
 
 #endif /* __MONO_SGENARCHDEP_H__ */
index f84868e0a6f5f8d8999ce2ffd4e7947884ad9d3a..09ac01dfd5e8ee88f365d618b551d1b9a84c5be4 100644 (file)
@@ -112,6 +112,32 @@ sgen_array_list_update_next_slot (SgenArrayList *array, guint32 new_index)
        }
 }
 
+/*
+ * Extension for the array list that allows fast allocation and index based fetching
+ * of long lived memory of various sizes, without the need of realloc. Not thread safe.
+ */
+guint32
+sgen_array_list_alloc_block (SgenArrayList *array, guint32 slots_to_add)
+{
+       guint32 new_index = array->next_slot;
+       guint32 old_capacity = array->capacity;
+
+       /* FIXME Don't allocate arrays that will be skipped */
+       /* There are no empty arrays between next_slot and capacity because we allocate incrementally */
+       while ((old_capacity - new_index) < slots_to_add) {
+               sgen_array_list_grow (array, old_capacity);
+               new_index = old_capacity;
+               old_capacity = array->capacity;
+       }
+
+       SGEN_ASSERT (0, sgen_array_list_index_bucket (new_index) == sgen_array_list_index_bucket (new_index + slots_to_add - 1),
+                       "We failed to allocate a continuous block of slots");
+
+       array->next_slot = new_index + slots_to_add;
+       /* The slot address will point to the allocated memory */
+       return new_index;
+}
+
 guint32
 sgen_array_list_add (SgenArrayList *array, gpointer ptr, int data, gboolean increase_size_before_set)
 {
index fb37009a67230fdd0c9d328cf300cb78fae3ce12..5b9291693363250e7ab4916b887d6849d5397b65 100644 (file)
@@ -129,6 +129,7 @@ sgen_array_list_get_slot (SgenArrayList *array, guint32 index)
 
 #define SGEN_ARRAY_LIST_END_FOREACH_SLOT_RANGE } }
 
+guint32 sgen_array_list_alloc_block (SgenArrayList *array, guint32 slots_to_add);
 guint32 sgen_array_list_add (SgenArrayList *array, gpointer ptr, int data, gboolean increase_size_before_set);
 guint32 sgen_array_list_find (SgenArrayList *array, gpointer ptr);
 void sgen_array_list_remove_nulls (SgenArrayList *array);
index 05dfe7d90743b041f12bcf26d587213920fe46c0..50369b0a783f22a7314279f70f0416c6a3ab84aa 100644 (file)
@@ -410,7 +410,7 @@ static void
 sgen_card_table_clear_cards (void)
 {
        /*XXX we could do this in 2 ways. using mincore or iterating over all sections/los objects */
-       sgen_major_collector_iterate_live_block_ranges (clear_cards);
+       sgen_major_collector_iterate_block_ranges (clear_cards);
        sgen_los_iterate_live_block_ranges (clear_cards);
 }
 
@@ -431,7 +431,7 @@ sgen_card_table_scan_remsets (ScanCopyContext ctx)
 #ifdef SGEN_HAVE_OVERLAPPING_CARDS
        /*FIXME we should have a bit on each block/los object telling if the object have marked cards.*/
        /*First we copy*/
-       sgen_major_collector_iterate_live_block_ranges (move_cards_to_shadow_table);
+       sgen_major_collector_iterate_block_ranges (move_cards_to_shadow_table);
        sgen_los_iterate_live_block_ranges (move_cards_to_shadow_table);
 
        /*Then we clear*/
index 4cf9f003d5584bb55b5c7ab30f9170661647c3f7..6d60c3516c6a380c8a2de1c47827a34229ea853a 100644 (file)
@@ -174,7 +174,7 @@ void sgen_client_scan_thread_data (void *start_nursery, void *end_nursery, gbool
  * single-threaded programs this is a nop.
  */
 void sgen_client_stop_world (int generation);
-void sgen_client_restart_world (int generation, GGTimingInfo *timing);
+void sgen_client_restart_world (int generation, gint64 *stw_time);
 
 /*
  * Must return FALSE.  The bridge is not supported outside of Mono.
@@ -197,12 +197,6 @@ void sgen_client_bridge_register_finalized_object (GCObject *object);
 void sgen_client_mark_togglerefs (char *start, char *end, ScanCopyContext ctx);
 void sgen_client_clear_togglerefs (char *start, char *end, ScanCopyContext ctx);
 
-/*
- * Called after collections, reporting the amount of time they took.  No action is
- * necessary.
- */
-void sgen_client_log_timing (GGTimingInfo *info, mword last_major_num_sections, mword last_los_memory_usage);
-
 /*
  * Called to handle `MONO_GC_PARAMS` and `MONO_GC_DEBUG` options.  The `handle` functions
  * must return TRUE if they have recognized and processed the option, FALSE otherwise.
index 28e77a77e87d53c9a3145a586f0545f3b049c639..6daa9199dfcea5d7067518d98732a153cb5f6abc 100644 (file)
@@ -493,10 +493,10 @@ static void
 find_pinning_ref_from_thread (char *obj, size_t size)
 {
 #ifndef SGEN_WITHOUT_MONO
-       int j;
        char *endobj = obj + size;
 
        FOREACH_THREAD (info) {
+               mword *ctxstart, *ctxcurrent, *ctxend;
                char **start = (char**)info->client_info.stack_start;
                if (info->client_info.skip || info->client_info.gc_disabled)
                        continue;
@@ -506,15 +506,11 @@ find_pinning_ref_from_thread (char *obj, size_t size)
                        start++;
                }
 
-               for (j = 0; j < ARCH_NUM_REGS; ++j) {
-#ifdef USE_MONO_CTX
-                       mword w = ((mword*)&info->client_info.ctx) [j];
-#else
-                       mword w = (mword)&info->client_info.regs [j];
-#endif
+               for (ctxstart = ctxcurrent = (mword*) &info->client_info.ctx, ctxend = (mword*) (&info->client_info.ctx + 1); ctxcurrent < ctxend; ctxcurrent ++) {
+                       mword w = *ctxcurrent;
 
                        if (w >= (mword)obj && w < (mword)obj + size)
-                               SGEN_LOG (0, "Object %p referenced in saved reg %d of thread %p (id %p)", obj, j, info, (gpointer)mono_thread_info_get_tid (info));
+                               SGEN_LOG (0, "Object %p referenced in saved reg %d of thread %p (id %p)", obj, (int) (ctxcurrent - ctxstart), info, (gpointer)mono_thread_info_get_tid (info));
                }
        } FOREACH_THREAD_END
 #endif
@@ -996,9 +992,11 @@ check_reference_for_xdomain (GCObject **ptr, GCObject *obj, MonoDomain *domain)
                        break;
        }
 
-       if (ref->vtable->klass == mono_defaults.string_class)
-               str = mono_string_to_utf8 ((MonoString*)ref);
-       else
+       if (ref->vtable->klass == mono_defaults.string_class) {
+               MonoError error;
+               str = mono_string_to_utf8_checked ((MonoString*)ref, &error);
+               mono_error_cleanup (&error);
+       } else
                str = NULL;
        g_print ("xdomain reference in %p (%s.%s) at offset %d (%s) to %p (%s.%s) (%s)  -  pointed to by:\n",
                        obj, obj->vtable->klass->name_space, obj->vtable->klass->name,
index 6ddea6d621301348aa2035c5f227994d8f695631..248b07b8f50fff935da561c90488a52af682ac17 100644 (file)
@@ -33,6 +33,7 @@
 
 #include "mono/sgen/sgen-gc.h"
 #include "mono/sgen/gc-internal-agnostic.h"
+#include "mono/sgen/sgen-array-list.h"
 
 #define MAX_USER_DESCRIPTORS 16
 
@@ -40,9 +41,7 @@
 #define ALIGN_TO(val,align) ((((guint64)val) + ((align) - 1)) & ~((align) - 1))
 
 
-static gsize* complex_descriptors = NULL;
-static int complex_descriptors_size = 0;
-static int complex_descriptors_next = 0;
+static SgenArrayList complex_descriptors = SGEN_ARRAY_LIST_INIT (NULL, NULL, NULL, INTERNAL_MEM_COMPLEX_DESCRIPTORS);
 static SgenUserRootMarkFunc user_descriptors [MAX_USER_DESCRIPTORS];
 static int user_descriptors_next = 0;
 static SgenDescriptor all_ref_root_descrs [32];
@@ -56,43 +55,50 @@ static int
 alloc_complex_descriptor (gsize *bitmap, int numbits)
 {
        int nwords, res, i;
+       volatile gpointer *slot;
+       gsize *descriptor;
+
+       SGEN_ASSERT (0, sizeof (gsize) == sizeof (mword), "We expect gsize and mword to have same size");
 
        numbits = ALIGN_TO (numbits, GC_BITS_PER_WORD);
        nwords = numbits / GC_BITS_PER_WORD + 1;
 
        sgen_gc_lock ();
-       res = complex_descriptors_next;
        /* linear search, so we don't have duplicates with domain load/unload
         * this should not be performance critical or we'd have bigger issues
         * (the number and size of complex descriptors should be small).
         */
-       for (i = 0; i < complex_descriptors_next; ) {
-               if (complex_descriptors [i] == nwords) {
+       SGEN_ARRAY_LIST_FOREACH_SLOT (&complex_descriptors, slot) {
+               gsize first_word = *(gsize*)slot;
+               if (first_word == 0) {
+                       /* Unused slots should be 0 so we simply skip them */
+                       continue;
+               } else if (first_word == nwords) {
                        int j, found = TRUE;
                        for (j = 0; j < nwords - 1; ++j) {
-                               if (complex_descriptors [i + 1 + j] != bitmap [j]) {
+                               if (((gsize*)slot) [j + 1] != bitmap [j]) {
                                        found = FALSE;
                                        break;
                                }
                        }
                        if (found) {
                                sgen_gc_unlock ();
-                               return i;
+                               return __index;
                        }
                }
-               i += (int)complex_descriptors [i];
-       }
-       if (complex_descriptors_next + nwords > complex_descriptors_size) {
-               int new_size = complex_descriptors_size * 2 + nwords;
-               complex_descriptors = (gsize *)g_realloc (complex_descriptors, new_size * sizeof (gsize));
-               complex_descriptors_size = new_size;
-       }
-       SGEN_LOG (6, "Complex descriptor %d, size: %d (total desc memory: %d)", res, nwords, complex_descriptors_size);
-       complex_descriptors_next += nwords;
-       complex_descriptors [res] = nwords;
+               /* Skip the bitmap words */
+               __index += (guint32)(first_word - 1);
+               __offset += (guint32)(first_word - 1);
+       } SGEN_ARRAY_LIST_END_FOREACH_SLOT;
+
+       res = sgen_array_list_alloc_block (&complex_descriptors, nwords);
+
+       SGEN_LOG (6, "Complex descriptor %d, size: %d (total desc memory: %d)", res, nwords, complex_descriptors.capacity);
+       descriptor = (gsize*)sgen_array_list_get_slot (&complex_descriptors, res);
+       descriptor [0] = nwords;
        for (i = 0; i < nwords - 1; ++i) {
-               complex_descriptors [res + 1 + i] = bitmap [i];
-               SGEN_LOG (6, "\tvalue: %p", (void*)complex_descriptors [res + 1 + i]);
+               descriptor [1 + i] = bitmap [i];
+               SGEN_LOG (6, "\tvalue: %p", (void*)descriptor [1 + i]);
        }
        sgen_gc_unlock ();
        return res;
@@ -101,7 +107,7 @@ alloc_complex_descriptor (gsize *bitmap, int numbits)
 gsize*
 sgen_get_complex_descriptor (SgenDescriptor desc)
 {
-       return complex_descriptors + (desc >> LOW_TYPE_BITS);
+       return (gsize*) sgen_array_list_get_slot (&complex_descriptors, desc >> LOW_TYPE_BITS);
 }
 
 /*
@@ -311,7 +317,7 @@ sgen_make_user_root_descriptor (SgenUserRootMarkFunc marker)
 void*
 sgen_get_complex_descriptor_bitmap (SgenDescriptor desc)
 {
-       return complex_descriptors + (desc >> ROOT_DESC_TYPE_SHIFT);
+       return (void*) sgen_array_list_get_slot (&complex_descriptors, desc >> ROOT_DESC_TYPE_SHIFT);
 }
 
 SgenUserRootMarkFunc
index 2b1f9e4da49c2bf558145f09e1757c354f4b1d06..54e1b7681fbe3fbb48a3c5385888b8b0d3567922 100644 (file)
@@ -215,7 +215,7 @@ sgen_gc_descr_has_references (SgenDescriptor desc)
        } while (0)
 #endif
 
-#define OBJ_COMPLEX_FOREACH_PTR(vt,obj)        do {    \
+#define OBJ_COMPLEX_FOREACH_PTR(desc,obj)      do {    \
                /* there are pointers */        \
                void **_objptr = (void**)(obj); \
                gsize *bitmap_data = sgen_get_complex_descriptor ((desc)); \
index 5ec907371f38451a493b5de735ff26c44620c6cf..e16cd9b957ad1b2beaa769cdf4b0fac426c8e725 100644 (file)
@@ -326,6 +326,15 @@ nursery_canaries_enabled (void)
 
 #define safe_object_get_size   sgen_safe_object_get_size
 
+#if defined(HAVE_CONC_GC_AS_DEFAULT)
+/* Use concurrent major on deskstop platforms */
+#define DEFAULT_MAJOR_INIT sgen_marksweep_conc_init
+#define DEFAULT_MAJOR_NAME "marksweep-conc"
+#else
+#define DEFAULT_MAJOR_INIT sgen_marksweep_init
+#define DEFAULT_MAJOR_NAME "marksweep"
+#endif
+
 /*
  * ######################################################################
  * ########  Global data.
@@ -692,7 +701,7 @@ pin_objects_from_nursery_pin_queue (gboolean do_scan_objects, ScanCopyContext ct
 
                        pin_object (obj_to_pin);
                        GRAY_OBJECT_ENQUEUE (queue, obj_to_pin, desc);
-                       sgen_pin_stats_register_object (obj_to_pin, obj_to_pin_size);
+                       sgen_pin_stats_register_object (obj_to_pin, GENERATION_NURSERY);
                        definitely_pinned [count] = obj_to_pin;
                        count++;
                }
@@ -727,6 +736,8 @@ pin_objects_in_nursery (gboolean do_scan_objects, ScanCopyContext ctx)
 void
 sgen_pin_object (GCObject *object, GrayQueue *queue)
 {
+       SGEN_ASSERT (0, sgen_ptr_in_nursery (object), "We're only supposed to use this for pinning nursery objects when out of memory.");
+
        /*
         * All pinned objects are assumed to have been staged, so we need to stage as well.
         * Also, the count of staged objects shows that "late pinning" happened.
@@ -737,7 +748,7 @@ sgen_pin_object (GCObject *object, GrayQueue *queue)
        binary_protocol_pin (object, (gpointer)LOAD_VTABLE (object), safe_object_get_size (object));
 
        ++objects_pinned;
-       sgen_pin_stats_register_object (object, safe_object_get_size (object));
+       sgen_pin_stats_register_object (object, GENERATION_NURSERY);
 
        GRAY_OBJECT_ENQUEUE (queue, object, sgen_obj_get_descriptor_safe (object));
 }
@@ -1163,7 +1174,7 @@ finish_gray_stack (int generation, ScanCopyContext ctx)
        sgen_client_clear_togglerefs (start_addr, end_addr, ctx);
 
        TV_GETTIME (btv);
-       SGEN_LOG (2, "Finalize queue handling scan for %s generation: %lld usecs %d ephemeron rounds", generation_name (generation), TV_ELAPSED (atv, btv), ephemeron_rounds);
+       SGEN_LOG (2, "Finalize queue handling scan for %s generation: %lld usecs %d ephemeron rounds", generation_name (generation), (long long)TV_ELAPSED (atv, btv), ephemeron_rounds);
 
        /*
         * handle disappearing links
@@ -1451,6 +1462,7 @@ enqueue_scan_from_roots_jobs (char *heap_start, char *heap_end, SgenObjectOperat
        /* Threads */
 
        stdj = (ScanThreadDataJob*)sgen_thread_pool_job_alloc ("scan thread data", job_scan_thread_data, sizeof (ScanThreadDataJob));
+       stdj->ops = ops;
        stdj->heap_start = heap_start;
        stdj->heap_end = heap_end;
        sgen_workers_enqueue_job (&stdj->job, enqueue);
@@ -1474,7 +1486,7 @@ enqueue_scan_from_roots_jobs (char *heap_start, char *heap_end, SgenObjectOperat
  * Return whether any objects were late-pinned due to being out of memory.
  */
 static gboolean
-collect_nursery (SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
+collect_nursery (const char *reason, gboolean is_overflow, SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
 {
        gboolean needs_major;
        size_t max_garbage_amount;
@@ -1557,7 +1569,7 @@ collect_nursery (SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
 
        TV_GETTIME (atv);
        time_minor_pinning += TV_ELAPSED (btv, atv);
-       SGEN_LOG (2, "Finding pinned pointers: %zd in %lld usecs", sgen_get_pinned_count (), TV_ELAPSED (btv, atv));
+       SGEN_LOG (2, "Finding pinned pointers: %zd in %lld usecs", sgen_get_pinned_count (), (long long)TV_ELAPSED (btv, atv));
        SGEN_LOG (4, "Start scan with %zd pinned objects", sgen_get_pinned_count ());
 
        sj = (ScanJob*)sgen_thread_pool_job_alloc ("scan remset", job_remembered_set_scan, sizeof (ScanJob));
@@ -1567,9 +1579,9 @@ collect_nursery (SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
        /* we don't have complete write barrier yet, so we scan all the old generation sections */
        TV_GETTIME (btv);
        time_minor_scan_remsets += TV_ELAPSED (atv, btv);
-       SGEN_LOG (2, "Old generation scan: %lld usecs", TV_ELAPSED (atv, btv));
+       SGEN_LOG (2, "Old generation scan: %lld usecs", (long long)TV_ELAPSED (atv, btv));
 
-       sgen_pin_stats_print_class_stats ();
+       sgen_pin_stats_report ();
 
        /* FIXME: Why do we do this at this specific, seemingly random, point? */
        sgen_client_collecting_minor (&fin_ready_queue, &critical_fin_queue);
@@ -1608,7 +1620,7 @@ collect_nursery (SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
        sgen_client_binary_protocol_reclaim_end (GENERATION_NURSERY);
        TV_GETTIME (btv);
        time_minor_fragment_creation += TV_ELAPSED (atv, btv);
-       SGEN_LOG (2, "Fragment creation: %lld usecs, %lu bytes available", TV_ELAPSED (atv, btv), (unsigned long)fragment_total);
+       SGEN_LOG (2, "Fragment creation: %lld usecs, %lu bytes available", (long long)TV_ELAPSED (atv, btv), (unsigned long)fragment_total);
 
        if (consistency_check_at_minor_collection)
                sgen_check_major_refs ();
@@ -1638,7 +1650,7 @@ collect_nursery (SgenGrayQueue *unpin_queue, gboolean finish_up_concurrent_mark)
 
        binary_protocol_flush_buffers (FALSE);
 
-       sgen_memgov_minor_collection_end ();
+       sgen_memgov_minor_collection_end (reason, is_overflow);
 
        /*objects are late pinned because of lack of memory, so a major is a good call*/
        needs_major = objects_pinned > 0;
@@ -1766,7 +1778,7 @@ major_copy_or_mark_from_roots (size_t *old_next_pin_slot, CopyOrMarkFromRootsMod
                        sgen_los_pin_object (bigobj->data);
                        if (SGEN_OBJECT_HAS_REFERENCES (bigobj->data))
                                GRAY_OBJECT_ENQUEUE (WORKERS_DISTRIBUTE_GRAY_QUEUE, bigobj->data, sgen_obj_get_descriptor ((GCObject*)bigobj->data));
-                       sgen_pin_stats_register_object (bigobj->data, safe_object_get_size (bigobj->data));
+                       sgen_pin_stats_register_object (bigobj->data, GENERATION_OLD);
                        SGEN_LOG (6, "Marked large object %p (%s) size: %lu from roots", bigobj->data,
                                        sgen_client_vtable_get_name (SGEN_LOAD_VTABLE (bigobj->data)),
                                        (unsigned long)sgen_los_object_size (bigobj));
@@ -1785,7 +1797,7 @@ major_copy_or_mark_from_roots (size_t *old_next_pin_slot, CopyOrMarkFromRootsMod
 
        TV_GETTIME (btv);
        time_major_pinning += TV_ELAPSED (atv, btv);
-       SGEN_LOG (2, "Finding pinned pointers: %zd in %lld usecs", sgen_get_pinned_count (), TV_ELAPSED (atv, btv));
+       SGEN_LOG (2, "Finding pinned pointers: %zd in %lld usecs", sgen_get_pinned_count (), (long long)TV_ELAPSED (atv, btv));
        SGEN_LOG (4, "Start scan with %zd pinned objects", sgen_get_pinned_count ());
 
        major_collector.init_to_space ();
@@ -1852,7 +1864,7 @@ major_copy_or_mark_from_roots (size_t *old_next_pin_slot, CopyOrMarkFromRootsMod
                time_major_scan_mod_union += TV_ELAPSED (btv, atv);
        }
 
-       sgen_pin_stats_print_class_stats ();
+       sgen_pin_stats_report ();
 }
 
 static void
@@ -1869,7 +1881,7 @@ major_finish_copy_or_mark (CopyOrMarkFromRootsMode mode)
 }
 
 static void
-major_start_collection (gboolean concurrent, size_t *old_next_pin_slot)
+major_start_collection (const char *reason, gboolean concurrent, size_t *old_next_pin_slot)
 {
        SgenObjectOperations *object_ops;
 
@@ -1893,7 +1905,7 @@ major_start_collection (gboolean concurrent, size_t *old_next_pin_slot)
 
        reset_pinned_from_failed_allocation ();
 
-       sgen_memgov_major_collection_start ();
+       sgen_memgov_major_collection_start (concurrent, reason);
 
        //count_ref_nonref_objs ();
        //consistency_check ();
@@ -1912,7 +1924,7 @@ major_start_collection (gboolean concurrent, size_t *old_next_pin_slot)
 }
 
 static void
-major_finish_collection (const char *reason, size_t old_next_pin_slot, gboolean forced)
+major_finish_collection (const char *reason, gboolean is_overflow, size_t old_next_pin_slot, gboolean forced)
 {
        ScannedObjectCounts counts;
        SgenObjectOperations *object_ops;
@@ -2025,7 +2037,7 @@ major_finish_collection (const char *reason, size_t old_next_pin_slot, gboolean
 
        g_assert (sgen_gray_object_queue_is_empty (&gray_queue));
 
-       sgen_memgov_major_collection_end (forced);
+       sgen_memgov_major_collection_end (forced, concurrent_collection_in_progress, reason, is_overflow);
        current_collection_generation = -1;
 
        memset (&counts, 0, sizeof (ScannedObjectCounts));
@@ -2047,7 +2059,7 @@ major_finish_collection (const char *reason, size_t old_next_pin_slot, gboolean
 }
 
 static gboolean
-major_do_collection (const char *reason, gboolean forced)
+major_do_collection (const char *reason, gboolean is_overflow, gboolean forced)
 {
        TV_DECLARE (time_start);
        TV_DECLARE (time_end);
@@ -2064,8 +2076,8 @@ major_do_collection (const char *reason, gboolean forced)
        /* world must be stopped already */
        TV_GETTIME (time_start);
 
-       major_start_collection (FALSE, &old_next_pin_slot);
-       major_finish_collection (reason, old_next_pin_slot, forced);
+       major_start_collection (reason, FALSE, &old_next_pin_slot);
+       major_finish_collection (reason, is_overflow, old_next_pin_slot, forced);
 
        TV_GETTIME (time_end);
        gc_stats.major_gc_time += TV_ELAPSED (time_start, time_end);
@@ -2096,7 +2108,7 @@ major_start_concurrent_collection (const char *reason)
        binary_protocol_concurrent_start ();
 
        // FIXME: store reason and pass it when finishing
-       major_start_collection (TRUE, NULL);
+       major_start_collection (reason, TRUE, NULL);
 
        gray_queue_redirect (&gray_queue);
 
@@ -2163,7 +2175,7 @@ major_finish_concurrent_collection (gboolean forced)
 
        current_collection_generation = GENERATION_OLD;
        sgen_cement_reset ();
-       major_finish_collection ("finishing", -1, forced);
+       major_finish_collection ("finishing", FALSE, -1, forced);
 
        if (whole_heap_check_before_collection)
                sgen_check_whole_heap (FALSE);
@@ -2214,109 +2226,71 @@ sgen_ensure_free_space (size_t size, int generation)
 
        if (generation_to_collect == -1)
                return;
-       sgen_perform_collection (size, generation_to_collect, reason, FALSE);
+       sgen_perform_collection (size, generation_to_collect, reason, FALSE, TRUE);
 }
 
 /*
  * LOCKING: Assumes the GC lock is held.
  */
 void
-sgen_perform_collection (size_t requested_size, int generation_to_collect, const char *reason, gboolean wait_to_finish)
+sgen_perform_collection (size_t requested_size, int generation_to_collect, const char *reason, gboolean wait_to_finish, gboolean stw)
 {
-       TV_DECLARE (gc_start);
-       TV_DECLARE (gc_end);
        TV_DECLARE (gc_total_start);
        TV_DECLARE (gc_total_end);
-       GGTimingInfo infos [2];
        int overflow_generation_to_collect = -1;
        int oldest_generation_collected = generation_to_collect;
        const char *overflow_reason = NULL;
+       gboolean finish_concurrent = concurrent_collection_in_progress && (major_should_finish_concurrent_collection () || generation_to_collect == GENERATION_OLD);
 
        binary_protocol_collection_requested (generation_to_collect, requested_size, wait_to_finish ? 1 : 0);
 
        SGEN_ASSERT (0, generation_to_collect == GENERATION_NURSERY || generation_to_collect == GENERATION_OLD, "What generation is this?");
 
-       TV_GETTIME (gc_start);
-
-       sgen_stop_world (generation_to_collect);
+       if (stw)
+               sgen_stop_world (generation_to_collect);
+       else
+               SGEN_ASSERT (0, sgen_is_world_stopped (), "We can only collect if the world is stopped");
+               
 
        TV_GETTIME (gc_total_start);
 
-       if (concurrent_collection_in_progress) {
-               /*
-                * If the concurrent worker is finished or we are asked to do a major collection
-                * then we finish the concurrent collection.
-                */
-               gboolean finish = major_should_finish_concurrent_collection () || generation_to_collect == GENERATION_OLD;
-
-               if (finish) {
-                       major_finish_concurrent_collection (wait_to_finish);
-                       oldest_generation_collected = GENERATION_OLD;
-               } else {
-                       SGEN_ASSERT (0, generation_to_collect == GENERATION_NURSERY, "Why aren't we finishing the concurrent collection?");
+       // FIXME: extract overflow reason
+       // FIXME: minor overflow for concurrent case
+       if (generation_to_collect == GENERATION_NURSERY && !finish_concurrent) {
+               if (concurrent_collection_in_progress)
                        major_update_concurrent_collection ();
-                       collect_nursery (NULL, FALSE);
-               }
 
-               goto done;
-       }
-
-       SGEN_ASSERT (0, !concurrent_collection_in_progress, "Why did this not get handled above?");
-
-       /*
-        * There's no concurrent collection in progress.  Collect the generation we're asked
-        * to collect.  If the major collector is concurrent and we're not forced to wait,
-        * start a concurrent collection.
-        */
-       // FIXME: extract overflow reason
-       if (generation_to_collect == GENERATION_NURSERY) {
-               if (collect_nursery (NULL, FALSE)) {
+               if (collect_nursery (reason, FALSE, NULL, FALSE) && !concurrent_collection_in_progress) {
                        overflow_generation_to_collect = GENERATION_OLD;
                        overflow_reason = "Minor overflow";
                }
+       } else if (finish_concurrent) {
+               major_finish_concurrent_collection (wait_to_finish);
+               oldest_generation_collected = GENERATION_OLD;
        } else {
+               SGEN_ASSERT (0, generation_to_collect == GENERATION_OLD, "We should have handled nursery collections above");
                if (major_collector.is_concurrent && !wait_to_finish) {
-                       collect_nursery (NULL, FALSE);
+                       collect_nursery ("Concurrent start", FALSE, NULL, FALSE);
                        major_start_concurrent_collection (reason);
-                       // FIXME: set infos[0] properly
-                       goto done;
-               }
-
-               if (major_do_collection (reason, wait_to_finish)) {
+                       oldest_generation_collected = GENERATION_NURSERY;
+               } else if (major_do_collection (reason, FALSE, wait_to_finish)) {
                        overflow_generation_to_collect = GENERATION_NURSERY;
                        overflow_reason = "Excessive pinning";
                }
        }
 
-       TV_GETTIME (gc_end);
-
-       memset (infos, 0, sizeof (infos));
-       infos [0].generation = generation_to_collect;
-       infos [0].reason = reason;
-       infos [0].is_overflow = FALSE;
-       infos [1].generation = -1;
-       infos [0].total_time = SGEN_TV_ELAPSED (gc_start, gc_end);
-
-       SGEN_ASSERT (0, !concurrent_collection_in_progress, "Why did this not get handled above?");
-
        if (overflow_generation_to_collect != -1) {
+               SGEN_ASSERT (0, !concurrent_collection_in_progress, "We don't yet support overflow collections with the concurrent collector");
+
                /*
                 * We need to do an overflow collection, either because we ran out of memory
                 * or the nursery is fully pinned.
                 */
 
-               infos [1].generation = overflow_generation_to_collect;
-               infos [1].reason = overflow_reason;
-               infos [1].is_overflow = TRUE;
-               gc_start = gc_end;
-
                if (overflow_generation_to_collect == GENERATION_NURSERY)
-                       collect_nursery (NULL, FALSE);
+                       collect_nursery (overflow_reason, TRUE, NULL, FALSE);
                else
-                       major_do_collection (overflow_reason, wait_to_finish);
-
-               TV_GETTIME (gc_end);
-               infos [1].total_time = SGEN_TV_ELAPSED (gc_start, gc_end);
+                       major_do_collection (overflow_reason, TRUE, wait_to_finish);
 
                oldest_generation_collected = MAX (oldest_generation_collected, overflow_generation_to_collect);
        }
@@ -2331,13 +2305,13 @@ sgen_perform_collection (size_t requested_size, int generation_to_collect, const
                degraded_mode = 1;
        }
 
- done:
        g_assert (sgen_gray_object_queue_is_empty (&gray_queue));
 
        TV_GETTIME (gc_total_end);
        time_max = MAX (time_max, TV_ELAPSED (gc_total_start, gc_total_end));
 
-       sgen_restart_world (oldest_generation_collected, infos);
+       if (stw)
+               sgen_restart_world (oldest_generation_collected);
 }
 
 /*
@@ -2707,7 +2681,7 @@ sgen_gc_collect (int generation)
        LOCK_GC;
        if (generation > 1)
                generation = 1;
-       sgen_perform_collection (0, generation, "user request", TRUE);
+       sgen_perform_collection (0, generation, "user request", TRUE, TRUE);
        UNLOCK_GC;
 }
 
@@ -2854,14 +2828,16 @@ sgen_gc_init (void)
                }
        }
 
-       if (!major_collector_opt || !strcmp (major_collector_opt, "marksweep")) {
-       use_marksweep_major:
+       if (!major_collector_opt) {
+       use_default_major:
+               DEFAULT_MAJOR_INIT (&major_collector);
+       } else if (!strcmp (major_collector_opt, "marksweep")) {
                sgen_marksweep_init (&major_collector);
-       } else if (!major_collector_opt || !strcmp (major_collector_opt, "marksweep-conc")) {
+       } else if (!strcmp (major_collector_opt, "marksweep-conc")) {
                sgen_marksweep_conc_init (&major_collector);
        } else {
-               sgen_env_var_error (MONO_GC_PARAMS_NAME, "Using `marksweep` instead.", "Unknown major collector `%s'.", major_collector_opt);
-               goto use_marksweep_major;
+               sgen_env_var_error (MONO_GC_PARAMS_NAME, "Using `" DEFAULT_MAJOR_NAME "` instead.", "Unknown major collector `%s'.", major_collector_opt);
+               goto use_default_major;
        }
 
        sgen_nursery_size = DEFAULT_NURSERY_SIZE;
@@ -2943,7 +2919,7 @@ sgen_gc_init (void)
                                double val;
                                opt = strchr (opt, '=') + 1;
                                if (parse_double_in_interval (MONO_GC_PARAMS_NAME, "default-allowance-ratio", opt,
-                                               SGEN_MIN_ALLOWANCE_NURSERY_SIZE_RATIO, SGEN_MIN_ALLOWANCE_NURSERY_SIZE_RATIO, &val)) {
+                                               SGEN_MIN_ALLOWANCE_NURSERY_SIZE_RATIO, SGEN_MAX_ALLOWANCE_NURSERY_SIZE_RATIO, &val)) {
                                        allowance_ratio = val;
                                }
                                continue;
@@ -3193,6 +3169,12 @@ sgen_major_collector_iterate_live_block_ranges (sgen_cardtable_block_callback ca
        major_collector.iterate_live_block_ranges (callback);
 }
 
+void
+sgen_major_collector_iterate_block_ranges (sgen_cardtable_block_callback callback)
+{
+       major_collector.iterate_block_ranges (callback);
+}
+
 SgenMajorCollector*
 sgen_get_major_collector (void)
 {
@@ -3235,9 +3217,10 @@ sgen_stop_world (int generation)
 
 /* LOCKING: assumes the GC lock is held */
 void
-sgen_restart_world (int generation, GGTimingInfo *timing)
+sgen_restart_world (int generation)
 {
        long long major_total = -1, major_marked = -1, los_total = -1, los_marked = -1;
+       gint64 stw_time;
 
        SGEN_ASSERT (0, world_is_stopped, "Why are we restarting a running world?");
 
@@ -3245,16 +3228,16 @@ sgen_restart_world (int generation, GGTimingInfo *timing)
                count_cards (&major_total, &major_marked, &los_total, &los_marked);
        binary_protocol_world_restarting (generation, sgen_timestamp (), major_total, major_marked, los_total, los_marked);
 
-       sgen_client_restart_world (generation, timing);
-
        world_is_stopped = FALSE;
 
+       sgen_client_restart_world (generation, &stw_time);
+
        binary_protocol_world_restarted (generation, sgen_timestamp ());
 
        if (sgen_client_bridge_need_processing ())
                sgen_client_bridge_processing_finish (generation);
 
-       sgen_memgov_collection_end (generation, timing, timing ? 2 : 0);
+       sgen_memgov_collection_end (generation, stw_time);
 }
 
 gboolean
@@ -3269,7 +3252,7 @@ sgen_check_whole_heap_stw (void)
        sgen_stop_world (0);
        sgen_clear_nursery_fragments ();
        sgen_check_whole_heap (FALSE);
-       sgen_restart_world (0, NULL);
+       sgen_restart_world (0);
 }
 
 gint64
index f3d868a541648015aba3ef73d8a88f8345a30390..b0ac3dbcb10d5592e54750ad1662db5370396ac9 100644 (file)
@@ -116,16 +116,40 @@ extern guint64 stat_objects_copied_major;
                g_error (__VA_ARGS__);  \
 } } while (0)
 
+#ifndef HOST_WIN32
+# define LOG_TIMESTAMP  \
+       do {    \
+               time_t t;                                                                       \
+               struct tm tod;                                                                  \
+               time(&t);                                                                       \
+               localtime_r(&t, &tod);                                                          \
+               strftime(logTime, sizeof(logTime), "%Y-%m-%d %H:%M:%S", &tod);                  \
+       } while (0)
+#else
+# define LOG_TIMESTAMP  \
+       do {    \
+               time_t t;                                                                       \
+               struct tm *tod;                                                                 \
+               time(&t);                                                                       \
+               tod = localtime(&t);                                                            \
+               strftime(logTime, sizeof(logTime), "%F %T", tod);                               \
+       } while (0)
+#endif
 
 #define SGEN_LOG(level, format, ...) do {      \
        if (G_UNLIKELY ((level) <= SGEN_MAX_DEBUG_LEVEL && (level) <= gc_debug_level)) {        \
-               mono_gc_printf (gc_debug_file, format "\n", ##__VA_ARGS__);     \
+               char logTime[80];                                                               \
+               LOG_TIMESTAMP;                                                                  \
+               mono_gc_printf (gc_debug_file, "%s " format "\n", logTime, ##__VA_ARGS__);      \
 } } while (0)
 
 #define SGEN_COND_LOG(level, cond, format, ...) do {   \
-       if (G_UNLIKELY ((level) <= SGEN_MAX_DEBUG_LEVEL && (level) <= gc_debug_level)) {        \
-               if (cond)       \
-                       mono_gc_printf (gc_debug_file, format "\n", ##__VA_ARGS__);     \
+       if (G_UNLIKELY ((level) <= SGEN_MAX_DEBUG_LEVEL && (level) <= gc_debug_level)) {                \
+               if (cond) {                                                                             \
+                       char logTime[80];                                                               \
+                       LOG_TIMESTAMP;                                                                  \
+                       mono_gc_printf (gc_debug_file, "%s " format "\n", logTime, ##__VA_ARGS__);      \
+               }                                                                                       \
 } } while (0)
 
 extern int gc_debug_level;
@@ -315,6 +339,8 @@ enum {
        INTERNAL_MEM_CARDTABLE_MOD_UNION,
        INTERNAL_MEM_BINARY_PROTOCOL,
        INTERNAL_MEM_TEMPORARY,
+       INTERNAL_MEM_LOG_ENTRY,
+       INTERNAL_MEM_COMPLEX_DESCRIPTORS,
        INTERNAL_MEM_FIRST_CLIENT
 };
 
@@ -431,9 +457,9 @@ void* sgen_alloc_internal_dynamic (size_t size, int type, gboolean assert_on_fai
 void sgen_free_internal_dynamic (void *addr, size_t size, int type);
 
 void sgen_pin_stats_enable (void);
-void sgen_pin_stats_register_object (GCObject *obj, size_t size);
+void sgen_pin_stats_register_object (GCObject *obj, int generation);
 void sgen_pin_stats_register_global_remset (GCObject *obj);
-void sgen_pin_stats_print_class_stats (void);
+void sgen_pin_stats_report (void);
 
 void sgen_sort_addresses (void **array, size_t size);
 void sgen_add_to_global_remset (gpointer ptr, GCObject *obj);
@@ -548,7 +574,8 @@ void sgen_split_nursery_init (SgenMinorCollector *collector);
 /* Updating references */
 
 #ifdef SGEN_CHECK_UPDATE_REFERENCE
-gboolean sgen_thread_pool_is_thread_pool_thread (MonoNativeThreadId some_thread) MONO_INTERNAL;
+gboolean sgen_thread_pool_is_thread_pool_thread (MonoNativeThreadId some_thread);
+
 static inline void
 sgen_update_reference (GCObject **p, GCObject *o, gboolean allow_null)
 {
@@ -569,6 +596,7 @@ sgen_update_reference (GCObject **p, GCObject *o, gboolean allow_null)
 
 typedef void (*sgen_cardtable_block_callback) (mword start, mword size);
 void sgen_major_collector_iterate_live_block_ranges (sgen_cardtable_block_callback callback);
+void sgen_major_collector_iterate_block_ranges (sgen_cardtable_block_callback callback);
 
 typedef enum {
        ITERATE_OBJECTS_SWEEP = 1,
@@ -623,6 +651,7 @@ struct _SgenMajorCollector {
        void (*pin_major_object) (GCObject *obj, SgenGrayQueue *queue);
        void (*scan_card_table) (CardTableScanType scan_type, ScanCopyContext ctx);
        void (*iterate_live_block_ranges) (sgen_cardtable_block_callback callback);
+       void (*iterate_block_ranges) (sgen_cardtable_block_callback callback);
        void (*update_cardtable_mod_union) (void);
        void (*init_to_space) (void);
        void (*sweep) (void);
@@ -801,7 +830,7 @@ void sgen_set_pinned_from_failed_allocation (mword objsize);
 
 void sgen_ensure_free_space (size_t size, int generation);
 void sgen_gc_collect (int generation);
-void sgen_perform_collection (size_t requested_size, int generation_to_collect, const char *reason, gboolean wait_to_finish);
+void sgen_perform_collection (size_t requested_size, int generation_to_collect, const char *reason, gboolean wait_to_finish, gboolean stw);
 
 int sgen_gc_collection_count (int generation);
 /* FIXME: what exactly does this return? */
@@ -810,17 +839,8 @@ size_t sgen_gc_get_total_heap_allocation (void);
 
 /* STW */
 
-typedef struct {
-       int generation;
-       const char *reason;
-       gboolean is_overflow;
-       gint64 total_time;
-       gint64 stw_time;
-       gint64 bridge_time;
-} GGTimingInfo;
-
 void sgen_stop_world (int generation);
-void sgen_restart_world (int generation, GGTimingInfo *timing);
+void sgen_restart_world (int generation);
 gboolean sgen_is_world_stopped (void);
 
 gboolean sgen_set_allow_synchronous_major (gboolean flag);
@@ -840,6 +860,7 @@ struct _LOSObject {
 
 extern LOSObject *los_object_list;
 extern mword los_memory_usage;
+extern mword los_memory_usage_total;
 
 void sgen_los_free_object (LOSObject *obj);
 void* sgen_los_alloc_large_inner (GCVTable vtable, size_t size);
@@ -951,6 +972,8 @@ extern int default_nursery_size;
 extern guint32 tlab_size;
 extern NurseryClearPolicy nursery_clear_policy;
 extern gboolean sgen_try_free_some_memory;
+extern mword total_promoted_size;
+extern mword total_allocated_major;
 
 extern MonoCoopMutex gc_mutex;
 
index 256e32b20a1b0108ae4c69d4328e7fe7fc0759ed..ccff562737ab4deac9515b83c266f95147ebf36d 100644 (file)
@@ -139,6 +139,8 @@ description_for_type (int type)
        case INTERNAL_MEM_CARDTABLE_MOD_UNION: return "cardtable-mod-union";
        case INTERNAL_MEM_BINARY_PROTOCOL: return "binary-protocol";
        case INTERNAL_MEM_TEMPORARY: return "temporary";
+       case INTERNAL_MEM_LOG_ENTRY: return "log-entry";
+       case INTERNAL_MEM_COMPLEX_DESCRIPTORS: return "complex-descriptors";
        default: {
                const char *description = sgen_client_description_for_internal_mem_type (type);
                SGEN_ASSERT (0, description, "Unknown internal mem type");
index c22afd22f21d01c67998ee4e75dadedc444eb737..4b52eefb3f00cdf295504d29a21780667e99f144 100644 (file)
@@ -64,7 +64,10 @@ struct _LOSSection {
 
 /* We allow read only access on the list while sweep is not running */
 LOSObject *los_object_list = NULL;
+/* Memory used by LOS objects */
 mword los_memory_usage = 0;
+/* Total memory used by the LOS allocator */
+mword los_memory_usage_total = 0;
 
 static LOSSection *los_sections = NULL;
 static LOSFreeChunks *los_fast_free_lists [LOS_NUM_FAST_SIZES]; /* 0 is for larger sizes */
@@ -268,6 +271,7 @@ get_los_section_memory (size_t size)
        section->next = los_sections;
        los_sections = section;
 
+       los_memory_usage_total += LOS_SECTION_SIZE;
        ++los_num_sections;
 
        goto retry;
@@ -326,6 +330,7 @@ sgen_los_free_object (LOSObject *obj)
                size += sizeof (LOSObject);
                size = SGEN_ALIGN_UP_TO (size, pagesize);
                sgen_free_os_memory ((gpointer)SGEN_ALIGN_DOWN_TO ((mword)obj, pagesize), size, SGEN_ALLOC_HEAP);
+               los_memory_usage_total -= size;
                sgen_memgov_release_space (size, SPACE_LOS);
        } else {
                free_los_section_memory (obj, size + sizeof (LOSObject));
@@ -383,8 +388,10 @@ sgen_los_alloc_large_inner (GCVTable vtable, size_t size)
                size_t alloc_size = SGEN_ALIGN_UP_TO (obj_size, pagesize);
                if (sgen_memgov_try_alloc_space (alloc_size, SPACE_LOS)) {
                        obj = (LOSObject *)sgen_alloc_os_memory (alloc_size, (SgenAllocFlags)(SGEN_ALLOC_HEAP | SGEN_ALLOC_ACTIVATE), NULL);
-                       if (obj)
+                       if (obj) {
+                               los_memory_usage_total += alloc_size;
                                obj = randomize_los_object_start (obj, obj_size, alloc_size, pagesize);
+                       }
                }
        } else {
                obj = get_los_section_memory (size + sizeof (LOSObject));
@@ -476,6 +483,7 @@ sgen_los_sweep (void)
                        sgen_memgov_release_space (LOS_SECTION_SIZE, SPACE_LOS);
                        section = next;
                        --los_num_sections;
+                       los_memory_usage_total -= LOS_SECTION_SIZE;
                        continue;
                }
 
index ad2bb6fe272a44cbf08ce80ac65da5dbd177a0c7..3c96a2f0106bfc78cf20bca223315e7bd3f8c63a 100644 (file)
@@ -117,7 +117,7 @@ COPY_OR_MARK_FUNCTION_NAME (GCObject **ptr, GCObject *obj, SgenGrayQueue *queue)
                MS_CALC_MARK_BIT (word, bit, obj);
                SGEN_ASSERT (9, !MS_MARK_BIT (block, word, bit), "object %p already marked", obj);
                MS_SET_MARK_BIT (block, word, bit);
-               binary_protocol_mark (obj, (gpointer)LOAD_VTABLE (obj), sgen_safe_object_get_size (obj));
+               binary_protocol_mark (obj, (gpointer)SGEN_LOAD_VTABLE (obj), sgen_safe_object_get_size (obj));
 
                return FALSE;
 #endif
index 4c63191ad447d0ea5c9fb76bf44f9eba3ee19b46..8b4f3cb612dd4370c6f96a04798abf26ec1cc6cb 100644 (file)
@@ -194,16 +194,23 @@ static SgenArrayList allocated_blocks = SGEN_ARRAY_LIST_INIT (NULL, NULL, NULL,
 static void *empty_blocks = NULL;
 static size_t num_empty_blocks = 0;
 
+/*
+ * We can iterate the block list also while sweep is in progress but we
+ * need to account for blocks that will be checked for sweeping and even
+ * freed in the process.
+ */
 #define FOREACH_BLOCK_NO_LOCK(bl) {                                    \
        volatile gpointer *slot;                                                \
-       SGEN_ASSERT (0, !sweep_in_progress (), "Can't iterate blocks while sweep is in progress."); \
        SGEN_ARRAY_LIST_FOREACH_SLOT (&allocated_blocks, slot) {        \
-               (bl) = BLOCK_UNTAG (*slot);
+               (bl) = BLOCK_UNTAG (*slot);                             \
+               if (!(bl))                                              \
+                       continue;
 #define FOREACH_BLOCK_HAS_REFERENCES_NO_LOCK(bl,hr) {                  \
        volatile gpointer *slot;                                                \
-       SGEN_ASSERT (0, !sweep_in_progress (), "Can't iterate blocks while sweep is in progress."); \
        SGEN_ARRAY_LIST_FOREACH_SLOT (&allocated_blocks, slot) {        \
                (bl) = (MSBlockInfo *) (*slot);                 \
+               if (!(bl))                                              \
+                       continue;                                       \
                (hr) = BLOCK_IS_TAGGED_HAS_REFERENCES ((bl));           \
                (bl) = BLOCK_UNTAG ((bl));
 #define END_FOREACH_BLOCK_NO_LOCK      } SGEN_ARRAY_LIST_END_FOREACH_SLOT; }
@@ -549,16 +556,6 @@ ms_alloc_block (int size_index, gboolean pinned, gboolean has_references)
 
        add_free_block (free_blocks, size_index, info);
 
-       /*
-        * Adding to the allocated_blocks array is racy with the removal of nulls when
-        * sweeping. We wait for sweep to finish to avoid that.
-        *
-        * The memory barrier here and in `sweep_job_func()` are required because we need
-        * `allocated_blocks` synchronized between this and the sweep thread.
-        */
-       major_finish_sweep_checking ();
-       mono_memory_barrier ();
-
        sgen_array_list_add (&allocated_blocks, BLOCK_TAG (info), 0, FALSE);
 
        SGEN_ATOMIC_ADD_P (num_major_sections, 1);
@@ -652,6 +649,8 @@ alloc_obj (GCVTable vtable, size_t size, gboolean pinned, gboolean has_reference
        /* FIXME: assumes object layout */
        *(GCVTable*)obj = vtable;
 
+       total_allocated_major += block_obj_sizes [size_index]; 
+
        return (GCObject *)obj;
 }
 
@@ -714,7 +713,7 @@ major_alloc_small_pinned_obj (GCVTable vtable, size_t size, gboolean has_referen
          *as pinned alloc is requested by the runtime.
          */
         if (!res) {
-               sgen_perform_collection (0, GENERATION_OLD, "pinned alloc failure", TRUE);
+               sgen_perform_collection (0, GENERATION_OLD, "pinned alloc failure", TRUE, TRUE);
                res = alloc_obj (vtable, size, TRUE, has_references);
         }
         return (GCObject *)res;
@@ -1082,19 +1081,6 @@ major_block_is_evacuating (MSBlockInfo *block)
        return FALSE;
 }
 
-#define LOAD_VTABLE    SGEN_LOAD_VTABLE
-
-#define MS_MARK_OBJECT_AND_ENQUEUE_CHECKED(obj,desc,block,queue) do {  \
-               int __word, __bit;                                      \
-               MS_CALC_MARK_BIT (__word, __bit, (obj));                \
-               if (!MS_MARK_BIT ((block), __word, __bit) && MS_OBJ_ALLOCED ((obj), (block))) { \
-                       MS_SET_MARK_BIT ((block), __word, __bit);       \
-                       if (sgen_gc_descr_has_references (desc))                        \
-                               GRAY_OBJECT_ENQUEUE ((queue), (obj), (desc)); \
-                       binary_protocol_mark ((obj), (gpointer)LOAD_VTABLE ((obj)), sgen_safe_object_get_size ((obj))); \
-                       INC_NUM_MAJOR_OBJECTS_MARKED ();                \
-               }                                                       \
-       } while (0)
 #define MS_MARK_OBJECT_AND_ENQUEUE(obj,desc,block,queue) do {          \
                int __word, __bit;                                      \
                MS_CALC_MARK_BIT (__word, __bit, (obj));                \
@@ -1103,7 +1089,7 @@ major_block_is_evacuating (MSBlockInfo *block)
                        MS_SET_MARK_BIT ((block), __word, __bit);       \
                        if (sgen_gc_descr_has_references (desc))                        \
                                GRAY_OBJECT_ENQUEUE ((queue), (obj), (desc)); \
-                       binary_protocol_mark ((obj), (gpointer)LOAD_VTABLE ((obj)), sgen_safe_object_get_size ((obj))); \
+                       binary_protocol_mark ((obj), (gpointer)SGEN_LOAD_VTABLE ((obj)), sgen_safe_object_get_size ((obj))); \
                        INC_NUM_MAJOR_OBJECTS_MARKED ();                \
                }                                                       \
        } while (0)
@@ -1254,8 +1240,6 @@ mark_pinned_objects_in_block (MSBlockInfo *block, size_t first_entry, size_t las
        if (first_entry == last_entry)
                return;
 
-       block->has_pinned = TRUE;
-
        entry = sgen_pinning_get_entry (first_entry);
        end = sgen_pinning_get_entry (last_entry);
 
@@ -1266,9 +1250,19 @@ mark_pinned_objects_in_block (MSBlockInfo *block, size_t first_entry, size_t las
                if (index == last_index)
                        continue;
                obj = MS_BLOCK_OBJ (block, index);
-               MS_MARK_OBJECT_AND_ENQUEUE_CHECKED (obj, sgen_obj_get_descriptor (obj), block, queue);
+               if (!MS_OBJ_ALLOCED (obj, block))
+                       continue;
+               MS_MARK_OBJECT_AND_ENQUEUE (obj, sgen_obj_get_descriptor (obj), block, queue);
+               sgen_pin_stats_register_object (obj, GENERATION_OLD);
                last_index = index;
        }
+
+       /*
+        * There might have been potential pinning "pointers" into this block, but none of
+        * them pointed to occupied slots, in which case we don't have to pin the block.
+        */
+       if (last_index >= 0)
+               block->has_pinned = TRUE;
 }
 
 static inline void
@@ -1316,6 +1310,7 @@ set_block_state (MSBlockInfo *block, gint32 new_state, gint32 expected_state)
 {
        SGEN_ASSERT (6, block->state == expected_state, "Block state incorrect before set");
        block->state = new_state;
+       binary_protocol_block_set_state (block, MS_BLOCK_SIZE, expected_state, new_state);
 }
 
 /*
@@ -1429,6 +1424,8 @@ sweep_start (void)
                for (j = 0; j < num_block_obj_sizes; ++j)
                        free_blocks [j] = NULL;
        }
+
+       sgen_array_list_remove_nulls (&allocated_blocks);
 }
 
 static void sweep_finish (void);
@@ -1583,9 +1580,12 @@ static void
 sweep_blocks_job_func (void *thread_data_untyped, SgenThreadPoolJob *job)
 {
        volatile gpointer *slot;
+       MSBlockInfo *bl;
 
        SGEN_ARRAY_LIST_FOREACH_SLOT (&allocated_blocks, slot) {
-               sweep_block (BLOCK_UNTAG (*slot));
+               bl = BLOCK_UNTAG (*slot);
+               if (bl)
+                       sweep_block (bl);
        } SGEN_ARRAY_LIST_END_FOREACH_SLOT;
 
        mono_memory_write_barrier ();
@@ -1632,8 +1632,6 @@ sweep_job_func (void *thread_data_untyped, SgenThreadPoolJob *job)
                }
        }
 
-       sgen_array_list_remove_nulls (&allocated_blocks);
-
        /*
         * Concurrently sweep all the blocks to reduce workload during minor
         * pauses where we need certain blocks to be swept. At the start of
@@ -1652,6 +1650,7 @@ sweep_job_func (void *thread_data_untyped, SgenThreadPoolJob *job)
 static void
 sweep_finish (void)
 {
+       mword used_slots_size = 0;
        int i;
 
        for (i = 0; i < num_block_obj_sizes; ++i) {
@@ -1665,9 +1664,11 @@ sweep_finish (void)
                } else {
                        evacuate_block_obj_sizes [i] = FALSE;
                }
+
+               used_slots_size += sweep_slots_used [i] * block_obj_sizes [i];
        }
 
-       sgen_memgov_major_post_sweep ();
+       sgen_memgov_major_post_sweep (used_slots_size);
 
        set_sweep_state (SWEEP_STATE_SWEPT, SWEEP_STATE_COMPACTING);
        if (concurrent_sweep)
@@ -1709,7 +1710,7 @@ static int count_nonpinned_nonref;
 static void
 count_nonpinned_callback (GCObject *obj, size_t size, void *data)
 {
-       GCVTable vtable = LOAD_VTABLE (obj);
+       GCVTable vtable = SGEN_LOAD_VTABLE (obj);
 
        if (SGEN_VTABLE_HAS_REFERENCES (vtable))
                ++count_nonpinned_ref;
@@ -1720,7 +1721,7 @@ count_nonpinned_callback (GCObject *obj, size_t size, void *data)
 static void
 count_pinned_callback (GCObject *obj, size_t size, void *data)
 {
-       GCVTable vtable = LOAD_VTABLE (obj);
+       GCVTable vtable = SGEN_LOAD_VTABLE (obj);
 
        if (SGEN_VTABLE_HAS_REFERENCES (vtable))
                ++count_pinned_ref;
@@ -1849,7 +1850,7 @@ sgen_evacuation_freelist_blocks (MSBlockInfo * volatile *block_list, int size_in
 
        SGEN_ASSERT (0, num_blocks == index, "Why did the freelist change ?");
 
-       qsort (evacuated_blocks, num_blocks, sizeof (gpointer), block_usage_comparer);
+       sgen_qsort (evacuated_blocks, num_blocks, sizeof (gpointer), block_usage_comparer);
 
        /*
         * Form a new freelist with the fullest blocks. These blocks will also be
@@ -2219,6 +2220,18 @@ major_print_gc_param_usage (void)
 /*
  * This callback is used to clear cards, move cards to the shadow table and do counting.
  */
+static void
+major_iterate_block_ranges (sgen_cardtable_block_callback callback)
+{
+       MSBlockInfo *block;
+       gboolean has_references;
+
+       FOREACH_BLOCK_HAS_REFERENCES_NO_LOCK (block, has_references) {
+               if (has_references)
+                       callback ((mword)MS_BLOCK_FOR_BLOCK_INFO (block), MS_BLOCK_SIZE);
+       } END_FOREACH_BLOCK_NO_LOCK;
+}
+
 static void
 major_iterate_live_block_ranges (sgen_cardtable_block_callback callback)
 {
@@ -2418,12 +2431,15 @@ static void
 major_scan_card_table (CardTableScanType scan_type, ScanCopyContext ctx)
 {
        MSBlockInfo *block;
-       gboolean has_references;
+       gboolean has_references, was_sweeping, skip_scan;
 
        if (!concurrent_mark)
                g_assert (scan_type == CARDTABLE_SCAN_GLOBAL);
 
-       major_finish_sweep_checking ();
+       if (scan_type != CARDTABLE_SCAN_GLOBAL)
+               SGEN_ASSERT (0, !sweep_in_progress (), "Sweep should be finished when we scan mod union card table");
+       was_sweeping = sweep_in_progress ();
+
        binary_protocol_major_card_table_scan_start (sgen_timestamp (), scan_type & CARDTABLE_SCAN_MOD_UNION);
        FOREACH_BLOCK_HAS_REFERENCES_NO_LOCK (block, has_references) {
 #ifdef PREFETCH_CARDS
@@ -2441,8 +2457,36 @@ major_scan_card_table (CardTableScanType scan_type, ScanCopyContext ctx)
 
                if (!has_references)
                        continue;
+               skip_scan = FALSE;
 
-               scan_card_table_for_block (block, scan_type, ctx);
+               if (scan_type == CARDTABLE_SCAN_GLOBAL) {
+                       gpointer *card_start = (gpointer*) sgen_card_table_get_card_scan_address ((mword)MS_BLOCK_FOR_BLOCK_INFO (block));
+                       gboolean has_dirty_cards = FALSE;
+                       int i;
+                       for (i = 0; i < CARDS_PER_BLOCK / sizeof(gpointer); i++) {
+                               if (card_start [i]) {
+                                       has_dirty_cards = TRUE;
+                                       break;
+                               }
+                       }
+                       if (!has_dirty_cards) {
+                               skip_scan = TRUE;
+                       } else {
+                               /*
+                                * After the start of the concurrent collections, blocks change state
+                                * to marking. We should not sweep it in that case. We can't race with
+                                * sweep start since we are in a nursery collection. Also avoid CAS-ing
+                                */
+                               if (sweep_in_progress ()) {
+                                       skip_scan = !ensure_block_is_checked_for_sweeping (__index, TRUE, NULL);
+                               } else if (was_sweeping) {
+                                       /* Recheck in case sweep finished after dereferencing the slot */
+                                       skip_scan = *sgen_array_list_get_slot (&allocated_blocks, __index) == 0;
+                               }
+                       }
+               }
+               if (!skip_scan)
+                       scan_card_table_for_block (block, scan_type, ctx);
        } END_FOREACH_BLOCK_NO_LOCK;
        binary_protocol_major_card_table_scan_end (sgen_timestamp (), scan_type & CARDTABLE_SCAN_MOD_UNION);
 }
@@ -2579,6 +2623,7 @@ sgen_marksweep_init_internal (SgenMajorCollector *collector, gboolean is_concurr
        collector->pin_major_object = pin_major_object;
        collector->scan_card_table = major_scan_card_table;
        collector->iterate_live_block_ranges = major_iterate_live_block_ranges;
+       collector->iterate_block_ranges = major_iterate_block_ranges;
        if (is_concurrent) {
                collector->update_cardtable_mod_union = update_cardtable_mod_union;
                collector->get_cardtable_mod_union_for_reference = major_get_cardtable_mod_union_for_reference;
index 7415ce3bff1b3ce63468582f8e1d4cc888e0fc3c..e7de362976055377c0a67e6da9e4874d0c3b2db5 100644 (file)
 
 #define MIN_MINOR_COLLECTION_ALLOWANCE ((mword)(DEFAULT_NURSERY_SIZE * default_allowance_nursery_size_ratio))
 
+static SgenPointerQueue log_entries = SGEN_POINTER_QUEUE_INIT (INTERNAL_MEM_TEMPORARY);
+static MonoCoopMutex log_entries_mutex;
+
+mword total_promoted_size = 0;
+mword total_allocated_major = 0;
+static mword total_promoted_size_start;
+static mword total_allocated_major_end;
+
 /*Heap limits and allocation knobs*/
 static mword max_heap_size = ((mword)0)- ((mword)1);
 static mword soft_heap_limit = ((mword)0) - ((mword)1);
@@ -37,6 +45,9 @@ static mword allocated_heap;
 static mword total_alloc = 0;
 static mword total_alloc_max = 0;
 
+static SGEN_TV_DECLARE(last_minor_start);
+static SGEN_TV_DECLARE(last_major_start);
+
 /* GC triggers. */
 
 static gboolean debug_print_allowance = FALSE;
@@ -48,13 +59,11 @@ static mword major_collection_trigger_size;
 static mword major_pre_sweep_heap_size;
 static mword major_start_heap_size;
 
-static mword last_major_num_sections = 0;
-static mword last_los_memory_usage = 0;
-
 static gboolean need_calculate_minor_collection_allowance;
 
 /* The size of the LOS after the last major collection, after sweeping. */
 static mword last_collection_los_memory_usage = 0;
+static mword last_used_slots_size = 0;
 
 static mword sgen_memgov_available_free_space (void);
 
@@ -160,11 +169,38 @@ sgen_need_major_collection (mword space_needed)
 void
 sgen_memgov_minor_collection_start (void)
 {
+       total_promoted_size_start = total_promoted_size;
+       SGEN_TV_GETTIME (last_minor_start);
+}
+
+static void
+sgen_add_log_entry (SgenLogEntry *log_entry)
+{
+       mono_coop_mutex_lock (&log_entries_mutex);
+       sgen_pointer_queue_add (&log_entries, log_entry);
+       mono_coop_mutex_unlock (&log_entries_mutex);
 }
 
 void
-sgen_memgov_minor_collection_end (void)
+sgen_memgov_minor_collection_end (const char *reason, gboolean is_overflow)
 {
+       if (mono_trace_is_traced (G_LOG_LEVEL_INFO, MONO_TRACE_GC)) {
+               SgenLogEntry *log_entry = (SgenLogEntry*)sgen_alloc_internal (INTERNAL_MEM_LOG_ENTRY);
+               SGEN_TV_DECLARE (current_time);
+               SGEN_TV_GETTIME (current_time);
+
+               log_entry->type = SGEN_LOG_NURSERY;
+               log_entry->reason = reason;
+               log_entry->is_overflow = is_overflow;
+               log_entry->time = SGEN_TV_ELAPSED (last_minor_start, current_time);
+               log_entry->promoted_size = total_promoted_size - total_promoted_size_start;
+               log_entry->major_size = major_collector.get_num_major_sections () * major_collector.section_size;
+               log_entry->major_size_in_use = last_used_slots_size + total_allocated_major - total_allocated_major_end;
+               log_entry->los_size = los_memory_usage_total;
+               log_entry->los_size_in_use = los_memory_usage;
+
+               sgen_add_log_entry (log_entry);
+       }
 }
 
 void
@@ -179,18 +215,22 @@ sgen_memgov_major_pre_sweep (void)
 }
 
 void
-sgen_memgov_major_post_sweep (void)
+sgen_memgov_major_post_sweep (mword used_slots_size)
 {
-       mword num_major_sections = major_collector.get_num_major_sections ();
+       if (mono_trace_is_traced (G_LOG_LEVEL_INFO, MONO_TRACE_GC)) {
+               SgenLogEntry *log_entry = (SgenLogEntry*)sgen_alloc_internal (INTERNAL_MEM_LOG_ENTRY);
+
+               log_entry->type = SGEN_LOG_MAJOR_SWEEP_FINISH;
+               log_entry->major_size = major_collector.get_num_major_sections () * major_collector.section_size;
+               log_entry->major_size_in_use = used_slots_size + total_allocated_major - total_allocated_major_end;
 
-       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR_SWEEP: major %dK/%dK",
-               num_major_sections * major_collector.section_size / 1024,
-               last_major_num_sections * major_collector.section_size / 1024);
-       last_major_num_sections = num_major_sections;
+               sgen_add_log_entry (log_entry);
+       }
+       last_used_slots_size = used_slots_size;
 }
 
 void
-sgen_memgov_major_collection_start (void)
+sgen_memgov_major_collection_start (gboolean concurrent, const char *reason)
 {
        need_calculate_minor_collection_allowance = TRUE;
        major_start_heap_size = get_heap_size ();
@@ -198,13 +238,41 @@ sgen_memgov_major_collection_start (void)
        if (debug_print_allowance) {
                SGEN_LOG (0, "Starting collection with heap size %ld bytes", (long)major_start_heap_size);
        }
+       if (concurrent && mono_trace_is_traced (G_LOG_LEVEL_INFO, MONO_TRACE_GC)) {
+               SgenLogEntry *log_entry = (SgenLogEntry*)sgen_alloc_internal (INTERNAL_MEM_LOG_ENTRY);
+
+               log_entry->type = SGEN_LOG_MAJOR_CONC_START;
+               log_entry->reason = reason;
+
+               sgen_add_log_entry (log_entry);
+       }
+       SGEN_TV_GETTIME (last_major_start);
 }
 
 void
-sgen_memgov_major_collection_end (gboolean forced)
+sgen_memgov_major_collection_end (gboolean forced, gboolean concurrent, const char *reason, gboolean is_overflow)
 {
-       last_collection_los_memory_usage = los_memory_usage;
+       if (mono_trace_is_traced (G_LOG_LEVEL_INFO, MONO_TRACE_GC)) {
+               SgenLogEntry *log_entry = (SgenLogEntry*)sgen_alloc_internal (INTERNAL_MEM_LOG_ENTRY);
+               SGEN_TV_DECLARE (current_time);
+               SGEN_TV_GETTIME (current_time);
+
+               if (concurrent) {
+                       log_entry->type = SGEN_LOG_MAJOR_CONC_FINISH;
+               } else {
+                       log_entry->type = SGEN_LOG_MAJOR_SERIAL;
+               }
+               log_entry->time = SGEN_TV_ELAPSED (last_major_start, current_time);
+               log_entry->reason = reason;
+               log_entry->is_overflow = is_overflow;
+               log_entry->los_size = los_memory_usage_total;
+               log_entry->los_size_in_use = los_memory_usage;
+
+               sgen_add_log_entry (log_entry);
+       }
 
+       last_collection_los_memory_usage = los_memory_usage;
+       total_allocated_major_end = total_allocated_major;
        if (forced) {
                sgen_get_major_collector ()->finish_sweeping ();
                sgen_memgov_calculate_minor_collection_allowance ();
@@ -216,15 +284,77 @@ sgen_memgov_collection_start (int generation)
 {
 }
 
+static void
+sgen_output_log_entry (SgenLogEntry *entry, gint64 stw_time, int generation)
+{
+       char full_timing_buff [1024];
+       full_timing_buff [0] = '\0';
+
+       if (!entry->is_overflow)
+                sprintf (full_timing_buff, "stw %.2fms", stw_time / 10000.0f);
+
+       switch (entry->type) {
+               case SGEN_LOG_NURSERY:
+                       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MINOR%s: (%s) time %.2fms, %s promoted %dK major size: %dK in use: %dK los size: %dK in use: %dK",
+                               entry->is_overflow ? "_OVERFLOW" : "",
+                               entry->reason ? entry->reason : "",
+                               entry->time / 10000.0f,
+                               (generation == GENERATION_NURSERY) ? full_timing_buff : "",
+                               entry->promoted_size / 1024,
+                               entry->major_size / 1024,
+                               entry->major_size_in_use / 1024,
+                               entry->los_size / 1024,
+                               entry->los_size_in_use / 1024);
+                       break;
+               case SGEN_LOG_MAJOR_SERIAL:
+                       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR%s: (%s) time %.2fms, %s los size: %dK in use: %dK",
+                               entry->is_overflow ? "_OVERFLOW" : "",
+                               entry->reason ? entry->reason : "",
+                               (int)entry->time / 10000.0f,
+                               full_timing_buff,
+                               entry->los_size / 1024,
+                               entry->los_size_in_use / 1024);
+                       break;
+               case SGEN_LOG_MAJOR_CONC_START:
+                       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR_CONCURRENT_START: (%s)", entry->reason ? entry->reason : "");
+                       break;
+               case SGEN_LOG_MAJOR_CONC_FINISH:
+                       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR_CONCURRENT_FINISH: (%s) time %.2fms, %s los size: %dK in use: %dK",
+                               entry->reason ? entry->reason : "",
+                               entry->time / 10000.0f,
+                               full_timing_buff,
+                               entry->los_size / 1024,
+                               entry->los_size_in_use / 1024);
+                       break;
+               case SGEN_LOG_MAJOR_SWEEP_FINISH:
+                       mono_trace (G_LOG_LEVEL_INFO, MONO_TRACE_GC, "GC_MAJOR_SWEEP: major size: %dK in use: %dK",
+                               entry->major_size / 1024,
+                               entry->major_size_in_use / 1024);
+                       break;
+               default:
+                       SGEN_ASSERT (0, FALSE, "Invalid log entry type");
+                       break;
+       }
+}
+
 void
-sgen_memgov_collection_end (int generation, GGTimingInfo* info, int info_count)
+sgen_memgov_collection_end (int generation, gint64 stw_time)
 {
-       int i;
-       for (i = 0; i < info_count; ++i) {
-               if (info[i].generation != -1)
-                       sgen_client_log_timing (&info [i], last_major_num_sections, last_los_memory_usage);
+       /*
+        * At this moment the world has been restarted which means we can log all pending entries
+        * without risking deadlocks.
+        */
+       if (mono_trace_is_traced (G_LOG_LEVEL_INFO, MONO_TRACE_GC)) {
+               size_t i;
+               SGEN_ASSERT (0, !sgen_is_world_stopped (), "We can't log if the world is stopped");
+               mono_coop_mutex_lock (&log_entries_mutex);
+               for (i = 0; i < log_entries.next_slot; i++) {
+                       sgen_output_log_entry (log_entries.data [i], stw_time, generation);
+                       sgen_free_internal (log_entries.data [i], INTERNAL_MEM_LOG_ENTRY);
+               }
+               sgen_pointer_queue_clear (&log_entries);
+               mono_coop_mutex_unlock (&log_entries_mutex);
        }
-       last_los_memory_usage = los_memory_usage;
 }
 
 /*
@@ -349,6 +479,10 @@ sgen_memgov_init (size_t max_heap, size_t soft_limit, gboolean debug_allowance,
        mono_counters_register ("Memgov alloc", MONO_COUNTER_GC | MONO_COUNTER_WORD | MONO_COUNTER_BYTES | MONO_COUNTER_VARIABLE, &total_alloc);
        mono_counters_register ("Memgov max alloc", MONO_COUNTER_GC | MONO_COUNTER_WORD | MONO_COUNTER_BYTES | MONO_COUNTER_MONOTONIC, &total_alloc_max);
 
+       mono_coop_mutex_init (&log_entries_mutex);
+
+       sgen_register_fixed_internal_mem_type (INTERNAL_MEM_LOG_ENTRY, sizeof (SgenLogEntry));
+
        if (max_heap == 0)
                return;
 
index 9bcd55b4d80ad157417567512f7363438029f468..d669e4730d18a058c44a026e9ae7dd48446c71a5 100644 (file)
@@ -14,15 +14,15 @@ gboolean sgen_memgov_try_alloc_space (mword size, int space);
 
 /* GC trigger heuristics */
 void sgen_memgov_minor_collection_start (void);
-void sgen_memgov_minor_collection_end (void);
+void sgen_memgov_minor_collection_end (const char *reason, gboolean is_overflow);
 
 void sgen_memgov_major_pre_sweep (void);
-void sgen_memgov_major_post_sweep (void);
-void sgen_memgov_major_collection_start (void);
-void sgen_memgov_major_collection_end (gboolean forced);
+void sgen_memgov_major_post_sweep (mword used_slots_size);
+void sgen_memgov_major_collection_start (gboolean concurrent, const char *reason);
+void sgen_memgov_major_collection_end (gboolean forced, gboolean concurrent, const char *reason, gboolean is_overflow);
 
 void sgen_memgov_collection_start (int generation);
-void sgen_memgov_collection_end (int generation, GGTimingInfo* info, int info_count);
+void sgen_memgov_collection_end (int generation, gint64 stw);
 
 gboolean sgen_need_major_collection (mword space_needed);
 
@@ -33,6 +33,26 @@ typedef enum {
        SGEN_ALLOC_ACTIVATE = 2
 } SgenAllocFlags;
 
+typedef enum {
+       SGEN_LOG_NURSERY,
+       SGEN_LOG_MAJOR_SERIAL,
+       SGEN_LOG_MAJOR_CONC_START,
+       SGEN_LOG_MAJOR_CONC_FINISH,
+       SGEN_LOG_MAJOR_SWEEP_FINISH
+} SgenLogType;
+
+typedef struct {
+       SgenLogType type;
+       const char *reason;
+       gboolean is_overflow;
+       gint64 time;
+       mword promoted_size;
+       mword major_size;
+       mword major_size_in_use;
+       mword los_size;
+       mword los_size_in_use;
+} SgenLogEntry;
+
 /* OS memory allocation */
 void* sgen_alloc_os_memory (size_t size, SgenAllocFlags flags, const char *assert_description);
 void* sgen_alloc_os_memory_aligned (size_t size, mword alignment, SgenAllocFlags flags, const char *assert_description);
index 26fcfd116af32464cb5d01bcb1a6573144c5082e..ab00a56d66dd26cca6eb188000031cde4e95d3f0 100644 (file)
@@ -37,6 +37,9 @@ static gboolean do_pin_stats = FALSE;
 static PinStatAddress *pin_stat_addresses = NULL;
 static size_t pinned_byte_counts [PIN_TYPE_MAX];
 
+static size_t pinned_bytes_in_generation [GENERATION_MAX];
+static int pinned_objects_in_generation [GENERATION_MAX];
+
 static SgenPointerQueue pinned_objects = SGEN_POINTER_QUEUE_INIT (INTERNAL_MEM_STATISTICS);
 
 static SgenHashTable pinned_class_hash_table = SGEN_HASH_TABLE_INIT (INTERNAL_MEM_STATISTICS, INTERNAL_MEM_STAT_PINNED_CLASS, sizeof (PinnedClassEntry), g_str_hash, g_str_equal);
@@ -66,6 +69,10 @@ sgen_pin_stats_reset (void)
        pin_stat_addresses = NULL;
        for (i = 0; i < PIN_TYPE_MAX; ++i)
                pinned_byte_counts [i] = 0;
+       for (i = 0; i < GENERATION_MAX; ++i) {
+               pinned_bytes_in_generation [i] = 0;
+               pinned_objects_in_generation [i] = 0;
+       }
        sgen_pointer_queue_clear (&pinned_objects);
        sgen_hash_table_clean (&pinned_class_hash_table);
        sgen_hash_table_clean (&global_remset_class_hash_table);
@@ -78,6 +85,8 @@ sgen_pin_stats_register_address (char *addr, int pin_type)
        PinStatAddress *node;
        int pin_type_bit = 1 << pin_type;
 
+       if (!do_pin_stats)
+               return;
        while (*node_ptr) {
                node = *node_ptr;
                if (addr == node->addr) {
@@ -153,13 +162,23 @@ register_vtable (GCVTable vtable, int pin_types)
 }
 
 void
-sgen_pin_stats_register_object (GCObject *obj, size_t size)
+sgen_pin_stats_register_object (GCObject *obj, int generation)
 {
        int pin_types = 0;
+       size_t size = 0;
+
+       if (binary_protocol_is_enabled ()) {
+               size = sgen_safe_object_get_size (obj);
+               pinned_bytes_in_generation [generation] += size;
+               ++pinned_objects_in_generation [generation];
+       }
 
        if (!do_pin_stats)
                return;
 
+       if (!size)
+               size = sgen_safe_object_get_size (obj);
+
        pin_stats_count_object_from_tree (obj, size, pin_stat_addresses, &pin_types);
        sgen_pointer_queue_add (&pinned_objects, obj);
 
@@ -183,12 +202,15 @@ sgen_pin_stats_register_global_remset (GCObject *obj)
 }
 
 void
-sgen_pin_stats_print_class_stats (void)
+sgen_pin_stats_report (void)
 {
        char *name;
        PinnedClassEntry *pinned_entry;
        GlobalRemsetClassEntry *remset_entry;
 
+       binary_protocol_pin_stats (pinned_objects_in_generation [GENERATION_NURSERY], pinned_bytes_in_generation [GENERATION_NURSERY],
+                       pinned_objects_in_generation [GENERATION_OLD], pinned_bytes_in_generation [GENERATION_OLD]);
+
        if (!do_pin_stats)
                return;
 
index cfe3db1acd0167bd08d1c7e285b6313736460ec3..6b2b2e33547f2c2009616a0d628c00a4fd6fa14b 100644 (file)
@@ -26,7 +26,7 @@ static size_t last_num_pinned = 0;
  * stay pinned, which means they can't move, therefore they can be scanned.
  */
 static SgenPointerQueue pin_queue_objs;
-static MonoCoopMutex pin_queue_mutex;
+static mono_mutex_t pin_queue_mutex;
 
 #define PIN_HASH_SIZE 1024
 static void *pin_hash_filter [PIN_HASH_SIZE];
@@ -34,13 +34,13 @@ static void *pin_hash_filter [PIN_HASH_SIZE];
 void
 sgen_pinning_init (void)
 {
-       mono_coop_mutex_init (&pin_queue_mutex);
+       mono_os_mutex_init (&pin_queue_mutex);
 }
 
 void
 sgen_init_pinning (void)
 {
-       mono_coop_mutex_lock (&pin_queue_mutex);
+       mono_os_mutex_lock (&pin_queue_mutex);
        memset (pin_hash_filter, 0, sizeof (pin_hash_filter));
        pin_queue.mem_type = INTERNAL_MEM_PIN_QUEUE;
        sgen_pointer_queue_clear (&pin_queue_objs);
@@ -51,7 +51,7 @@ sgen_finish_pinning (void)
 {
        last_num_pinned = pin_queue.next_slot;
        sgen_pointer_queue_clear (&pin_queue);
-       mono_coop_mutex_unlock (&pin_queue_mutex);
+       mono_os_mutex_unlock (&pin_queue_mutex);
 }
 
 void
@@ -66,12 +66,12 @@ sgen_scan_pin_queue_objects (ScanCopyContext ctx)
        int i;
        ScanObjectFunc scan_func = ctx.ops->scan_object;
 
-       mono_coop_mutex_lock (&pin_queue_mutex);
+       mono_os_mutex_lock (&pin_queue_mutex);
        for (i = 0; i < pin_queue_objs.next_slot; ++i) {
                GCObject *obj = (GCObject *)pin_queue_objs.data [i];
                scan_func (obj, sgen_obj_get_descriptor_safe (obj), ctx.queue);
        }
-       mono_coop_mutex_unlock (&pin_queue_mutex);
+       mono_os_mutex_unlock (&pin_queue_mutex);
 }
 
 void
index 3ab36e3bf660f380b9b21cf554f0e659899eb520..e6f1f775c917bbfcece04939dda8a6d4d0e3e3a5 100644 (file)
@@ -284,7 +284,7 @@ END_PROTOCOL_ENTRY
 BEGIN_PROTOCOL_ENTRY6 (binary_protocol_missing_remset, TYPE_POINTER, obj, TYPE_POINTER, obj_vtable, TYPE_INT, offset, TYPE_POINTER, value, TYPE_POINTER, value_vtable, TYPE_BOOL, value_pinned)
 DEFAULT_PRINT ()
 IS_ALWAYS_MATCH (FALSE)
-MATCH_INDEX (ptr == entry->obj ? 0 : ptr == entry->value ? 3 : ptr == (char*)entry->obj + entry->offset ? BINARY_PROTOCOL_MATCH : BINARY_PROTOCOL_NO_MATCH)
+MATCH_INDEX (ptr == entry->obj ? 0 : ptr == entry->value ? 3 : ptr == entry->obj + entry->offset ? BINARY_PROTOCOL_MATCH : BINARY_PROTOCOL_NO_MATCH)
 IS_VTABLE_MATCH (ptr == entry->obj_vtable || ptr == entry->value_vtable)
 END_PROTOCOL_ENTRY
 
@@ -331,7 +331,7 @@ IS_VTABLE_MATCH (FALSE)
 END_PROTOCOL_ENTRY_HEAVY
 
 BEGIN_PROTOCOL_ENTRY_HEAVY3 (binary_protocol_dislink_update, TYPE_POINTER, link, TYPE_POINTER, obj, TYPE_BOOL, track)
-CUSTOM_PRINT(entry->obj ? printf ("link %p obj %p track %d", entry->link, entry->obj, entry->track) : printf ("link %p obj %p", entry->link, entry->obj))
+CUSTOM_PRINT(entry->obj ? printf ("link 0x%"MWORD_FORMAT_SPEC_P" obj 0x%"MWORD_FORMAT_SPEC_P" track %d", entry->link, entry->obj, entry->track) : printf ("link 0x%"MWORD_FORMAT_SPEC_P" obj 0x%"MWORD_FORMAT_SPEC_P, entry->link, entry->obj))
 IS_ALWAYS_MATCH (FALSE)
 MATCH_INDEX (ptr == entry->link ? 0 : ptr == entry->obj ? 1 : BINARY_PROTOCOL_NO_MATCH)
 IS_VTABLE_MATCH (FALSE)
@@ -442,6 +442,20 @@ MATCH_INDEX (BINARY_PROTOCOL_MATCH)
 IS_VTABLE_MATCH (FALSE)
 END_PROTOCOL_ENTRY
 
+BEGIN_PROTOCOL_ENTRY4 (binary_protocol_header, TYPE_LONGLONG, check, TYPE_INT, version, TYPE_INT, ptr_size, TYPE_BOOL, little_endian)
+DEFAULT_PRINT ()
+IS_ALWAYS_MATCH (TRUE)
+MATCH_INDEX (BINARY_PROTOCOL_MATCH)
+IS_VTABLE_MATCH (FALSE)
+END_PROTOCOL_ENTRY_FLUSH
+
+BEGIN_PROTOCOL_ENTRY4 (binary_protocol_pin_stats, TYPE_INT, objects_pinned_in_nursery, TYPE_SIZE, bytes_pinned_in_nursery, TYPE_INT, objects_pinned_in_major, TYPE_SIZE, bytes_pinned_in_major)
+DEFAULT_PRINT ()
+IS_ALWAYS_MATCH (TRUE)
+MATCH_INDEX (BINARY_PROTOCOL_MATCH)
+IS_VTABLE_MATCH (FALSE)
+END_PROTOCOL_ENTRY
+
 #undef BEGIN_PROTOCOL_ENTRY0
 #undef BEGIN_PROTOCOL_ENTRY1
 #undef BEGIN_PROTOCOL_ENTRY2
index ffc47f248de05a2c17a3f93648118bed4e2079ea..2e59b6359a4b1aea6f4e650998ae1590e4318d50 100644 (file)
@@ -19,6 +19,7 @@
 #include "sgen-thread-pool.h"
 #include "sgen-client.h"
 #include "mono/utils/mono-membar.h"
+#include "mono/utils/mono-proclib.h"
 
 #include <errno.h>
 #include <string.h>
@@ -73,9 +74,16 @@ free_filename (char *filename)
 }
 
 static void
-binary_protocol_open_file (void)
+binary_protocol_open_file (gboolean assert_on_failure)
 {
        char *filename;
+#ifdef F_SETLK
+       struct flock lock;
+       lock.l_type = F_WRLCK;
+       lock.l_whence = SEEK_SET;
+       lock.l_start = 0;
+       lock.l_len = 0;
+#endif
 
        if (file_size_limit > 0)
                filename = filename_for_index (current_file_index);
@@ -83,12 +91,24 @@ binary_protocol_open_file (void)
                filename = filename_or_prefix;
 
        do {
-               binary_protocol_file = open (filename, O_CREAT|O_WRONLY|O_TRUNC, 0644);
-               if (binary_protocol_file == -1 && errno != EINTR)
-                       break; /* Failed */
+               binary_protocol_file = open (filename, O_CREAT | O_WRONLY, 0644);
+               if (binary_protocol_file == -1) {
+                       if (errno != EINTR)
+                               break; /* Failed */
+#ifdef F_SETLK
+               } else if (fcntl (binary_protocol_file, F_SETLK, &lock) == -1) {
+                       /* The lock for the file is already taken. Fail */
+                       close (binary_protocol_file);
+                       binary_protocol_file = -1;
+                       break;
+#endif
+               } else {
+                       /* We have acquired the lock. Truncate the file */
+                       ftruncate (binary_protocol_file, 0);
+               }
        } while (binary_protocol_file == -1);
 
-       if (binary_protocol_file == -1)
+       if (binary_protocol_file == -1 && assert_on_failure)
                g_error ("sgen binary protocol: failed to open file");
 
        if (file_size_limit > 0)
@@ -100,12 +120,25 @@ void
 binary_protocol_init (const char *filename, long long limit)
 {
 #ifdef HAVE_UNISTD_H
-       filename_or_prefix = (char *)sgen_alloc_internal_dynamic (strlen (filename) + 1, INTERNAL_MEM_BINARY_PROTOCOL, TRUE);
-       strcpy (filename_or_prefix, filename);
-
        file_size_limit = limit;
 
-       binary_protocol_open_file ();
+       /* Original name length + . + pid length in hex + null terminator */
+       filename_or_prefix = g_strdup_printf ("%s", filename);
+       binary_protocol_open_file (FALSE);
+
+       if (binary_protocol_file == -1) {
+               /* Another process owns the file, try adding the pid suffix to the filename */
+               gint32 pid = mono_process_current_pid ();
+               g_free (filename_or_prefix);
+               filename_or_prefix = g_strdup_printf ("%s.%x", filename, pid);
+               binary_protocol_open_file (TRUE);
+       }
+
+       /* If we have a file size limit, we might need to open additional files */
+       if (file_size_limit == 0)
+               g_free (filename_or_prefix);
+
+       binary_protocol_header (PROTOCOL_HEADER_CHECK, PROTOCOL_HEADER_VERSION, SIZEOF_VOID_P, G_BYTE_ORDER == G_LITTLE_ENDIAN);
 #else
        g_error ("sgen binary protocol: not supported");
 #endif
@@ -218,7 +251,7 @@ binary_protocol_check_file_overflow (void)
        ++current_file_index;
        current_file_size = 0;
 
-       binary_protocol_open_file ();
+       binary_protocol_open_file (TRUE);
 }
 #endif
 
index 5ec3680fc5a58018a358eaa583afdf9613753ddf..1c10d29d5c0e367f07e8d26a0163177da59c1b41 100644 (file)
 
 #include "sgen-gc.h"
 
+#define PROTOCOL_HEADER_CHECK 0xde7ec7ab1ec0de
+#define PROTOCOL_HEADER_VERSION 1
+
 /* Special indices returned by MATCH_INDEX. */
 #define BINARY_PROTOCOL_NO_MATCH (-1)
 #define BINARY_PROTOCOL_MATCH (-2)
 
+/* We pack all protocol structs by default unless specified otherwise */
+#ifndef PROTOCOL_STRUCT_ATTR
+#ifdef __GNUC__
+#define PROTOCOL_STRUCT_ATTR __attribute__ ((packed))
+#else
+#define PROTOCOL_STRUCT_ATTR
+#endif
+#endif
+
 #define PROTOCOL_ID(method) method ## _id
 #define PROTOCOL_STRUCT(method) method ## _struct
 #define CLIENT_PROTOCOL_NAME(method) sgen_client_ ## method
 
+#ifndef TYPE_INT
 #define TYPE_INT int
+#endif
+#ifndef TYPE_LONGLONG
 #define TYPE_LONGLONG long long
+#endif
+#ifndef TYPE_SIZE
 #define TYPE_SIZE size_t
+#endif
+#ifndef TYPE_POINTER
 #define TYPE_POINTER gpointer
+#endif
+#ifndef TYPE_BOOL
 #define TYPE_BOOL gboolean
+#endif
 
 enum {
 #define BEGIN_PROTOCOL_ENTRY0(method) PROTOCOL_ID(method),
@@ -60,29 +82,29 @@ enum {
 
 #define BEGIN_PROTOCOL_ENTRY0(method)
 #define BEGIN_PROTOCOL_ENTRY1(method,t1,f1) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
        } PROTOCOL_STRUCT(method);
 #define BEGIN_PROTOCOL_ENTRY2(method,t1,f1,t2,f2) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
                t2 f2; \
        } PROTOCOL_STRUCT(method);
 #define BEGIN_PROTOCOL_ENTRY3(method,t1,f1,t2,f2,t3,f3) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
                t2 f2; \
                t3 f3; \
        } PROTOCOL_STRUCT(method);
 #define BEGIN_PROTOCOL_ENTRY4(method,t1,f1,t2,f2,t3,f3,t4,f4) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
                t2 f2; \
                t3 f3; \
                t4 f4; \
        } PROTOCOL_STRUCT(method);
 #define BEGIN_PROTOCOL_ENTRY5(method,t1,f1,t2,f2,t3,f3,t4,f4,t5,f5) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
                t2 f2; \
                t3 f3; \
@@ -90,7 +112,7 @@ enum {
                t5 f5; \
        } PROTOCOL_STRUCT(method);
 #define BEGIN_PROTOCOL_ENTRY6(method,t1,f1,t2,f2,t3,f3,t4,f4,t5,f5,t6,f6) \
-       typedef struct { \
+       typedef struct PROTOCOL_STRUCT_ATTR { \
                t1 f1; \
                t2 f2; \
                t3 f3; \
index 56a235aa30f42473511957269500bc45a86870c1..62c14a5392bc394ffef8420e9741629b458d1b2b 100644 (file)
@@ -22,6 +22,7 @@
 static inline GCObject*
 alloc_for_promotion (GCVTable vtable, GCObject *obj, size_t objsize, gboolean has_references)
 {
+       total_promoted_size += objsize;
        return major_collector.alloc_object (vtable, objsize, has_references);
 }
 
index 3606607809e954c2888f1dceae8b70d0ea4cb135..3b7ae668a203d537bd2372d15d62e7630c5db7e6 100644 (file)
@@ -254,8 +254,10 @@ alloc_for_promotion (GCVTable vtable, GCObject *obj, size_t objsize, gboolean ha
        int age;
 
        age = get_object_age (obj);
-       if (age >= promote_age)
+       if (age >= promote_age) {
+               total_promoted_size += objsize;
                return major_collector.alloc_object (vtable, objsize, has_references);
+       }
 
        /* Promote! */
        ++age;
@@ -265,8 +267,10 @@ alloc_for_promotion (GCVTable vtable, GCObject *obj, size_t objsize, gboolean ha
         age_alloc_buffers [age].next += objsize;
        } else {
                p = alloc_for_promotion_slow_path (age, objsize);
-               if (!p)
+               if (!p) {
+                       total_promoted_size += objsize;
                        return major_collector.alloc_object (vtable, objsize, has_references);
+               }
        }
 
        /* FIXME: assumes object layout */
index 5838bad988c0862c0d023c07a28322d953fea0c3..2bd8f5dff12e5266fa7c39893d1b5e7fdb1fec29 100644 (file)
@@ -22,6 +22,12 @@ JITTEST_PROG_RUN = MONO_CFG_DIR=$(mono_build_root)/runtime/etc $(LIBTOOL) --mode
 
 RUNTIME_ARGS=--config tests-config --optimize=all --debug
 
+if HOST_WIN32
+TEST_RUNNER_ARGS=--config tests-config --runtime $(if $(MONO_EXECUTABLE),$(shell cygpath -w -a $(MONO_EXECUTABLE) | sed 's/\\/\\\\/g'),mono)
+else
+TEST_RUNNER_ARGS=--config tests-config --runtime $(if $(MONO_EXECUTABLE),$(MONO_EXECUTABLE),mono)
+endif
+
 CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
 
 with_mono_path = MONO_PATH=$(CLASS)
@@ -436,7 +442,8 @@ BASE_TEST_CS_SRC=           \
        pinvoke_ppci.cs \
        pinvoke_ppcf.cs \
        pinvoke_ppcd.cs \
-       bug-29585.cs
+       bug-29585.cs    \
+       priority.cs
 
 TEST_CS_SRC_DIST=      \
        $(BASE_TEST_CS_SRC)     \
@@ -585,6 +592,12 @@ endif
 
 endif
 
+if ENABLE_COOP
+COOP_DISABLED_TESTS= thunks.exe
+else
+COOP_DISABLED_TESTS= 
+endif
+
 # The two finalizer tests only work under sgen
 # gc-altstack.exe fails under boehm because it has no support for altstack
 # bug-459094.exe creates an extremely deep directory tree
@@ -598,7 +611,8 @@ DISABLED_TESTS=                     \
        delegate-invoke.exe \
        bug-Xamarin-5278.exe \
        $(PLATFORM_DISABLED_TESTS) \
-       $(EXTRA_DISABLED_TESTS)
+       $(EXTRA_DISABLED_TESTS) \
+       $(COOP_DISABLED_TESTS)
 
 DISABLED_TESTS_WRENCH= \
        $(DISABLED_TESTS)       \
@@ -768,25 +782,7 @@ endif
 test-env-options:
        MONO_ENV_OPTIONS="--version" $(RUNTIME) array-init.exe | grep -q Architecture:
 
-if AMD64
-test-sgen : sgen-tests
-else
-if X86
-if HOST_WIN32
-test-sgen :
-else
-test-sgen : sgen-tests
-endif
-else
-if ARM
 test-sgen : sgen-tests
-else
-if S390X
-test-sgen : sgen-regular-tests
-endif
-endif
-endif
-endif
 
 # Precompile the test assemblies in parallel
 compile-tests:
@@ -878,11 +874,11 @@ runtest: $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQS
 
 runtest-managed: test-runner.exe $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS)
        @if [ "x$$CI" = "x1" ]; then disabled_tests="$(DISABLED_TESTS_WRENCH)"; else disabled_tests="$(DISABLED_TESTS)"; fi; \
-       $(RUNTIME) --debug ./test-runner.exe -j a --testsuite-name "runtime" --timeout 300 --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL)
+       $(RUNTIME) --debug ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name "runtime" --timeout 300 --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL)
 
 runtest-managed-serial: test-runner.exe $(TESTSI_CS) $(TESTSI_IL) $(TESTBS) libtest.la $(PREREQSI_IL) $(PREREQSI_CS)
        @if [ "x$$CI" = "x1" ]; then disabled_tests="$(DISABLED_TESTS_WRENCH)"; else disabled_tests="$(DISABLED_TESTS)"; fi; \
-       $(RUNTIME) --debug ./test-runner.exe -j 1 --testsuite-name "runtime" --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL)
+       $(RUNTIME) --debug ./test-runner.exe $(TEST_RUNNER_ARGS) -j 1 --testsuite-name "runtime" --disabled "$${disabled_tests}" $(TESTSI_CS) $(TESTBS) $(TESTSI_IL)
 
 testjit:
        @if test x$(M) != x0; then $(MAKE) runtest-managed; else $(MAKE) runtest; fi
@@ -964,14 +960,16 @@ debug-casts:
        @$(MCS) -r:TestDriver.dll $(srcdir)/debug-casts.cs
        @$(RUNTIME) --debug=casts debug-casts.exe
 
-EXTRA_DIST += sgen-bridge.cs sgen-descriptors.cs sgen-gshared-vtype.cs sgen-bridge-major-fragmentation.cs sgen-domain-unload.cs sgen-weakref-stress.cs sgen-cementing-stress.cs sgen-case-23400.cs     finalizer-wait.cs critical-finalizers.cs sgen-domain-unload-2.cs sgen-suspend.cs sgen-new-threads-dont-join-stw.cs sgen-bridge-xref.cs bug-17590.cs sgen-toggleref.cs sgen-bridge-gchandle.cs
+EXTRA_DIST += sgen-bridge.cs sgen-descriptors.cs sgen-gshared-vtype.cs sgen-bridge-major-fragmentation.cs sgen-domain-unload.cs sgen-weakref-stress.cs sgen-cementing-stress.cs sgen-case-23400.cs     finalizer-wait.cs critical-finalizers.cs sgen-domain-unload-2.cs sgen-suspend.cs sgen-new-threads-dont-join-stw.cs sgen-new-threads-dont-join-stw-2.cs sgen-bridge-xref.cs bug-17590.cs sgen-toggleref.cs sgen-bridge-gchandle.cs
 
 
 sgen-tests:
        $(MAKE) sgen-regular-tests
+if !S390X
        $(MAKE) sgen-toggleref-tests
        $(MAKE) sgen-bridge-tests
        $(MAKE) sgen-bridge2-tests
+endif
 
 SGEN_REGULAR_TESTS =   \
        finalizer-wait.exe      \
@@ -984,6 +982,7 @@ SGEN_REGULAR_TESTS =        \
        sgen-cementing-stress.exe       \
        sgen-case-23400.exe     \
        sgen-new-threads-dont-join-stw.exe      \
+       sgen-new-threads-dont-join-stw-2.exe    \
        gc-graystack-stress.exe \
        bug-17590.exe
 
@@ -998,21 +997,21 @@ sgen-regular-tests: $(SGEN_REGULAR_TESTS)
        $(MAKE) sgen-regular-tests-ms-split-clear-at-gc
 
 sgen-regular-tests-plain: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-conc: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-conc-split: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-split: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-split-95: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-plain-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-conc-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 sgen-regular-tests-ms-split-clear-at-gc: $(SGEN_REGULAR_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_REGULAR_TESTS)
 
 SGEN_TOGGLEREF_TESTS=  \
        sgen-toggleref.exe
@@ -1028,21 +1027,21 @@ sgen-toggleref-tests: $(SGEN_TOGGLEREF_TESTS)
        $(MAKE) sgen-toggleref-tests-ms-split-clear-at-gc
 
 sgen-toggleref-tests-plain: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-conc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-conc-split: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-split: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-split-95: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="" MONO_GC_PARAMS="toggleref-test,minor=split,alloc-ratio=95" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-plain-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-conc-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 sgen-toggleref-tests-ms-split-clear-at-gc: $(SGEN_TOGGLEREF_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="clear-at-gc" MONO_GC_PARAMS="toggleref-test,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_TOGGLEREF_TESTS)
 
 SGEN_BRIDGE_TESTS=     \
        sgen-bridge.exe \
@@ -1059,21 +1058,21 @@ sgen-bridge-tests: $(SGEN_BRIDGE_TESTS)
        $(MAKE) sgen-bridge-tests-ms-split-tarjan-bridge
 
 sgen-bridge-tests-plain: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-ms-conc: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-ms-split: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-plain-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-ms-conc-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-ms-split-new-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-plain-tarjan-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 sgen-bridge-tests-ms-split-tarjan-bridge: $(SGEN_BRIDGE_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE_TESTS)
 
 SGEN_BRIDGE2_TESTS=    \
        sgen-bridge-xref.exe
@@ -1089,21 +1088,21 @@ sgen-bridge2-tests: $(SGEN_BRIDGE2_TESTS)
        $(MAKE) sgen-bridge2-tests-ms-split-tarjan-bridge
 
 sgen-bridge2-tests-plain: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-ms-conc: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-ms-split: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-plain-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-ms-conc-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,major=marksweep-conc" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-ms-split-new-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=new,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-plain-tarjan-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 sgen-bridge2-tests-ms-split-tarjan-bridge: $(SGEN_BRIDGE2_TESTS) test-runner.exe
-       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
+       MONO_ENV_OPTIONS="--gc=sgen" MONO_GC_DEBUG="bridge=2Bridge" MONO_GC_PARAMS="bridge-implementation=tarjan,minor=split" $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 900 $(SGEN_BRIDGE2_TESTS)
 
 
 SGEN_BRIDGE3_TESTS=    \
@@ -1358,7 +1357,7 @@ test-generic-sharing-normal: $(GSHARED_TESTS)
        done
 
 test-generic-sharing-managed: test-runner.exe $(GSHARED_TESTS)
-       @$(RUNTIME) ./test-runner.exe -j a --testsuite-name "gshared" --opt-sets "gshared gshared,shared gshared,-inline gshared,-inline,shared" $(GSHARED_TESTS)
+       @$(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name "gshared" --opt-sets "gshared gshared,shared gshared,-inline gshared,-inline,shared" $(GSHARED_TESTS)
 
 if NACL_CODEGEN
 test-generic-sharing:
@@ -1435,13 +1434,13 @@ test-unhandled-exception-2: $(UNHANDLED_EXCEPTION_1_TESTS) $(UNHANDLED_EXCEPTION
        $(MAKE) test-unhandled-exception-2-255-without-managed-handler
 
 test-unhandled-exception-2-1-with-managed-handler: $(UNHANDLED_EXCEPTION_1_TESTS) test-runner.exe
-       $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS)
+       $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS)
 test-unhandled-exception-2-1-without-managed-handler: $(UNHANDLED_EXCEPTION_1_TESTS) test-runner.exe
-       TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS)
+       TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --expected-exit-code 1 $(UNHANDLED_EXCEPTION_1_TESTS)
 test-unhandled-exception-2-255-with-managed-handler: $(UNHANDLED_EXCEPTION_255_TESTS) test-runner.exe
-       $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS)
+       $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS)
 test-unhandled-exception-2-255-without-managed-handler: $(UNHANDLED_EXCEPTION_255_TESTS) test-runner.exe
-       TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS)
+       TEST_UNHANDLED_EXCEPTION_HANDLER=1 $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) -j a --testsuite-name $@ --expected-exit-code 255 $(UNHANDLED_EXCEPTION_255_TESTS)
 
 endif
 
@@ -1466,7 +1465,7 @@ PROCESS_STRESS_TESTS=     \
                process-leak.exe
 
 test-process-stress: $(PROCESS_STRESS_TESTS) test-runner.exe
-       $(RUNTIME) ./test-runner.exe --testsuite-name $@ --timeout 600 $(PROCESS_STRESS_TESTS)
+       $(RUNTIME) ./test-runner.exe $(TEST_RUNNER_ARGS) --testsuite-name $@ --timeout 600 $(PROCESS_STRESS_TESTS)
 
 coreclr-gcstress:
        $(MAKE) -C $(mono_build_root)/acceptance-tests coreclr-gcstress
index dbd2e9ad1cc108d8ee2ebbb383738f9b84999af4..1f2930da9655300e0a32a48da28c4f7ec9d69bd1 100644 (file)
@@ -1228,14 +1228,29 @@ mono_test_marshal_stringbuilder_ref (char **s)
        return 0;
 }
 
+#ifdef __GNUC__
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wc++-compat"
+#endif
+
+/*
+* Standard C and C++ doesn't allow empty structs, empty structs will always have a size of 1 byte.
+* GCC have an extension to allow empty structs, https://gcc.gnu.org/onlinedocs/gcc/Empty-Structures.html.
+* This cause a little dilemma since runtime build using none GCC compiler will not be compatible with
+* GCC build C libraries and the other way around. On platforms where empty structs has size of 1 byte
+* it must be represented in call and cannot be dropped. On Windows x64 structs will always be represented in the call
+* meaning that an empty struct must have a representation in the callee in order to correctly follow the ABI used by the
+* C/C++ standard and the runtime.
+*/
 typedef struct {
-#ifndef __GNUC__
+#if !defined(__GNUC__) || (defined(TARGET_WIN32) && defined(TARGET_AMD64))
     char a;
 #endif
 } EmptyStruct;
+
+#ifdef __GNUC__
 #pragma GCC diagnostic pop
+#endif
 
 LIBTEST_API int STDCALL 
 mono_test_marshal_empty_string_array (char **array)
@@ -1339,6 +1354,8 @@ mono_test_return_empty_struct (int a)
 {
        EmptyStruct s;
 
+       memset (&s, 0, sizeof (s));
+
        g_assert (a == 42);
 
        return s;
diff --git a/mono/tests/priority.cs b/mono/tests/priority.cs
new file mode 100644 (file)
index 0000000..67591dd
--- /dev/null
@@ -0,0 +1,88 @@
+using System;
+using System.Threading;
+using System.Runtime;
+using System.Text;
+
+public class Tests
+{
+       public static int Main ()
+       {
+               return TestDriver.RunTests (typeof (Tests));
+       }
+
+       public static void TestMethod()
+       {
+               Console.WriteLine("{0} with {1} priority",
+                       Thread.CurrentThread.Name, 
+                       Thread.CurrentThread.Priority.ToString());
+               Thread.Sleep(6000);
+               Console.WriteLine("{0} with {1} priority",
+                       Thread.CurrentThread.Name, 
+                       Thread.CurrentThread.Priority.ToString());
+       }
+       
+       public static int test_0_thread_priority () 
+       {
+               int res = 0;
+
+               Thread Me = Thread.CurrentThread;
+               Thread TestThread = new Thread(new ThreadStart(TestMethod));
+
+               Console.WriteLine("Starting test thread with priority to AboveNormal");  
+               ThreadPriority before = TestThread.Priority;
+               TestThread.Priority = ThreadPriority.AboveNormal;
+               TestThread.Name = "TestMethod";
+               TestThread.Start();
+               ThreadPriority after = TestThread.Priority;
+               Console.WriteLine("Priority: {0} {1}",before,after);
+               if (before != ThreadPriority.Normal)
+                       res = 1;
+               else if (after != ThreadPriority.AboveNormal)
+                       res = 2;
+               else {
+                       TestThread.Priority = ThreadPriority.Normal;
+                       after = TestThread.Priority;
+                       Console.WriteLine("Setting test thread priority to Normal");     
+                       Thread.Sleep(1000);
+                       Console.WriteLine("Priority: {0} {1}",before,after);
+
+                       if (after != ThreadPriority.Normal) 
+                               res = 3;
+                       else {
+                               Console.WriteLine("Setting test thread priority to AboveNormal");        
+                               before = after;
+                               TestThread.Priority=ThreadPriority.AboveNormal;
+                               after = TestThread.Priority;
+                               Thread.Sleep(1000);
+                               Console.WriteLine("Priority: {0} {1}",before,after);
+
+                               if (after != ThreadPriority.AboveNormal) 
+                                       res = 4;
+                               else {
+                                       before = after;
+                                       Console.WriteLine("Setting test thread priority to BelowNormal"); 
+                                       TestThread.Priority=ThreadPriority.BelowNormal;
+                                       after = TestThread.Priority;
+                                       Console.WriteLine("Priority: {0} {1}",before,after);
+                                       Thread.Sleep(1000);
+                                       
+                                       if (after != ThreadPriority.BelowNormal)
+                                               res = 5;
+                                       else {
+                                               before = after;
+                                               Console.WriteLine("Setting test thread priority back to Normal");        
+                                               TestThread.Priority=ThreadPriority.Normal;
+                                               after = TestThread.Priority;
+                                               Console.WriteLine("Priority: {0} {1}",before,after);
+                                               Thread.Sleep(1000);
+
+                                               if (after != ThreadPriority.Normal)
+                                                       res = 6;
+                                       }
+                               }
+                       }
+               }
+               TestThread.Join();
+               return(res);
+       }
+}
diff --git a/mono/tests/sgen-new-threads-dont-join-stw-2.cs b/mono/tests/sgen-new-threads-dont-join-stw-2.cs
new file mode 100644 (file)
index 0000000..34dace1
--- /dev/null
@@ -0,0 +1,50 @@
+
+using System;
+using System.Collections.Concurrent;
+using System.Collections.Generic;
+using System.Threading;
+
+class Driver
+{
+       public static void Main ()
+       {
+               BlockingCollection<Thread> threads = new BlockingCollection<Thread> (128);
+
+               Thread producer = new Thread (new ThreadStart (() => {
+                       DateTime start = DateTime.Now;
+
+                       while (DateTime.Now - start < TimeSpan.FromSeconds (30)) {
+                               Thread worker = new Thread (new ThreadStart (() => {
+                                       HashSet<string> hashset = new HashSet<string> ();
+                                       for (int i = 0; i < 50000; ++i) {
+                                               hashset.Add(string.Concat (i, i));
+                                               if (i % 10 == 0)
+                                                       Thread.Yield ();
+                                       }
+                               }));
+
+                               worker.Start ();
+
+                               threads.Add (worker);
+
+                               Console.WriteLine ("Started thread {0} ({1} running concurrently)", worker.ManagedThreadId, threads.Count);
+                       }
+
+                       threads.CompleteAdding ();
+               }));
+
+               Thread consumer = new Thread (new ThreadStart(() => {
+                       while (!threads.IsCompleted) {
+                               Thread worker = threads.Take ();
+                               worker.Join ();
+                               Console.WriteLine ("Joined thread {0}", worker.ManagedThreadId);
+                       }
+               }));
+
+               producer.Start ();
+               consumer.Start ();
+
+               producer.Join ();
+               consumer.Join ();
+       }
+}
index dfc88b5c3407e183fc82e4d033cc84dcf38fa8b1..0d2110898cc8c9cc4ea139451f7d3837ad8ec701 100644 (file)
@@ -22,7 +22,7 @@ public class Tests
                Thread.Sleep (1000);
                finished = true;
                sw.Stop ();
-               if (sw.ElapsedMilliseconds > 1500) {
+               if (sw.ElapsedMilliseconds > 2000) {
                        Console.WriteLine (sw.ElapsedMilliseconds);
                        return 1;
                } else {
index 95011edf2c9c2d6d200ad577696870a5813372f0..8a0d2a96a05a3a5671d84819c2ec813ecf23e1ea 100644 (file)
@@ -11,6 +11,7 @@
 using System;
 using System.IO;
 using System.Threading;
+using System.Text;
 using System.Diagnostics;
 using System.Collections.Generic;
 using System.Globalization;
@@ -29,8 +30,8 @@ public class TestRunner
 
        class ProcessData {
                public string test;
-               public StreamWriter stdout, stderr;
-               public string stdoutFile, stderrFile;
+               public StringBuilder stdout, stderr;
+               public string stdoutName, stderrName;
        }
 
        class TestInfo {
@@ -49,6 +50,7 @@ public class TestRunner
 
                string disabled_tests = null;
                string runtime = "mono";
+               string config = null;
                var opt_sets = new List<string> ();
 
                // Process options
@@ -86,6 +88,13 @@ public class TestRunner
                                        }
                                        runtime = args [i + 1];
                                        i += 2;
+                               } else if (args [i] == "--config") {
+                                       if (i + 1 >= args.Length) {
+                                               Console.WriteLine ("Missing argument to --config command line option.");
+                                               return 1;
+                                       }
+                                       config = args [i + 1];
+                                       i += 2;
                                } else if (args [i] == "--opt-sets") {
                                        if (i + 1 >= args.Length) {
                                                Console.WriteLine ("Missing argument to --opt-sets command line option.");
@@ -206,6 +215,8 @@ public class TestRunner
                                        info.RedirectStandardOutput = true;
                                        info.RedirectStandardError = true;
                                        info.EnvironmentVariables[ENV_TIMEOUT] = timeout.ToString();
+                                       if (config != null)
+                                               info.EnvironmentVariables["MONO_CONFIG"] = config;
                                        Process p = new Process ();
                                        p.StartInfo = info;
 
@@ -216,27 +227,21 @@ public class TestRunner
                                        if (opt_set != null)
                                                log_prefix = "." + opt_set.Replace ("-", "no").Replace (",", "_");
 
-                                       data.stdoutFile = test + log_prefix + ".stdout";
-                                       data.stdout = new StreamWriter (new FileStream (data.stdoutFile, FileMode.Create));
+                                       data.stdoutName = test + log_prefix + ".stdout";
+                                       data.stdout = new StringBuilder ();
 
-                                       data.stderrFile = test + log_prefix + ".stderr";
-                                       data.stderr = new StreamWriter (new FileStream (data.stderrFile, FileMode.Create));
+                                       data.stderrName = test + log_prefix + ".stderr";
+                                       data.stderr = new StringBuilder ();
 
                                        p.OutputDataReceived += delegate (object sender, DataReceivedEventArgs e) {
                                                if (e.Data != null) {
-                                                       data.stdout.WriteLine (e.Data);
-                                               } else {
-                                                       data.stdout.Flush ();
-                                                       data.stdout.Close ();
+                                                       data.stdout.AppendLine (e.Data);
                                                }
                                        };
 
                                        p.ErrorDataReceived += delegate (object sender, DataReceivedEventArgs e) {
                                                if (e.Data != null) {
-                                                       data.stderr.WriteLine (e.Data);
-                                               } else {
-                                                       data.stderr.Flush ();
-                                                       data.stderr.Close ();
+                                                       data.stderr.AppendLine (e.Data);
                                                }
                                        };
 
@@ -259,7 +264,7 @@ public class TestRunner
                                                } catch {
                                                }
 
-                                               output.Write ("timed out");
+                                               output.Write ($"timed out ({timeout}s)");
 
                                                try {
                                                        p.Kill ();
@@ -383,10 +388,10 @@ public class TestRunner
                                writer.WriteAttributeString ("asserts", "1");
                                writer.WriteStartElement ("failure");
                                writer.WriteStartElement ("message");
-                               writer.WriteCData (DumpPseudoTrace (pd.stdoutFile));
+                               writer.WriteCData (FilterInvalidXmlChars (pd.stdout.ToString ()));
                                writer.WriteEndElement ();
                                writer.WriteStartElement ("stack-trace");
-                               writer.WriteCData (DumpPseudoTrace (pd.stderrFile));
+                               writer.WriteCData (FilterInvalidXmlChars (pd.stderr.ToString ()));
                                writer.WriteEndElement ();
                                writer.WriteEndElement ();
                                writer.WriteEndElement ();
@@ -402,10 +407,10 @@ public class TestRunner
                                writer.WriteAttributeString ("asserts", "1");
                                writer.WriteStartElement ("failure");
                                writer.WriteStartElement ("message");
-                               writer.WriteCData (DumpPseudoTrace (pd.stdoutFile));
+                               writer.WriteCData (FilterInvalidXmlChars (pd.stdout.ToString ()));
                                writer.WriteEndElement ();
                                writer.WriteStartElement ("stack-trace");
-                               writer.WriteCData (DumpPseudoTrace (pd.stderrFile));
+                               writer.WriteCData (FilterInvalidXmlChars (pd.stderr.ToString ()));
                                writer.WriteEndElement ();
                                writer.WriteEndElement ();
                                writer.WriteEndElement ();
@@ -440,8 +445,8 @@ public class TestRunner
                        foreach (ProcessData pd in failed) {
                                Console.WriteLine ();
                                Console.WriteLine (pd.test);
-                               DumpFile (pd.stdoutFile);
-                               DumpFile (pd.stderrFile);
+                               DumpFile (pd.stdoutName, pd.stdout.ToString ());
+                               DumpFile (pd.stderrName, pd.stderr.ToString ());
                        }
                }
 
@@ -451,27 +456,18 @@ public class TestRunner
                        foreach (ProcessData pd in timedout) {
                                Console.WriteLine ();
                                Console.WriteLine (pd.test);
-                               DumpFile (pd.stdoutFile);
-                               DumpFile (pd.stderrFile);
+                               DumpFile (pd.stdoutName, pd.stdout.ToString ());
+                               DumpFile (pd.stderrName, pd.stderr.ToString ());
                        }
                }
 
                return (ntimedout == 0 && nfailed == 0) ? 0 : 1;
        }
        
-       static void DumpFile (string filename) {
-               if (File.Exists (filename)) {
-                       Console.WriteLine ("=============== {0} ===============", filename);
-                       Console.WriteLine (File.ReadAllText (filename));
-                       Console.WriteLine ("=============== EOF ===============");
-               }
-       }
-
-       static string DumpPseudoTrace (string filename) {
-               if (File.Exists (filename))
-                       return FilterInvalidXmlChars (File.ReadAllText (filename));
-               else
-                       return string.Empty;
+       static void DumpFile (string filename, string text) {
+               Console.WriteLine ("=============== {0} ===============", filename);
+               Console.WriteLine (text);
+               Console.WriteLine ("=============== EOF ===============");
        }
 
        static string FilterInvalidXmlChars (string text) {
index 2c86105e9a0d2d48c1c8dd866fc915bc2cc295e3..d67011313f8c0fc0320329460480ceec4e373104 100644 (file)
@@ -1,5 +1,7 @@
 <configuration>
        <dllmap dll="cygwin1.dll" target="@LIBC@" />
        <dllmap dll="libc" target="@LIBC@" />
+       <dllmap os="windows" cpu="x86" dll="libtest" target="../../msvc/build/sgen/Win32/bin/Release/libtest.dll" />
+       <dllmap os="windows" cpu="x86-64" dll="libtest" target="../../msvc/build/sgen/x64/bin/Release/libtest.dll" />
 </configuration>
 
index 3438039a4b0cb91900fa6e057be353b38b47e04b..95ebae349c29aa1cbd562a8642ec09a17299c5b1 100644 (file)
 static void
 test2_arena_push_pop ()
 {
-       MonoHandleArena *top = NULL;
-
-       MonoHandleArena *new_arena1 = g_malloc0 (mono_handle_arena_size ());
-       mono_handle_arena_stack_push (&top, new_arena1);
-
-       MonoHandleArena *new_arena2 = g_malloc0 (mono_handle_arena_size ());
-
-       mono_handle_arena_stack_push (&top, new_arena2);
-
-       g_assert (top == new_arena2);
-
-       mono_handle_arena_stack_pop (&top, new_arena2);
-
-       g_free (new_arena2);
-
-       g_assert (top == new_arena1);
-
-       mono_handle_arena_stack_pop (&top, new_arena1);
-
-       g_assert (top == NULL);
-       
-       g_free (new_arena1);
+       HandleStack *h = mono_handle_stack_alloc ();
+       mono_handle_stack_free (h);
 }
 
 
index b62633307b46f43e5547e6957ca6d5d6c404b0fd..02d447ad511469067266123670983bb25e694c40 100644 (file)
@@ -27,6 +27,9 @@ monoutils_sources = \
        mono-dl-darwin.c        \
        mono-dl-posix.c         \
        mono-dl.h               \
+       mono-log-windows.c      \
+       mono-log-common.c       \
+       mono-log-posix.c        \
        mono-internal-hash.c    \
        mono-internal-hash.h    \
        mono-io-portability.c   \
index f4ae1b54100e4550201e99c71ecf673951f815a8..6f5606bdb80919b7890bd9bed1da15997a77757d 100644 (file)
@@ -12,6 +12,7 @@
 
 #include <mono/utils/checked-build.h>
 #include <mono/utils/mono-threads.h>
+#include <mono/utils/mono-threads-coop.h>
 #include <mono/utils/mono-tls.h>
 #include <mono/metadata/mempool.h>
 #include <mono/metadata/metadata-internals.h>
@@ -183,10 +184,9 @@ checked_build_thread_transition (const char *transition, void *info, int from_st
        if (!mono_check_mode_enabled (MONO_CHECK_MODE_THREAD))
                return;
 
-       MonoThreadInfo *cur = mono_thread_info_current_unchecked ();
        CheckState *state = get_state ();
        /* We currently don't record external changes as those are hard to reason about. */
-       if (cur != info)
+       if (!mono_thread_info_is_current (info))
                return;
 
        if (state->transitions->len >= MAX_TRANSITIONS)
index 25e663177ef39760a804e16eae34add0147f2f7a..1f4ca74112a498f7b4b35316c4ebffebd369eb73 100644 (file)
@@ -201,7 +201,7 @@ void check_metadata_store_local(void *from, void *to);
 
 void checked_build_thread_transition(const char *transition, void *info, int from_state, int suspend_count, int next_state, int suspend_count_delta);
 
-void mono_fatal_with_history(const char *msg, ...);
+G_GNUC_NORETURN void mono_fatal_with_history(const char *msg, ...);
 
 #else
 
index 3be8342a49873dbc9e2796d44a76a81d5a9302e3..d103ef6aa333eeb96a920d8e62ef0af79db5ecb2 100644 (file)
@@ -477,8 +477,18 @@ mono_lock_free_free (gpointer ptr, size_t block_size)
                g_assert (old_anchor.data.state != STATE_EMPTY);
 
                if (InterlockedCompareExchangePointer ((gpointer * volatile)&heap->active, NULL, desc) == desc) {
-                       /* We own it, so we free it. */
-                       desc_retire (desc);
+                       /*
+                        * We own desc, check if it's still empty, in which case we retire it.
+                        * If it's partial we need to put it back either on the active slot or
+                        * on the partial list.
+                        */
+                       if (desc->anchor.data.state == STATE_EMPTY) {
+                               desc_retire (desc);
+                       } else if (desc->anchor.data.state == STATE_PARTIAL) {
+                               if (InterlockedCompareExchangePointer ((gpointer * volatile)&heap->active, desc, NULL) != NULL)
+                                       heap_put_partial (desc);
+
+                       }
                } else {
                        /*
                         * Somebody else must free it, so we do some
index 16dc6f9f65810736b6349ae56d485a9109adcab7..83c2bdcc690dcf1847789d4491897350cf6dea90 100644 (file)
 #include <valgrind/memcheck.h>
 #endif
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-#include <malloc.h>
-#include <nacl/nacl_dyncode.h>
-#include <mono/mini/mini.h>
-#endif
 #include <mono/utils/mono-os-mutex.h>
 
 
@@ -52,16 +47,6 @@ static size_t dynamic_code_frees_count;
 #define MIN_ALIGN 16
 #else
 #define MIN_ALIGN 8
-#endif
-#ifdef __native_client_codegen__
-/* For Google Native Client, all targets of indirect control flow need to    */
-/* be aligned to bundle boundary. 16 bytes on ARM, 32 bytes on x86.
- * MIN_ALIGN was updated to force alignment for calls from
- * tramp-<arch>.c to mono_global_codeman_reserve()     */
-/* and mono_domain_code_reserve().                                           */
-#undef MIN_ALIGN
-#define MIN_ALIGN kNaClBundleSize
-
 #endif
 
 /* if a chunk has less than this amount of free space it's considered full */
@@ -99,138 +84,10 @@ struct _MonoCodeManager {
        CodeChunk *current;
        CodeChunk *full;
        CodeChunk *last;
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       GHashTable *hash;
-#endif
 };
 
 #define ALIGN_INT(val,alignment) (((val) + (alignment - 1)) & ~(alignment - 1))
 
-#if defined(__native_client_codegen__) && defined(__native_client__)
-/* End of text segment, set by linker. 
- * Dynamic text starts on the next allocated page.
- */
-extern char etext[];
-char *next_dynamic_code_addr = NULL;
-
-/*
- * This routine gets the next available bundle aligned
- * pointer in the dynamic code section.  It does not check
- * for the section end, this error will be caught in the
- * service runtime.
- */
-void*
-allocate_code(intptr_t increment)
-{
-       char *addr;
-       if (increment < 0) return NULL;
-       increment = increment & kNaClBundleMask ? (increment & ~kNaClBundleMask) + kNaClBundleSize : increment;
-       addr = next_dynamic_code_addr;
-       next_dynamic_code_addr += increment;
-       return addr;
-}
-
-int
-nacl_is_code_address (void *target)
-{
-       return (char *)target < next_dynamic_code_addr;
-}
-
-/* Fill code buffer with arch-specific NOPs. */
-void
-mono_nacl_fill_code_buffer (guint8 *data, int size);
-
-#ifndef USE_JUMP_TABLES
-const int kMaxPatchDepth = 32;
-__thread unsigned char **patch_source_base = NULL;
-__thread unsigned char **patch_dest_base = NULL;
-__thread int *patch_alloc_size = NULL;
-__thread int patch_current_depth = -1;
-__thread int allow_target_modification = 1;
-
-static void
-nacl_jit_check_init ()
-{
-       if (patch_source_base == NULL) {
-               patch_source_base = g_malloc (kMaxPatchDepth * sizeof(unsigned char *));
-               patch_dest_base = g_malloc (kMaxPatchDepth * sizeof(unsigned char *));
-               patch_alloc_size = g_malloc (kMaxPatchDepth * sizeof(int));
-       }
-}
-#endif
-
-void
-nacl_allow_target_modification (int val)
-{
-#ifndef USE_JUMP_TABLES
-        allow_target_modification = val;
-#endif /* USE_JUMP_TABLES */
-}
-
-/* Given a patch target, modify the target such that patching will work when
- * the code is copied to the data section.
- */
-void*
-nacl_modify_patch_target (unsigned char *target)
-{
-       /*
-        * There's no need in patch tricks for jumptables,
-        * as we always patch same jumptable.
-        */
-#ifndef USE_JUMP_TABLES
-       /* This seems like a bit of an ugly way to do this but the advantage
-        * is we don't have to worry about all the conditions in
-        * mono_resolve_patch_target, and it can be used by all the bare uses
-        * of <arch>_patch.
-        */
-       unsigned char *sb;
-       unsigned char *db;
-
-       if (!allow_target_modification) return target;
-
-       nacl_jit_check_init ();
-       sb = patch_source_base[patch_current_depth];
-       db = patch_dest_base[patch_current_depth];
-
-       if (target >= sb && (target < sb + patch_alloc_size[patch_current_depth])) {
-               /* Do nothing.  target is in the section being generated.
-                * no need to modify, the disp will be the same either way.
-                */
-       } else {
-               int target_offset = target - db;
-               target = sb + target_offset;
-       }
-#endif
-       return target;
-}
-
-void*
-nacl_inverse_modify_patch_target (unsigned char *target)
-{
-       /*
-        * There's no need in patch tricks for jumptables,
-        * as we always patch same jumptable.
-        */
-#ifndef USE_JUMP_TABLES
-       unsigned char *sb;
-       unsigned char *db;
-       int target_offset;
-
-       if (!allow_target_modification) return target;
-
-       nacl_jit_check_init ();
-       sb = patch_source_base[patch_current_depth];
-       db = patch_dest_base[patch_current_depth];
-
-       target_offset = target - sb;
-       target = db + target_offset;
-#endif
-       return target;
-}
-
-
-#endif /* __native_client_codegen && __native_client__ */
-
 #define VALLOC_FREELIST_SIZE 16
 
 static mono_mutex_t valloc_mutex;
@@ -331,32 +188,7 @@ mono_code_manager_cleanup (void)
 MonoCodeManager* 
 mono_code_manager_new (void)
 {
-       MonoCodeManager *cman = (MonoCodeManager *) g_malloc0 (sizeof (MonoCodeManager));
-       if (!cman)
-               return NULL;
-#if defined(__native_client_codegen__) && defined(__native_client__)
-       if (next_dynamic_code_addr == NULL) {
-               const guint kPageMask = 0xFFFF; /* 64K pages */
-               next_dynamic_code_addr = (uintptr_t)(etext + kPageMask) & ~kPageMask;
-#if defined (__GLIBC__)
-               /* TODO: For now, just jump 64MB ahead to avoid dynamic libraries. */
-               next_dynamic_code_addr += (uintptr_t)0x4000000;
-#else
-               /* Workaround bug in service runtime, unable to allocate */
-               /* from the first page in the dynamic code section.    */
-               next_dynamic_code_addr += (uintptr_t)0x10000;
-#endif
-       }
-       cman->hash =  g_hash_table_new (NULL, NULL);
-# ifndef USE_JUMP_TABLES
-       if (patch_source_base == NULL) {
-               patch_source_base = g_malloc (kMaxPatchDepth * sizeof(unsigned char *));
-               patch_dest_base = g_malloc (kMaxPatchDepth * sizeof(unsigned char *));
-               patch_alloc_size = g_malloc (kMaxPatchDepth * sizeof(int));
-       }
-# endif
-#endif
-       return cman;
+       return (MonoCodeManager *) g_malloc0 (sizeof (MonoCodeManager));
 }
 
 /**
@@ -601,7 +433,6 @@ new_codechunk (CodeChunk *last, int dynamic, int size)
 void*
 mono_code_manager_reserve_align (MonoCodeManager *cman, int size, int alignment)
 {
-#if !defined(__native_client__) || !defined(__native_client_codegen__)
        CodeChunk *chunk, *prev;
        void *ptr;
        guint32 align_mask = alignment - 1;
@@ -664,31 +495,6 @@ mono_code_manager_reserve_align (MonoCodeManager *cman, int size, int alignment)
        ptr = (void*)((((uintptr_t)chunk->data + align_mask) & ~(uintptr_t)align_mask) + chunk->pos);
        chunk->pos = ((char*)ptr - chunk->data) + size;
        return ptr;
-#else
-       unsigned char *temp_ptr, *code_ptr;
-       /* Round up size to next bundle */
-       alignment = kNaClBundleSize;
-       size = (size + kNaClBundleSize) & (~kNaClBundleMask);
-       /* Allocate a temp buffer */
-       temp_ptr = memalign (alignment, size);
-       g_assert (((uintptr_t)temp_ptr & kNaClBundleMask) == 0);
-       /* Allocate code space from the service runtime */
-       code_ptr = allocate_code (size);
-       /* Insert pointer to code space in hash, keyed by buffer ptr */
-       g_hash_table_insert (cman->hash, temp_ptr, code_ptr);
-
-#ifndef USE_JUMP_TABLES
-       nacl_jit_check_init ();
-
-       patch_current_depth++;
-       patch_source_base[patch_current_depth] = temp_ptr;
-       patch_dest_base[patch_current_depth] = code_ptr;
-       patch_alloc_size[patch_current_depth] = size;
-       g_assert (patch_current_depth < kMaxPatchDepth);
-#endif
-
-       return temp_ptr;
-#endif
 }
 
 /**
@@ -720,50 +526,12 @@ mono_code_manager_reserve (MonoCodeManager *cman, int size)
 void
 mono_code_manager_commit (MonoCodeManager *cman, void *data, int size, int newsize)
 {
-#if !defined(__native_client__) || !defined(__native_client_codegen__)
        g_assert (newsize <= size);
 
        if (cman->current && (size != newsize) && (data == cman->current->data + cman->current->pos - size)) {
                cman->current->pos -= size - newsize;
        }
-#else
-       unsigned char *code;
-       int status;
-       g_assert (NACL_BUNDLE_ALIGN_UP(newsize) <= size);
-       code = g_hash_table_lookup (cman->hash, data);
-       g_assert (code != NULL);
-       mono_nacl_fill_code_buffer ((uint8_t*)data + newsize, size - newsize);
-       newsize = NACL_BUNDLE_ALIGN_UP(newsize);
-       g_assert ((GPOINTER_TO_UINT (data) & kNaClBundleMask) == 0);
-       g_assert ((newsize & kNaClBundleMask) == 0);
-       status = nacl_dyncode_create (code, data, newsize);
-       if (status != 0) {
-               unsigned char *codep;
-               fprintf(stderr, "Error creating Native Client dynamic code section attempted to be\n"
-                               "emitted at %p (hex dissasembly of code follows):\n", code);
-               for (codep = data; codep < data + newsize; codep++)
-                       fprintf(stderr, "%02x ", *codep);
-               fprintf(stderr, "\n");
-               g_assert_not_reached ();
-       }
-       g_hash_table_remove (cman->hash, data);
-# ifndef USE_JUMP_TABLES
-       g_assert (data == patch_source_base[patch_current_depth]);
-       g_assert (code == patch_dest_base[patch_current_depth]);
-       patch_current_depth--;
-       g_assert (patch_current_depth >= -1);
-# endif
-       free (data);
-#endif
-}
-
-#if defined(__native_client_codegen__) && defined(__native_client__)
-void *
-nacl_code_manager_get_code_dest (MonoCodeManager *cman, void *data)
-{
-       return g_hash_table_lookup (cman->hash, data);
 }
-#endif
 
 /**
  * mono_code_manager_size:
@@ -794,27 +562,3 @@ mono_code_manager_size (MonoCodeManager *cman, int *used_size)
                *used_size = used;
        return size;
 }
-
-#ifdef __native_client_codegen__
-# if defined(TARGET_ARM)
-/* Fill empty space with UDF instruction used as halt on ARM. */
-void
-mono_nacl_fill_code_buffer (guint8 *data, int size)
-{
-        guint32* data32 = (guint32*)data;
-        int i;
-        g_assert(size % 4 == 0);
-        for (i = 0; i < size / 4; i++)
-                data32[i] = 0xE7FEDEFF;
-}
-# elif (defined(TARGET_X86) || defined(TARGET_AMD64))
-/* Fill empty space with HLT instruction */
-void
-mono_nacl_fill_code_buffer(guint8 *data, int size)
-{
-        memset (data, 0xf4, size);
-}
-# else
-#  error "Not ported"
-# endif
-#endif
index 17d53b3b0328ab81161646b1e4fade010c367af2..8a1070a101dff637cd9324236fd69f633caf453b 100644 (file)
@@ -23,27 +23,5 @@ MONO_API void             mono_code_manager_cleanup (void);
 typedef int    (*MonoCodeManagerFunc)      (void *data, int csize, int size, void *user_data);
 void            mono_code_manager_foreach  (MonoCodeManager *cman, MonoCodeManagerFunc func, void *user_data);
 
-#if defined( __native_client_codegen__ ) && defined( __native_client__ )
-
-#ifdef __arm__
-#define kNaClBundleSize 16
-#else
-#define kNaClBundleSize 32
-#endif
-#define kNaClBundleMask (kNaClBundleSize-1)
-
-#ifndef USE_JUMP_TABLES
-extern __thread unsigned char **patch_source_base;
-extern __thread unsigned char **patch_dest_base;
-extern __thread int patch_current_depth;
-#endif
-
-int              nacl_is_code_address             (void *target);
-void*            nacl_code_manager_get_code_dest  (MonoCodeManager *cman, void *data);
-void             nacl_allow_target_modification   (int val);
-void*            nacl_modify_patch_target         (unsigned char *target);
-void*            nacl_inverse_modify_patch_target (unsigned char *target);
-#endif /* __native_client__ */
-
 #endif /* __MONO_CODEMAN_H__ */
 
index 374171cf6747b828f5e85b5e649cc07fd08a6a8e..2704c8662a8d1e2919a99fb3afb91361a551bb1d 100644 (file)
@@ -253,6 +253,8 @@ typedef struct {
 #if defined(HOST_WATCHOS)
 
 #define MONO_CONTEXT_GET_CURRENT(ctx) do { \
+       gpointer _dummy; \
+    ctx.regs [ARMREG_SP] = &_dummy; \
 } while (0);
 
 #else
@@ -453,31 +455,105 @@ typedef struct {
                : "memory"                      \
        )
 
-#define MONO_ARCH_HAS_MONO_CONTEXT 1
-
-#else 
+#else /* !defined(__mono_ppc64__) */
 
 typedef struct {
-       gulong sc_ir;          // pc 
-       gulong sc_sp;          // r1
-       mgreg_t regs [19]; /*FIXME, this must be changed to 32 for sgen*/
-       double fregs [18];
+       mgreg_t sc_ir;          // pc
+       mgreg_t sc_sp;          // r1
+       mgreg_t regs [32];
+       double fregs [32];
 } MonoContext;
 
 /* we have the stack pointer, not the base pointer in sigcontext */
-#define MONO_CONTEXT_SET_IP(ctx,ip) do { (ctx)->sc_ir = (gulong)ip; } while (0);
+#define MONO_CONTEXT_SET_IP(ctx,ip) do { (ctx)->sc_ir = (mgreg_t)ip; } while (0);
 /* FIXME: should be called SET_SP */
-#define MONO_CONTEXT_SET_BP(ctx,bp) do { (ctx)->sc_sp = (gulong)bp; } while (0);
-#define MONO_CONTEXT_SET_SP(ctx,sp) do { (ctx)->sc_sp = (gulong)sp; } while (0);
+#define MONO_CONTEXT_SET_BP(ctx,bp) do { (ctx)->sc_sp = (mgreg_t)bp; } while (0);
+#define MONO_CONTEXT_SET_SP(ctx,sp) do { (ctx)->sc_sp = (mgreg_t)sp; } while (0);
 
 #define MONO_CONTEXT_GET_IP(ctx) ((gpointer)((ctx)->sc_ir))
 #define MONO_CONTEXT_GET_BP(ctx) ((gpointer)((ctx)->regs [ppc_r31-13]))
 #define MONO_CONTEXT_GET_SP(ctx) ((gpointer)((ctx)->sc_sp))
+
+#define MONO_CONTEXT_GET_CURRENT(ctx)  \
+       __asm__ __volatile__(   \
+               "std 0, 0(%0)\n"        \
+               "std 1, 4(%0)\n"        \
+               "std 0, 4*0+8(%0)\n"    \
+               "std 1, 4*1+8(%0)\n"    \
+               "std 2, 4*2+8(%0)\n"    \
+               "std 3, 4*3+8(%0)\n"    \
+               "std 4, 4*4+8(%0)\n"    \
+               "std 5, 4*5+8(%0)\n"    \
+               "std 6, 4*6+8(%0)\n"    \
+               "std 7, 4*7+8(%0)\n"    \
+               "std 8, 4*8+8(%0)\n"    \
+               "std 9, 4*9+8(%0)\n"    \
+               "std 10, 4*10+8(%0)\n"  \
+               "std 11, 4*11+8(%0)\n"  \
+               "std 12, 4*12+8(%0)\n"  \
+               "std 13, 4*13+8(%0)\n"  \
+               "std 14, 4*14+8(%0)\n"  \
+               "std 15, 4*15+8(%0)\n"  \
+               "std 16, 4*16+8(%0)\n"  \
+               "std 17, 4*17+8(%0)\n"  \
+               "std 18, 4*18+8(%0)\n"  \
+               "std 19, 4*19+8(%0)\n"  \
+               "std 20, 4*20+8(%0)\n"  \
+               "std 21, 4*21+8(%0)\n"  \
+               "std 22, 4*22+8(%0)\n"  \
+               "std 23, 4*23+8(%0)\n"  \
+               "std 24, 4*24+8(%0)\n"  \
+               "std 25, 4*25+8(%0)\n"  \
+               "std 26, 4*26+8(%0)\n"  \
+               "std 27, 4*27+8(%0)\n"  \
+               "std 28, 4*28+8(%0)\n"  \
+               "std 29, 4*29+8(%0)\n"  \
+               "std 30, 4*30+8(%0)\n"  \
+               "std 31, 4*31+8(%0)\n"  \
+               "stfd 0, 8*0+4*32+8(%0)\n"      \
+               "stfd 1, 8*1+4*32+8(%0)\n"      \
+               "stfd 2, 8*2+4*32+8(%0)\n"      \
+               "stfd 3, 8*3+4*32+8(%0)\n"      \
+               "stfd 4, 8*4+4*32+8(%0)\n"      \
+               "stfd 5, 8*5+4*32+8(%0)\n"      \
+               "stfd 6, 8*6+4*32+8(%0)\n"      \
+               "stfd 7, 8*7+4*32+8(%0)\n"      \
+               "stfd 8, 8*8+4*32+8(%0)\n"      \
+               "stfd 9, 8*9+4*32+8(%0)\n"      \
+               "stfd 10, 8*10+4*32+8(%0)\n"    \
+               "stfd 11, 8*11+4*32+8(%0)\n"    \
+               "stfd 12, 8*12+4*32+8(%0)\n"    \
+               "stfd 13, 8*13+4*32+8(%0)\n"    \
+               "stfd 14, 8*14+4*32+8(%0)\n"    \
+               "stfd 15, 8*15+4*32+8(%0)\n"    \
+               "stfd 16, 8*16+4*32+8(%0)\n"    \
+               "stfd 17, 8*17+4*32+8(%0)\n"    \
+               "stfd 18, 8*18+4*32+8(%0)\n"    \
+               "stfd 19, 8*19+4*32+8(%0)\n"    \
+               "stfd 20, 8*20+4*32+8(%0)\n"    \
+               "stfd 21, 8*21+4*32+8(%0)\n"    \
+               "stfd 22, 8*22+4*32+8(%0)\n"    \
+               "stfd 23, 8*23+4*32+8(%0)\n"    \
+               "stfd 24, 8*24+4*32+8(%0)\n"    \
+               "stfd 25, 8*25+4*32+8(%0)\n"    \
+               "stfd 26, 8*26+4*32+8(%0)\n"    \
+               "stfd 27, 8*27+4*32+8(%0)\n"    \
+               "stfd 28, 8*28+4*32+8(%0)\n"    \
+               "stfd 29, 8*29+4*32+8(%0)\n"    \
+               "stfd 30, 8*30+4*32+8(%0)\n"    \
+               "stfd 31, 8*31+4*32+8(%0)\n"    \
+               : : "r" (&(ctx))        \
+               : "memory"                      \
+       )
+
 #endif
 
+#define MONO_ARCH_HAS_MONO_CONTEXT 1
+
 #elif defined(__sparc__) || defined(sparc) /* defined(__mono_ppc__) */
 
 typedef struct MonoContext {
+       mgreg_t regs [15];
        guint8 *ip;
        gpointer *sp;
        gpointer *fp;
@@ -491,6 +567,54 @@ typedef struct MonoContext {
 #define MONO_CONTEXT_GET_BP(ctx) ((gpointer)((ctx)->fp))
 #define MONO_CONTEXT_GET_SP(ctx) ((gpointer)((ctx)->sp))
 
+#ifdef __sparcv9
+#define MONO_CONTEXT_GET_CURRENT(ctx)  \
+       __asm__ __volatile__(   \
+               "st %%g1,[%0]\n"        \
+               "st %%g2,[%0+0x08]\n"   \
+               "st %%g3,[%0+0x10]\n"   \
+               "st %%g4,[%0+0x18]\n"   \
+               "st %%g5,[%0+0x20]\n"   \
+               "st %%g6,[%0+0x28]\n"   \
+               "st %%g7,[%0+0x30]\n"   \
+               "st %%o0,[%0+0x38]\n"   \
+               "st %%o1,[%0+0x40]\n"   \
+               "st %%o2,[%0+0x48]\n"   \
+               "st %%o3,[%0+0x50]\n"   \
+               "st %%o4,[%0+0x58]\n"   \
+               "st %%o5,[%0+0x60]\n"   \
+               "st %%o6,[%0+0x68]\n"   \
+               "st %%o7,[%0+0x70]\n"   \
+               :                       \
+               : "r" (&(ctx))          \
+               : "memory"                      \
+       )
+#else
+#define MONO_CONTEXT_GET_CURRENT(ctx)  \
+       __asm__ __volatile__(   \
+               "st %%g1,[%0]\n"        \
+               "st %%g2,[%0+0x04]\n"   \
+               "st %%g3,[%0+0x08]\n"   \
+               "st %%g4,[%0+0x0c]\n"   \
+               "st %%g5,[%0+0x10]\n"   \
+               "st %%g6,[%0+0x14]\n"   \
+               "st %%g7,[%0+0x18]\n"   \
+               "st %%o0,[%0+0x1c]\n"   \
+               "st %%o1,[%0+0x20]\n"   \
+               "st %%o2,[%0+0x24]\n"   \
+               "st %%o3,[%0+0x28]\n"   \
+               "st %%o4,[%0+0x2c]\n"   \
+               "st %%o5,[%0+0x30]\n"   \
+               "st %%o6,[%0+0x34]\n"   \
+               "st %%o7,[%0+0x38]\n"   \
+               :                       \
+               : "r" (&(ctx))          \
+               : "memory"                      \
+       )
+#endif
+
+#define MONO_ARCH_HAS_MONO_CONTEXT 1
+
 #elif defined(__ia64__) /*defined(__sparc__) || defined(sparc) */
 
 #ifndef UNW_LOCAL_ONLY
index 0a812754019e814dd9e7be61fbb78edd66a0a3d6..92ae719d7ba653080ecada657c71f3263678dba8 100644 (file)
@@ -6,7 +6,7 @@
 #include <glib.h>
 
 #include "mono-os-mutex.h"
-#include "mono-threads.h"
+#include "mono-threads-api.h"
 
 G_BEGIN_DECLS
 
@@ -50,11 +50,11 @@ mono_coop_mutex_lock (MonoCoopMutex *mutex)
        if (mono_os_mutex_trylock (&mutex->m) == 0)
                return 0;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        res = mono_os_mutex_lock (&mutex->m);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return res;
 }
@@ -88,11 +88,11 @@ mono_coop_cond_wait (MonoCoopCond *cond, MonoCoopMutex *mutex)
 {
        gint res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        res = mono_os_cond_wait (&cond->c, &mutex->m);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return res;
 }
@@ -102,11 +102,11 @@ mono_coop_cond_timedwait (MonoCoopCond *cond, MonoCoopMutex *mutex, guint32 time
 {
        gint res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        res = mono_os_cond_timedwait (&cond->c, &mutex->m, timeout_ms);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return res;
 }
index bcf45a2f294d526dcbea6a3abbcffa48d4fdbb9f..81c987ed74070107a4400e07f8fabf28b6cf865a 100644 (file)
@@ -6,7 +6,7 @@
 #include <glib.h>
 
 #include "mono-os-semaphore.h"
-#include "mono-threads.h"
+#include "mono-threads-api.h"
 
 G_BEGIN_DECLS
 
@@ -35,11 +35,11 @@ mono_coop_sem_wait (MonoCoopSem *sem, MonoSemFlags flags)
 {
        gint res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        res = mono_os_sem_wait (&sem->s, flags);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return res;
 }
@@ -49,11 +49,11 @@ mono_coop_sem_timedwait (MonoCoopSem *sem, guint timeout_ms, MonoSemFlags flags)
 {
        gint res;
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        res = mono_os_sem_timedwait (&sem->s, timeout_ms, flags);
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return res;
 }
index 63607a8fb89eb962ba99887b2941a5963cd6a7ed..e143901748d710d2e2f8bce87d31b0bf32dbe102 100644 (file)
@@ -33,8 +33,8 @@ typedef struct {
 } MonoErrorInternal;
 
 #define error_init(error) do { \
-       (error)->error_code = MONO_ERROR_NONE;  \
-       (error)->flags = 0;     \
+       ((MonoErrorInternal*)(error))->error_code = MONO_ERROR_NONE;    \
+       ((MonoErrorInternal*)(error))->flags = 0;       \
 } while (0);
 
 #define is_ok(error) ((error)->error_code == MONO_ERROR_NONE)
@@ -113,6 +113,9 @@ mono_error_set_invalid_operation (MonoError *error, const char *msg_format, ...)
 void
 mono_error_set_exception_instance (MonoError *error, MonoException *exc);
 
+void
+mono_error_set_invalid_program (MonoError *oerror, const char *msg_format, ...);
+
 MonoException*
 mono_error_prepare_exception (MonoError *error, MonoError *error_out);
 
index 84d04781e708927500ec5fc106ec46066cacfda4..7e186b6b717ce06b2f4103bb2ab3abe22e5ce2df 100644 (file)
@@ -8,10 +8,12 @@
  */
 #include <glib.h>
 
+#include <config.h>
 #include "mono-error.h"
 #include "mono-error-internals.h"
 
 #include <mono/metadata/exception.h>
+#include <mono/metadata/exception-internals.h>
 #include <mono/metadata/debug-helpers.h>
 #include <mono/metadata/object-internals.h>
 
@@ -39,6 +41,8 @@ is_managed_exception (MonoErrorInternal *error)
 static void
 mono_error_prepare (MonoErrorInternal *error)
 {
+       /* mono_error_set_* after a mono_error_cleanup without an intervening init */
+       g_assert (error->error_code != MONO_ERROR_CLEANUP_CALLED_SENTINEL);
        if (error->error_code != MONO_ERROR_NONE)
                return;
 
@@ -106,15 +110,30 @@ void
 mono_error_cleanup (MonoError *oerror)
 {
        MonoErrorInternal *error = (MonoErrorInternal*)oerror;
-       if (error->error_code == MONO_ERROR_NONE)
+       short int orig_error_code = error->error_code;
+       gboolean free_strings = error->flags & MONO_ERROR_FREE_STRINGS;
+       gboolean has_instance_handle = is_managed_exception (error);
+
+       /* Two cleanups in a row without an intervening init. */
+       g_assert (orig_error_code != MONO_ERROR_CLEANUP_CALLED_SENTINEL);
+
+       /* Mark it as cleaned up. */
+       error->error_code = MONO_ERROR_CLEANUP_CALLED_SENTINEL;
+       error->flags = 0;
+
+       if (orig_error_code == MONO_ERROR_NONE)
                return;
 
-       if (is_managed_exception (error))
+
+       if (has_instance_handle)
                mono_gchandle_free (error->exn.instance_handle);
 
+
        g_free ((char*)error->full_message);
        g_free ((char*)error->full_message_with_fields);
-       if (!(error->flags & MONO_ERROR_FREE_STRINGS)) //no memory was allocated
+       error->full_message = NULL;
+       error->full_message_with_fields = NULL;
+       if (!free_strings) //no memory was allocated
                return;
 
        g_free ((char*)error->type_name);
@@ -123,6 +142,9 @@ mono_error_cleanup (MonoError *oerror)
        g_free ((char*)error->exception_name_space);
        g_free ((char*)error->exception_name);
        g_free ((char*)error->first_argument);
+       error->type_name = error->assembly_name = error->member_name = error->exception_name_space = error->exception_name = error->first_argument = NULL;
+       error->exn.klass = NULL;
+
 }
 
 gboolean
@@ -420,6 +442,17 @@ mono_error_set_invalid_operation (MonoError *oerror, const char *msg_format, ...
        va_end (args);
 }
 
+void
+mono_error_set_invalid_program (MonoError *oerror, const char *msg_format, ...)
+{
+       MonoErrorInternal *error = (MonoErrorInternal*)oerror;
+
+       mono_error_prepare (error);
+       error->error_code = MONO_ERROR_INVALID_PROGRAM;
+
+       set_error_message ();
+}
+
 void
 mono_error_set_exception_instance (MonoError *oerror, MonoException *exc)
 {
@@ -542,7 +575,7 @@ mono_error_prepare_exception (MonoError *oerror, MonoError *error_out)
                                break;
                        }
 
-                       exception = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "MissingMethodException", type_name, method_name);
+                       exception = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "MissingMethodException", type_name, method_name, error_out);
                        if (exception)
                                set_message_on_exception (exception, error, error_out);
                } else {
@@ -562,7 +595,7 @@ mono_error_prepare_exception (MonoError *oerror, MonoError *error_out)
                                break;
                        }
                        
-                       exception = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "MissingFieldException", type_name, field_name);
+                       exception = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "MissingFieldException", type_name, field_name, error_out);
                        if (exception)
                                set_message_on_exception (exception, error, error_out);
                } else {
@@ -584,7 +617,7 @@ mono_error_prepare_exception (MonoError *oerror, MonoError *error_out)
                                }
                        }
 
-                       exception = mono_exception_from_name_two_strings (mono_get_corlib (), "System", "TypeLoadException", type_name, assembly_name);
+                       exception = mono_exception_from_name_two_strings_checked (mono_get_corlib (), "System", "TypeLoadException", type_name, assembly_name, error_out);
                        if (exception)
                                set_message_on_exception (exception, error, error_out);
                } else {
@@ -610,9 +643,9 @@ mono_error_prepare_exception (MonoError *oerror, MonoError *error_out)
                        }
 
                        if (error->error_code == MONO_ERROR_FILE_NOT_FOUND)
-                               exception = mono_exception_from_name_two_strings (mono_get_corlib (), "System.IO", "FileNotFoundException", msg, assembly_name);
+                               exception = mono_exception_from_name_two_strings_checked (mono_get_corlib (), "System.IO", "FileNotFoundException", msg, assembly_name, error_out);
                        else
-                               exception = mono_exception_from_name_two_strings (mono_defaults.corlib, "System", "BadImageFormatException", msg, assembly_name);
+                               exception = mono_exception_from_name_two_strings_checked (mono_defaults.corlib, "System", "BadImageFormatException", msg, assembly_name, error_out);
                } else {
                        if (error->error_code == MONO_ERROR_FILE_NOT_FOUND)
                                exception = mono_exception_from_name_msg (mono_get_corlib (), "System.IO", "FileNotFoundException", error->full_message);
@@ -664,6 +697,17 @@ mono_error_prepare_exception (MonoError *oerror, MonoError *error_out)
                exception = (MonoException*) mono_gchandle_get_target (error->exn.instance_handle);
                break;
 
+       case MONO_ERROR_CLEANUP_CALLED_SENTINEL:
+               mono_error_set_execution_engine (error_out, "MonoError reused after mono_error_cleanup");
+               break;
+
+       case MONO_ERROR_INVALID_PROGRAM: {
+               gboolean lacks_message = error->flags & MONO_ERROR_INCOMPLETE;
+               if (lacks_message)
+                       return mono_exception_from_name_msg (mono_defaults.corlib, "System", "InvalidProgramException", "");
+               else
+                       return mono_exception_from_name_msg (mono_defaults.corlib, "System", "InvalidProgramException", error->full_message);
+       }
        default:
                mono_error_set_execution_engine (error_out, "Invalid error-code %d", error->error_code);
        }
index 5e1102ec2b842006b8d799e93f969267fef68101..0aba0e1d61abb4219d6cfc15a9a8ead976c1ceaa 100644 (file)
@@ -26,13 +26,18 @@ enum {
        MONO_ERROR_ARGUMENT = 7,
        MONO_ERROR_ARGUMENT_NULL = 11,
        MONO_ERROR_NOT_VERIFIABLE = 8,
+       MONO_ERROR_INVALID_PROGRAM = 12,
+
        /*
         * This is a generic error mechanism is you need to raise an arbitrary corlib exception.
         * You must pass the exception name otherwise prepare_exception will fail with internal execution. 
         */
        MONO_ERROR_GENERIC = 9,
        /* This one encapsulates a managed exception instance */
-       MONO_ERROR_EXCEPTION_INSTANCE = 10
+       MONO_ERROR_EXCEPTION_INSTANCE = 10,
+
+       /* Not a valid error code - indicates that the error was cleaned up and reused */
+       MONO_ERROR_CLEANUP_CALLED_SENTINEL = 0xffff
 };
 
 /*Keep in sync with MonoErrorInternal*/
index 6cf8065d06a43e421bfb59737800ff73536d3f86..d5621323f9f64289ae8e3396cb5f7aaf99f48d23 100644 (file)
@@ -28,6 +28,9 @@
 #include <sys/sysctl.h>
 #include <sys/types.h>
 #else
+#if defined (HAVE_SYS_UTSNAME_H)
+#include <sys/utsname.h>
+#endif
 #include <stdio.h>
 #endif
 
@@ -105,6 +108,50 @@ mono_hwcap_arch_init (void)
         * hit this path if the target doesn't have sys/auxv.h.
         */
 
+#if defined (HAVE_SYS_UTSNAME_H)
+       struct utsname name;
+
+       /* Only fails if `name` is invalid (it isn't). */
+       g_assert (!uname (&name));
+
+       if (!strncmp (name.machine, "aarch64", 7) || !strncmp (name.machine, "armv8", 5)) {
+               /*
+                * We're a 32-bit program running on an ARMv8 system.
+                * Whether the system is actually 32-bit or 64-bit
+                * doesn't matter to us. The important thing is that
+                * all 3 of ARMv8's execution states (A64, A32, T32)
+                * are guaranteed to have all of the features that
+                * we want to detect and use.
+                *
+                * We do this ARMv8 detection via uname () because
+                * in the early days of ARMv8 on Linux, the
+                * /proc/cpuinfo format was a disaster and there
+                * were multiple (merged into mainline) attempts at
+                * cleaning it up (read: breaking applications that
+                * tried to rely on it). So now multiple ARMv8
+                * systems in the wild have different /proc/cpuinfo
+                * output, some of which are downright useless.
+                *
+                * So, when it comes to detecting ARMv8 in a 32-bit
+                * program, it's better to just avoid /proc/cpuinfo
+                * entirely. Maybe in a decade or two, we won't
+                * have to worry about this mess that the Linux ARM
+                * maintainers created. One can hope.
+                */
+
+               mono_hwcap_arm_is_v5 = TRUE;
+               mono_hwcap_arm_is_v6 = TRUE;
+               mono_hwcap_arm_is_v7 = TRUE;
+
+               mono_hwcap_arm_has_vfp = TRUE;
+               mono_hwcap_arm_has_vfp3 = TRUE;
+               mono_hwcap_arm_has_vfp3_d16 = TRUE;
+
+               mono_hwcap_arm_has_thumb = TRUE;
+               mono_hwcap_arm_has_thumb2 = TRUE;
+       }
+#endif
+
        char buf [512];
        char *line;
 
index 740db4c7543cb72bc2b8f1d6c68775849bb35cbd..54c6320d2b6f6a08bc8fc2fe249f315bbde8cac8 100644 (file)
@@ -93,7 +93,6 @@ static gchar *find_in_dir (DIR *current, const gchar *name)
 
 static inline void append_report (GString **report, const gchar *format, ...)
 {
-#if defined (_EGLIB_MAJOR) || GLIB_CHECK_VERSION(2,14,0)
        va_list ap;
        if (!*report)
                *report = g_string_new ("");
@@ -101,9 +100,6 @@ static inline void append_report (GString **report, const gchar *format, ...)
        va_start (ap, format);
        g_string_append_vprintf (*report, format, ap);
        va_end (ap);
-#else
-       g_assert_not_reached ();
-#endif
 }
 
 static inline void do_mono_profiler_iomap (GString **report, const char *pathname, const char *new_pathname)
diff --git a/mono/utils/mono-log-common.c b/mono/utils/mono-log-common.c
new file mode 100644 (file)
index 0000000..fa11aab
--- /dev/null
@@ -0,0 +1,155 @@
+/*
+ * mono-log-common.c: Platform-independent interface to the logger
+ *
+ * This module contains the POSIX syslog logger interface
+ *
+ * Author:
+ *    Neale Ferguson <neale@sinenomine.net>
+ *
+ */
+#include <config.h>
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <string.h>
+#include <glib.h>
+#include <errno.h>
+#include <time.h>
+#ifndef HOST_WIN32
+#include <sys/time.h>
+#else
+#include <process.h>
+#endif
+#include "mono-logger.h"
+
+static FILE *logFile = NULL;
+static void *logUserData = NULL;
+
+/**
+ * mapSyslogLevel:
+ *     
+ *     @level - GLogLevelFlags value
+ *     @returns The equivalent character identifier
+ */
+static inline char 
+mapLogFileLevel(GLogLevelFlags level) 
+{
+       if (level & G_LOG_LEVEL_ERROR)
+               return ('E');
+       if (level & G_LOG_LEVEL_CRITICAL)
+               return ('C');
+       if (level & G_LOG_LEVEL_WARNING)
+               return ('W');
+       if (level & G_LOG_LEVEL_MESSAGE)
+               return ('N');
+       if (level & G_LOG_LEVEL_INFO)
+               return ('I');
+       if (level & G_LOG_LEVEL_DEBUG)
+               return ('D');
+       return ('I');
+}
+
+/**
+ * mono_log_open_logfile
+ *     
+ *     Open the logfile. If the path is not specified default to stdout. If the
+ *     open fails issue a warning and use stdout as the log file destination.
+ *
+ *     @path - Path for log file
+ *     @userData - Not used
+ */
+void
+mono_log_open_logfile(const char *path, void *userData)
+{
+       if (path == NULL) {
+               logFile = stdout;
+       } else {
+#ifndef HOST_WIN32
+               logFile = fopen(path, "w");
+#else
+               gunichar2 *wPath = g_utf8_to_utf16(path, -1, 0, 0, 0);
+               if (wPath != NULL) {
+                       logFile = _wfopen((wchar_t *) wPath, L"w");
+                       g_free (wPath);
+               }
+#endif
+               if (logFile == NULL) {
+                       g_warning("opening of log file %s failed with %s - defaulting to stdout", 
+                                 path, strerror(errno));
+                       logFile = stdout;
+               }
+       }
+       logUserData = userData;
+}
+
+/**
+ * mono_log_write_logfile
+ *     
+ *     Write data to the log file.
+ *
+ *     @domain - Identifier string
+ *     @level - Logging level flags
+ *     @format - Printf format string
+ *     @vargs - Variable argument list
+ */
+void
+mono_log_write_logfile(const char *domain, GLogLevelFlags level, mono_bool hdr, const char *format, va_list args)
+{
+       time_t t;
+       char logTime[80],       
+            logMessage[512];
+       pid_t pid;
+       int iLog = 0;
+       size_t nLog;
+
+       if (logFile == NULL)
+               logFile = stdout;
+
+       if (hdr) {
+#ifndef HOST_WIN32
+               struct tm tod;
+               time(&t);
+               localtime_r(&t, &tod);
+               pid = getpid();
+               strftime(logTime, sizeof(logTime), "%Y-%m-%d %H:%M:%S", &tod);
+#else
+               struct tm *tod;
+               time(&t);
+               tod = localtime(&t);
+               pid = _getpid();
+               strftime(logTime, sizeof(logTime), "%F %T", tod);
+#endif
+               iLog = sprintf(logMessage, "%s level[%c] mono[%d]: ",
+                              logTime,mapLogFileLevel(level),pid);
+       }
+       nLog = sizeof(logMessage) - iLog - 2;
+       vsnprintf(logMessage+iLog, nLog, format, args);
+       iLog = strlen(logMessage);
+       logMessage[iLog++] = '\n';
+       logMessage[iLog++] = '\0';
+       fputs(logMessage, logFile);
+       fflush(logFile);
+
+       if (level == G_LOG_FLAG_FATAL)
+               abort();
+}
+
+/**
+ * mono_log_close_logfile
+ *
+ *     Close the log file
+ */
+void
+mono_log_close_logfile()
+{
+       if (logFile) {
+               if (logFile != stdout)
+                       fclose(logFile);
+               logFile = NULL;
+       }
+}
diff --git a/mono/utils/mono-log-posix.c b/mono/utils/mono-log-posix.c
new file mode 100644 (file)
index 0000000..1ce111c
--- /dev/null
@@ -0,0 +1,101 @@
+/*
+ * mono-log-posix.c: POSIX interface to the logger
+ *
+ * This module contains the POSIX syslog logger routines
+ *
+ * Author:
+ *    Neale Ferguson <neale@sinenomine.net>
+ *
+ */
+#include <config.h>
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#if defined(_POSIX_VERSION) 
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <string.h>
+#include <glib.h>
+#include <syslog.h>
+#include <stdarg.h>
+#include <errno.h>
+#include <time.h>
+#include <sys/time.h>
+#include "mono-logger.h"
+
+static void *logUserData = NULL;
+
+/**
+ * mapSyslogLevel:
+ *     
+ *     @level - GLogLevelFlags value
+ *     @returns The equivalent syslog priority value
+ */
+static __inline__ int
+mapSyslogLevel(GLogLevelFlags level) 
+{
+       if (level & G_LOG_LEVEL_ERROR)
+               return (LOG_ERR);
+       if (level & G_LOG_LEVEL_CRITICAL)
+               return (LOG_CRIT);
+       if (level & G_LOG_LEVEL_WARNING)
+               return (LOG_WARNING);
+       if (level & G_LOG_LEVEL_MESSAGE)
+               return (LOG_NOTICE);
+       if (level & G_LOG_LEVEL_INFO)
+               return (LOG_INFO);
+       if (level & G_LOG_LEVEL_DEBUG)
+               return (LOG_DEBUG);
+       return (LOG_INFO);
+}
+
+/**
+ * mono_log_open_logfile
+ *     
+ *     Open the syslog interface specifying that we want our PID recorded 
+ *     and that we're using the LOG_USER facility.
+ *
+ *     @ident - Identifier: ignored
+ *     @userData - Not used
+ */
+void
+mono_log_open_syslog(const char *ident, void *userData)
+{
+       openlog("mono", LOG_PID, LOG_USER);
+       logUserData = userData;
+}
+
+/**
+ * mono_log_write_logfile
+ *     
+ *     Write data to the log file.
+ *
+ *     @domain - Identifier string
+ *     @level - Logging level flags
+ *     @format - Printf format string
+ *     @vargs - Variable argument list
+ */
+void
+mono_log_write_syslog(const char *domain, GLogLevelFlags level, mono_bool hdr, const char *format, va_list args)
+{
+       vsyslog(mapSyslogLevel(level), format, args);
+
+       if (level == G_LOG_FLAG_FATAL)
+               abort();
+}
+
+/**
+ * mono_log_close_logfile
+ *
+ *     Close the log file
+ */
+void
+mono_log_close_syslog()
+{
+       closelog();
+}
+#endif
diff --git a/mono/utils/mono-log-windows.c b/mono/utils/mono-log-windows.c
new file mode 100644 (file)
index 0000000..1746128
--- /dev/null
@@ -0,0 +1,132 @@
+/*
+ * mono-log-windows.c: Simplistic simulation of a syslog logger for Windows
+ *
+ * This module contains the Windows syslog logger interface
+ *
+ * Author:
+ *    Neale Ferguson <neale@sinenomine.net>
+ *
+ */
+#include <config.h>
+
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+#ifdef HOST_WIN32
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <string.h>
+#include <glib.h>
+#include <errno.h>
+#include <time.h>
+#include <process.h>
+#include "mono-logger.h"
+
+static FILE *logFile = NULL;
+static void *logUserData = NULL;
+static wchar_t *logFileName = L".//mono.log";
+
+/**
+ * mapSyslogLevel:
+ *     
+ *     @level - GLogLevelFlags value
+ *     @returns The equivalent character identifier
+ */
+static inline char 
+mapLogFileLevel(GLogLevelFlags level) 
+{
+       if (level & G_LOG_LEVEL_ERROR)
+               return ('E');
+       if (level & G_LOG_LEVEL_CRITICAL)
+               return ('C');
+       if (level & G_LOG_LEVEL_WARNING)
+               return ('W');
+       if (level & G_LOG_LEVEL_MESSAGE)
+               return ('N');
+       if (level & G_LOG_LEVEL_INFO)
+               return ('I');
+       if (level & G_LOG_LEVEL_DEBUG)
+               return ('D');
+       return ('I');
+}
+
+/**
+ * mono_log_open_syslog
+ *     
+ *     Open the syslog file. If the open fails issue a warning and 
+ *     use stdout as the log file destination.
+ *
+ *     @ident - Identifier: ignored
+ *     @userData - Not used
+ */
+void
+mono_log_open_syslog(const char *ident, void *userData)
+{
+       logFile = _wfopen(logFileName, L"w");
+       if (logFile == NULL) {
+               g_warning("opening of log file %s failed with %s",
+                         strerror(errno));
+               logFile = stdout;
+       }
+       logUserData = userData;
+}
+
+/**
+ * mono_log_write_syslog
+ *     
+ *     Write data to the syslog file.
+ *
+ *     @domain - Identifier string
+ *     @level - Logging level flags
+ *     @format - Printf format string
+ *     @vargs - Variable argument list
+ */
+void
+mono_log_write_syslog(const char *domain, GLogLevelFlags level, mono_bool hdr, const char *format, va_list args)
+{
+       time_t t;
+       struct tm *tod;
+       char logTime[80],
+             logMessage[512];
+       pid_t pid;
+       int iLog = 0;
+       size_t nLog;
+
+       if (logFile == NULL)
+               mono_log_open_syslog(NULL, NULL);
+
+       time(&t);
+       tod = localtime(&t);
+       pid = _getpid();
+       strftime(logTime, sizeof(logTime), "%Y-%m-%d %H:%M:%S", tod);
+       iLog = sprintf(logMessage, "%s level[%c] mono[%d]: ",
+                      logTime,mapLogFileLevel(level),pid);
+       nLog = sizeof(logMessage) - iLog - 2;
+       vsnprintf(logMessage+iLog, nLog, format, args);
+       iLog = strlen(logMessage);
+       logMessage[iLog++] = '\n';
+       logMessage[iLog++] = 0;
+       fputs(logMessage, logFile);
+       fflush(logFile);
+
+       if (level == G_LOG_FLAG_FATAL)
+               abort();
+}
+
+/**
+ * mono_log_close_syslog
+ *
+ *     Close the syslog file
+ */
+void
+mono_log_close_syslog()
+{
+       if (logFile) {
+               fclose(logFile);
+               logFile = NULL;
+       }
+}
+#endif
index 7d0c9ce12a4f811d33e6d5a3bca405b2f564da03..8a5840a1c4747fd725dabbfb366ce7bb5e1a39bb 100644 (file)
@@ -11,13 +11,26 @@ typedef struct {
        MonoTraceMask   mask;
 } MonoLogLevelEntry;
 
-GLogLevelFlags mono_internal_current_level             = INT_MAX;
-MonoTraceMask  mono_internal_current_mask              = MONO_TRACE_ALL;
+GLogLevelFlags mono_internal_current_level     = INT_MAX;
+MonoTraceMask  mono_internal_current_mask      = MONO_TRACE_ALL;
+gboolean mono_trace_log_header                 = FALSE;
 
 static GQueue          *level_stack            = NULL;
 static const char      *mono_log_domain        = "Mono";
 static MonoPrintCallback print_callback, printerr_callback;
 
+static MonoLogCallParm logCallback = {
+       .opener = NULL,
+       .writer = NULL,
+       .closer = NULL,
+       .header = FALSE
+};
+
+typedef struct {
+   MonoLogCallback legacy_callback;
+   gpointer user_data;
+} legacyLoggerUserData;
+
 /**
  * mono_trace_init:
  *
@@ -32,6 +45,8 @@ mono_trace_init (void)
 
                mono_trace_set_mask_string(g_getenv("MONO_LOG_MASK"));
                mono_trace_set_level_string(g_getenv("MONO_LOG_LEVEL"));
+               mono_trace_set_logheader_string(g_getenv("MONO_LOG_HEADER"));
+               mono_trace_set_logdest_string(g_getenv("MONO_LOG_DEST"));
        }
 }
 
@@ -48,6 +63,7 @@ mono_trace_cleanup (void)
                        g_free (g_queue_pop_head (level_stack));
                }
 
+               logCallback.closer();
                g_queue_free (level_stack);
                level_stack = NULL;
        }
@@ -71,7 +87,13 @@ mono_tracev_inner (GLogLevelFlags level, MonoTraceMask mask, const char *format,
                        return;
        }
 
-       g_logv (mono_log_domain, level, format, args);
+       if (logCallback.opener == NULL) {
+               logCallback.opener = mono_log_open_logfile;
+               logCallback.writer = mono_log_write_logfile;
+               logCallback.closer = mono_log_close_logfile;
+               logCallback.opener(NULL, NULL);
+       }
+       logCallback.writer(mono_log_domain, level, logCallback.header, format, args);
 }
 
 /**
@@ -107,7 +129,55 @@ mono_trace_set_mask (MonoTraceMask mask)
        if(level_stack == NULL)
                mono_trace_init();
 
-       mono_internal_current_mask      = mask;
+       mono_internal_current_mask = mask;
+}
+
+/**
+ * mono_trace_set_logdest:
+ *
+ *     @dest: Destination for logging
+ *
+ * Sets the current logging destination. This can be a file or, if supported,
+ * syslog.
+ */
+void 
+mono_trace_set_logdest_string (const char *dest)
+{
+       MonoLogCallParm logger;
+
+       if(level_stack == NULL)
+               mono_trace_init();
+
+       if ((dest != NULL) && (strcmp("syslog", dest) != 0)) {
+               logger.opener = mono_log_open_logfile;
+               logger.writer = mono_log_write_logfile;
+               logger.closer = mono_log_close_logfile;
+               logger.dest   = (char *) dest;
+               mono_trace_set_log_handler_internal(&logger, NULL);
+       } else {
+               logger.opener = mono_log_open_syslog;
+               logger.writer = mono_log_write_syslog;
+               logger.closer = mono_log_close_syslog;
+               logger.dest   = (char *) dest;
+               mono_trace_set_log_handler_internal(&logger, NULL);
+       }
+}
+
+/**
+ * mono_trace_set_logheader:
+ *
+ *     @head: Whether we want pid/date/time header on log messages
+ *
+ * Sets the current logging header option.
+ */
+void 
+mono_trace_set_logheader_string(const char *head)
+{
+       if (head == NULL) {
+               mono_trace_log_header = FALSE;
+       } else {
+               mono_trace_log_header = TRUE;
+       }
 }
 
 /**
@@ -236,30 +306,105 @@ mono_trace_is_traced (GLogLevelFlags level, MonoTraceMask mask)
        return (level <= mono_internal_current_level && mask & mono_internal_current_mask);
 }
 
-static MonoLogCallback log_callback;
-
-static const char*
+/**
+ * log_level_get_name
+ * @log_level severity level
+ *
+ * Convert log level into a string for legacy log handlers
+ */
+static const char *
 log_level_get_name (GLogLevelFlags log_level)
 {
-       switch (log_level & G_LOG_LEVEL_MASK) {
-       case G_LOG_LEVEL_ERROR: return "error";
-       case G_LOG_LEVEL_CRITICAL: return "critical";
-       case G_LOG_LEVEL_WARNING: return "warning";
-       case G_LOG_LEVEL_MESSAGE: return "message";
-       case G_LOG_LEVEL_INFO: return "info";
-       case G_LOG_LEVEL_DEBUG: return "debug";
-       default: return "unknown";
-       }
+        switch (log_level & G_LOG_LEVEL_MASK) {
+        case G_LOG_LEVEL_ERROR: return "error";
+        case G_LOG_LEVEL_CRITICAL: return "critical";
+        case G_LOG_LEVEL_WARNING: return "warning";
+        case G_LOG_LEVEL_MESSAGE: return "message";
+        case G_LOG_LEVEL_INFO: return "info";
+        case G_LOG_LEVEL_DEBUG: return "debug";
+        default: return "unknown";
+        }
 }
 
+/**
+ * callback_adapter
+ * 
+ *  @log_domain Message prefix
+ *  @log_level Severity
+ *  @message Message to be written
+ *  @fatal Fatal flag - write then abort
+ *  @user_data Argument passed to @callback
+ *
+ * This adapts the old callback writer exposed by MonoCallback to the newer method of
+ * logging. We ignore the header request as legacy handlers never had headers.
+ */
+static void
+callback_adapter(const char *domain, GLogLevelFlags level, mono_bool fatal, const char *fmt, va_list args)
+{
+       legacyLoggerUserData *ll = (legacyLoggerUserData *) logCallback.user_data;
+       const char *msg = g_strdup_vprintf (fmt, args);
+
+       ll->legacy_callback (domain, log_level_get_name(level), msg, fatal, ll->user_data);
+       g_free ((void *) msg);
+}
+
+/**
+ * legacy_opener
+ *
+ * Dummy routine for older style loggers
+ */
 static void
-log_adapter (const gchar *log_domain, GLogLevelFlags log_level, const gchar *message, gpointer user_data)
+legacy_opener(const char *path, void *user_data)
 {
-       log_callback (log_domain, log_level_get_name (log_level), message, log_level & G_LOG_LEVEL_ERROR, user_data);
+  /* nothing to do */
 }
 
 /**
- * mono_trace_set_log_handler:
+ * legacy_closer
+ *
+ * Cleanup routine for older style loggers
+ */
+static void
+legacy_closer()
+{
+       if (logCallback.user_data != NULL) {
+               g_free (logCallback.user_data); /* This is a LegacyLoggerUserData struct */
+               logCallback.opener = NULL;      
+               logCallback.writer = NULL;
+               logCallback.closer = NULL;
+               logCallback.user_data = NULL;
+               logCallback.header = FALSE;
+       }
+}
+
+/**
+ *   mono_trace_set_log_handler:
+ *  
+ *  @callback The callback that will replace the default logging handler
+ *  @user_data Argument passed to @callback
+ * 
+ * The log handler replaces the default runtime logger. All logging requests with be routed to it.
+ * If the fatal argument in the callback is true, the callback must abort the current process. The runtime expects that
+ * execution will not resume after a fatal error. This is for "old-style" or legacy log handers.
+ */
+void
+mono_trace_set_log_handler (MonoLogCallback callback, void *user_data)
+{
+        g_assert (callback);
+       if (logCallback.closer != NULL)
+               logCallback.closer();
+       legacyLoggerUserData *ll = g_malloc (sizeof (legacyLoggerUserData));
+       ll->legacy_callback = callback;
+       ll->user_data = user_data;
+       logCallback.opener = legacy_opener;
+       logCallback.writer = callback_adapter;
+       logCallback.closer = legacy_closer;
+       logCallback.user_data = ll;
+       logCallback.dest = NULL;
+}
+
+/**
+ * mono_trace_set_log_handler_internal:
  *
  *  @callback The callback that will replace the default logging handler
  *  @user_data Argument passed to @callback
@@ -269,11 +414,17 @@ log_adapter (const gchar *log_domain, GLogLevelFlags log_level, const gchar *mes
  * execution will not resume after a fatal error.
  */
 void
-mono_trace_set_log_handler (MonoLogCallback callback, void *user_data)
+mono_trace_set_log_handler_internal (MonoLogCallParm *callback, void *user_data)
 {
        g_assert (callback);
-       log_callback = callback;
-       g_log_set_default_handler (log_adapter, user_data);
+       if (logCallback.closer != NULL)
+               logCallback.closer();
+       logCallback.opener = callback->opener;
+       logCallback.writer = callback->writer;
+       logCallback.closer = callback->closer;
+       logCallback.header = mono_trace_log_header;
+       logCallback.dest   = callback->dest;
+       logCallback.opener(logCallback.dest, user_data);
 }
 
 static void
index 36f7714f2ed2dd946058e3c28a0b52c21e90e8f9..073daf1c87a16260f452584f96026e771eff8167 100644 (file)
@@ -10,8 +10,31 @@ mono_trace_set_level_string (const char *value);
 MONO_API void 
 mono_trace_set_mask_string (const char *value);
 
-typedef void (*MonoLogCallback) (const char *log_domain, const char *log_level, const char *message, mono_bool fatal, void *user_data);
+MONO_API void 
+mono_trace_set_logdest_string (const char *value);
+
+MONO_API void 
+mono_trace_set_logheader_string (const char *value);
+
 typedef void (*MonoPrintCallback) (const char *string, mono_bool is_stdout);
+typedef void (*MonoLogCallback) (const char *log_domain, const char *log_level, const char *message, mono_bool fatal, void *user_data);
+
+
+typedef void (*MonoLoggerOpen) (const char *, void *);
+typedef void (*MonoLoggerWrite) (const char *, GLogLevelFlags, mono_bool, const char *, va_list);
+typedef void (*MonoLoggerClose) (void);
+
+typedef struct _MonoLogCallParm_ {
+       MonoLoggerOpen  opener;         /* Routine to open logging */
+       MonoLoggerWrite writer;         /* Routine to write log data */
+       MonoLoggerClose closer;         /* Routine to close logging */
+       char            *dest;          /* Log destination */
+       void            *user_data;     /* User data from legacy handler */
+       mono_bool       header;         /* Whether we want pid/time/date in log message */
+} MonoLogCallParm;
+
+void
+mono_trace_set_log_handler_internal (MonoLogCallParm *callback, void *user_data);
 
 MONO_API void
 mono_trace_set_log_handler (MonoLogCallback callback, void *user_data);
@@ -22,6 +45,23 @@ mono_trace_set_print_handler (MonoPrintCallback callback);
 MONO_API void
 mono_trace_set_printerr_handler (MonoPrintCallback callback);
 
+MONO_API void
+mono_log_open_syslog(const char *, void *);
+
+MONO_API void
+mono_log_write_syslog(const char *, GLogLevelFlags, mono_bool, const char *, va_list);
+
+MONO_API void
+mono_log_close_syslog(void);
+
+MONO_API void
+mono_log_open_logfile(const char *, void *);
+
+MONO_API void
+mono_log_write_logfile(const char *, GLogLevelFlags, mono_bool, const char *, va_list);
+
+MONO_API void
+mono_log_close_logfile(void);
 
 MONO_END_DECLS
 
index 7a4a02e39a3f7fea5ca4a441251215d75d406bf8..efd732d6d56b7592b9de709a4d34c352e42baf8f 100644 (file)
@@ -325,7 +325,7 @@ mono_process_get_times (gpointer pid, gint64 *start_time, gint64 *user_time, gin
                if (*start_time == 0) {
                        static guint64 boot_time = 0;
                        if (!boot_time)
-                               boot_time = mono_100ns_datetime () - ((guint64)mono_msec_ticks ()) * 10000;
+                               boot_time = mono_100ns_datetime () - mono_msec_boottime () * 10000;
 
                        *start_time = boot_time + mono_process_get_data (pid, MONO_PROCESS_ELAPSED);
                }
index 42e096efee787b951b4a84fe707de0a9e4fef787..f36ec0beb813bf39430d83be8cc1889529bab591 100644 (file)
@@ -10,7 +10,9 @@
 #ifndef __MONO_THREADS_API_H__
 #define __MONO_THREADS_API_H__
 
+#include <glib.h>
 #include <mono/utils/mono-publib.h>
+
 MONO_BEGIN_DECLS
 
 /*
@@ -19,22 +21,35 @@ MONO_BEGIN_DECLS
 This API is experimental. It will eventually be required to properly use the rest of the raw-omp embedding API.
 */
 
-/* Don't use those directly, use the MONO_(BEGIN|END)_EFRAME */
 MONO_API gpointer
 mono_threads_enter_gc_unsafe_region (gpointer* stackdata);
 
 MONO_API void
 mono_threads_exit_gc_unsafe_region (gpointer cookie, gpointer* stackdata);
 
+MONO_API gpointer
+mono_threads_enter_gc_unsafe_region_unbalanced (gpointer* stackdata);
+
+MONO_API void
+mono_threads_exit_gc_unsafe_region_unbalanced (gpointer cookie, gpointer* stackdata);
+
 MONO_API void
 mono_threads_assert_gc_unsafe_region (void);
 
+
+
 MONO_API gpointer
 mono_threads_enter_gc_safe_region (gpointer *stackdata);
 
 MONO_API void
 mono_threads_exit_gc_safe_region (gpointer cookie, gpointer *stackdata);
 
+MONO_API gpointer
+mono_threads_enter_gc_safe_region_unbalanced (gpointer *stackdata);
+
+MONO_API void
+mono_threads_exit_gc_safe_region_unbalanced (gpointer cookie, gpointer *stackdata);
+
 MONO_API void
 mono_threads_assert_gc_safe_region (void);
 
@@ -44,24 +59,41 @@ This will put the current thread in GC Unsafe mode.
 
 For further explanation of what can and can't be done in GC unsafe mode:
 http://www.mono-project.com/docs/advanced/runtime/docs/coop-suspend/#gc-unsafe-mode
-
 */
-#define MONO_BEGIN_GC_UNSAFE   \
+#define MONO_ENTER_GC_UNSAFE   \
+       do {    \
+               gpointer __gc_unsafe_dummy;     \
+               gpointer __gc_unsafe_cookie = mono_threads_enter_gc_unsafe_region (&__gc_unsafe_dummy)
+
+#define MONO_EXIT_GC_UNSAFE    \
+               mono_threads_exit_gc_unsafe_region      (__gc_unsafe_cookie, &__gc_unsafe_dummy);       \
+       } while (0)
+
+#define MONO_ENTER_GC_UNSAFE_UNBALANCED        \
+       do {    \
+               gpointer __gc_unsafe_unbalanced_dummy;  \
+               gpointer __gc_unsafe_unbalanced_cookie = mono_threads_enter_gc_unsafe_region_unbalanced (&__gc_unsafe_unbalanced_dummy)
+
+#define MONO_EXIT_GC_UNSAFE_UNBALANCED \
+               mono_threads_exit_gc_unsafe_region_unbalanced   (__gc_unsafe_unbalanced_cookie, &__gc_unsafe_unbalanced_dummy); \
+       } while (0)
+
+#define MONO_ENTER_GC_SAFE     \
        do {    \
-               gpointer __dummy;       \
-               gpointer __gc_unsafe_cookie = mono_threads_enter_gc_unsafe_region (&__dummy)    \
+               gpointer __gc_safe_dummy;       \
+               gpointer __gc_safe_cookie = mono_threads_enter_gc_safe_region (&__gc_safe_dummy)
 
-#define MONO_END_GC_UNSAFE     \
-               mono_threads_exit_gc_unsafe_region      (__gc_unsafe_cookie, &__dummy); \
+#define MONO_EXIT_GC_SAFE      \
+               mono_threads_exit_gc_safe_region (__gc_safe_cookie, &__gc_safe_dummy);  \
        } while (0)
 
-#define MONO_BEGIN_GC_SAFE     \
+#define MONO_ENTER_GC_SAFE_UNBALANCED  \
        do {    \
-               gpointer __dummy;       \
-               gpointer __gc_safe_cookie = mono_threads_enter_gc_safe_region (&__dummy)        \
+               gpointer __gc_safe_unbalanced_dummy;    \
+               gpointer __gc_safe_unbalanced_cookie = mono_threads_enter_gc_safe_region_unbalanced (&__gc_safe_unbalanced_dummy)
 
-#define MONO_END_GC_SAFE       \
-               mono_threads_exit_gc_safe_region (__gc_safe_cookie, &__dummy);  \
+#define MONO_EXIT_GC_SAFE_UNBALANCED   \
+               mono_threads_exit_gc_safe_region_unbalanced (__gc_safe_unbalanced_cookie, &__gc_safe_unbalanced_dummy); \
        } while (0)
 
 MONO_END_DECLS
index 4283537b0f9fa205fcbcd1f5752bdac1ab22afd5..cd5d703a04a1095ffca4c1edbc2388f43a80b69f 100644 (file)
@@ -44,50 +44,84 @@ volatile size_t mono_polling_required;
 // FIXME: This would be more efficient if instead of instantiating the stack it just pushed a simple depth counter up and down,
 // perhaps with a per-thread cookie in the high bits.
 #ifdef ENABLE_CHECKED_BUILD_GC
+
 // Maintains a single per-thread stack of ints, used to ensure nesting is not violated
-MonoNativeTlsKey coop_reset_count_stack_key;
-static int coop_tls_push (int v) {
-       GArray *stack = mono_native_tls_get_value (coop_reset_count_stack_key);
+static MonoNativeTlsKey coop_reset_count_stack_key;
+
+static void
+coop_tls_push (gpointer cookie)
+{
+       GArray *stack;
+
+       stack = mono_native_tls_get_value (coop_reset_count_stack_key);
        if (!stack) {
-               stack = g_array_new (FALSE,FALSE,sizeof(int));
+               stack = g_array_new (FALSE, FALSE, sizeof(gpointer));
                mono_native_tls_set_value (coop_reset_count_stack_key, stack);
        }
-       g_array_append_val (stack, v);
-       return stack->len;
+
+       g_array_append_val (stack, cookie);
 }
-static int coop_tls_pop (int *v) {
-       GArray *stack = mono_native_tls_get_value (coop_reset_count_stack_key);
+
+static void
+coop_tls_pop (gpointer received_cookie)
+{
+       GArray *stack;
+       gpointer expected_cookie;
+
+       stack = mono_native_tls_get_value (coop_reset_count_stack_key);
        if (!stack || 0 == stack->len)
-               return -1;
-       stack->len--;
-       *v = g_array_index (stack, int, stack->len);
-       int len = stack->len;
-       if (0 == len) {
+               mono_fatal_with_history ("Received cookie %p but found no stack at all, %x\n", received_cookie);
+
+       expected_cookie = g_array_index (stack, gpointer, stack->len - 1);
+       stack->len --;
+
+       if (0 == stack->len) {
                g_array_free (stack,TRUE);
                mono_native_tls_set_value (coop_reset_count_stack_key, NULL);
        }
-       return len;
+
+       if (expected_cookie != received_cookie)
+               mono_fatal_with_history ("Received cookie %p but expected %p\n", received_cookie, expected_cookie);
 }
+
 #endif
 
+static void
+check_info (MonoThreadInfo *info, const gchar *action, const gchar *state)
+{
+       if (!info)
+               g_error ("Cannot %s GC %s region if the thread is not attached", action, state);
+       if (!mono_thread_info_is_current (info))
+               g_error ("[%p] Cannot %s GC %s region on a different thread", mono_thread_info_get_tid (info), action, state);
+       if (!mono_thread_info_is_live (info))
+               g_error ("[%p] Cannot %s GC %s region if the thread is not live", mono_thread_info_get_tid (info), action, state);
+}
+
 static int coop_reset_blocking_count;
 static int coop_try_blocking_count;
 static int coop_do_blocking_count;
 static int coop_do_polling_count;
 static int coop_save_count;
 
+static void
+mono_threads_state_poll_with_info (MonoThreadInfo *info);
+
 void
 mono_threads_state_poll (void)
 {
-       MonoThreadInfo *info;
+       mono_threads_state_poll_with_info (mono_thread_info_current_unchecked ());
+}
 
+static void
+mono_threads_state_poll_with_info (MonoThreadInfo *info)
+{
        g_assert (mono_threads_is_coop_enabled ());
 
        ++coop_do_polling_count;
 
-       info = mono_thread_info_current_unchecked ();
        if (!info)
                return;
+
        THREADS_SUSPEND_DEBUG ("FINISH SELF SUSPEND OF %p\n", mono_thread_info_get_tid (info));
 
        /* Fast check for pending suspend requests */
@@ -111,19 +145,23 @@ mono_threads_state_poll (void)
        }
 }
 
-static void *
-return_stack_ptr ()
+static volatile gpointer* dummy_global;
+
+static MONO_NEVER_INLINE
+void*
+return_stack_ptr (gpointer *i)
 {
-       gpointer i;
-       return &i;
+       dummy_global = i;
+       return i;
 }
 
 static void
-copy_stack_data (MonoThreadInfo *info, void* stackdata_begin)
+copy_stack_data (MonoThreadInfo *info, gpointer *stackdata_begin)
 {
        MonoThreadUnwindState *state;
        int stackdata_size;
-       void* stackdata_end = return_stack_ptr ();
+       gpointer dummy;
+       void* stackdata_end = return_stack_ptr (&dummy);
 
        SAVE_REGS_ON_STACK;
 
@@ -146,22 +184,48 @@ copy_stack_data (MonoThreadInfo *info, void* stackdata_begin)
        state->gc_stackdata_size = stackdata_size;
 }
 
-void*
-mono_threads_prepare_blocking (void* stackdata)
+static gpointer
+mono_threads_enter_gc_safe_region_unbalanced_with_info (MonoThreadInfo *info, gpointer *stackdata);
+
+gpointer
+mono_threads_enter_gc_safe_region (gpointer *stackdata)
 {
-       MonoThreadInfo *info;
+       return mono_threads_enter_gc_safe_region_with_info (mono_thread_info_current_unchecked (), stackdata);
+}
+
+gpointer
+mono_threads_enter_gc_safe_region_with_info (MonoThreadInfo *info, gpointer *stackdata)
+{
+       gpointer cookie;
 
        if (!mono_threads_is_coop_enabled ())
                return NULL;
 
-       ++coop_do_blocking_count;
+       cookie = mono_threads_enter_gc_safe_region_unbalanced_with_info (info, stackdata);
 
-       info = mono_thread_info_current_unchecked ();
-       /* If the thread is not attached, it doesn't make sense prepare for suspend. */
-       if (!info || !mono_thread_info_is_live (info)) {
-               THREADS_SUSPEND_DEBUG ("PREPARE-BLOCKING failed %p\n", mono_thread_info_get_tid (info));
+#ifdef ENABLE_CHECKED_BUILD_GC
+       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC))
+               coop_tls_push (cookie);
+#endif
+
+       return cookie;
+}
+
+gpointer
+mono_threads_enter_gc_safe_region_unbalanced (gpointer *stackdata)
+{
+       return mono_threads_enter_gc_safe_region_unbalanced_with_info (mono_thread_info_current_unchecked (), stackdata);
+}
+
+static gpointer
+mono_threads_enter_gc_safe_region_unbalanced_with_info (MonoThreadInfo *info, gpointer *stackdata)
+{
+       if (!mono_threads_is_coop_enabled ())
                return NULL;
-       }
+
+       ++coop_do_blocking_count;
+
+       check_info (info, "enter", "safe");
 
        copy_stack_data (info, stackdata);
 
@@ -173,7 +237,7 @@ retry:
        case DoBlockingContinue:
                break;
        case DoBlockingPollAndRetry:
-               mono_threads_state_poll ();
+               mono_threads_state_poll_with_info (info);
                goto retry;
        }
 
@@ -181,28 +245,32 @@ retry:
 }
 
 void
-mono_threads_finish_blocking (void *cookie, void* stackdata)
+mono_threads_exit_gc_safe_region (gpointer cookie, gpointer *stackdata)
+{
+       if (!mono_threads_is_coop_enabled ())
+               return;
+
+#ifdef ENABLE_CHECKED_BUILD_GC
+       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC))
+               coop_tls_pop (cookie);
+#endif
+
+       mono_threads_exit_gc_safe_region_unbalanced (cookie, stackdata);
+}
+
+void
+mono_threads_exit_gc_safe_region_unbalanced (gpointer cookie, gpointer *stackdata)
 {
-       static gboolean warned_about_bad_transition;
        MonoThreadInfo *info;
 
        if (!mono_threads_is_coop_enabled ())
                return;
 
        info = (MonoThreadInfo *)cookie;
-       if (!info)
-               return;
 
-       g_assert (info == mono_thread_info_current_unchecked ());
+       check_info (info, "exit", "safe");
 
        switch (mono_threads_transition_done_blocking (info)) {
-       case DoneBlockingAborted:
-               if (!warned_about_bad_transition) {
-                       warned_about_bad_transition = TRUE;
-                       g_warning ("[%p] Blocking call ended in running state for, this might lead to unbound GC pauses.", mono_thread_info_get_tid (info));
-               }
-               mono_threads_state_poll ();
-               break;
        case DoneBlockingOk:
                info->thread_saved_state [SELF_SUSPEND_STATE_INDEX].valid = FALSE;
                break;
@@ -215,31 +283,52 @@ mono_threads_finish_blocking (void *cookie, void* stackdata)
        }
 }
 
+void
+mono_threads_assert_gc_safe_region (void)
+{
+       MONO_REQ_GC_SAFE_MODE;
+}
 
-void*
-mono_threads_reset_blocking_start (void* stackdata)
+gpointer
+mono_threads_enter_gc_unsafe_region (gpointer *stackdata)
 {
-       MonoThreadInfo *info;
+       return mono_threads_enter_gc_unsafe_region_with_info (mono_thread_info_current_unchecked (), stackdata);
+}
+
+gpointer
+mono_threads_enter_gc_unsafe_region_with_info (THREAD_INFO_TYPE *info, gpointer *stackdata)
+{
+       gpointer cookie;
 
        if (!mono_threads_is_coop_enabled ())
                return NULL;
 
-       info = mono_thread_info_current_unchecked ();
+       cookie = mono_threads_enter_gc_unsafe_region_unbalanced_with_info (info, stackdata);
 
 #ifdef ENABLE_CHECKED_BUILD_GC
-       int reset_blocking_count = InterlockedIncrement (&coop_reset_blocking_count);
-       // In this mode, the blocking count is used as the reset cookie. We would prefer
-       // (but do not require) this to be unique across invocations and threads.
-       if (reset_blocking_count == 0) // We *do* require it be nonzero
-               reset_blocking_count = coop_reset_blocking_count = 1;
-#else
-       ++coop_reset_blocking_count;
+       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC))
+               coop_tls_push (cookie);
 #endif
 
-       /* If the thread is not attached, it doesn't make sense prepare for suspend. */
-       if (!info || !mono_thread_info_is_live (info))
+       return cookie;
+}
+
+gpointer
+mono_threads_enter_gc_unsafe_region_unbalanced (gpointer *stackdata)
+{
+       return mono_threads_enter_gc_unsafe_region_unbalanced_with_info (mono_thread_info_current_unchecked (), stackdata);
+}
+
+gpointer
+mono_threads_enter_gc_unsafe_region_unbalanced_with_info (MonoThreadInfo *info, gpointer *stackdata)
+{
+       if (!mono_threads_is_coop_enabled ())
                return NULL;
 
+       ++coop_reset_blocking_count;
+
+       check_info (info, "enter", "unsafe");
+
        copy_stack_data (info, stackdata);
 
        switch (mono_threads_transition_abort_blocking (info)) {
@@ -247,105 +336,64 @@ mono_threads_reset_blocking_start (void* stackdata)
                info->thread_saved_state [SELF_SUSPEND_STATE_INDEX].valid = FALSE;
                return NULL;
        case AbortBlockingIgnoreAndPoll:
-               mono_threads_state_poll ();
+               mono_threads_state_poll_with_info (info);
                return NULL;
        case AbortBlockingOk:
                info->thread_saved_state [SELF_SUSPEND_STATE_INDEX].valid = FALSE;
                break;
-       case AbortBlockingOkAndPool:
-               mono_threads_state_poll ();
+       case AbortBlockingWait:
+               mono_thread_info_wait_for_resume (info);
                break;
        default:
                g_error ("Unknown thread state");
        }
 
-#ifdef ENABLE_CHECKED_BUILD_GC
-       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC)) {
-               int level = coop_tls_push (reset_blocking_count);
-               //g_warning("Entering reset nest; level %d; cookie %d\n", level, reset_blocking_count);
-               return (void *)(intptr_t)reset_blocking_count;
-       }
-#endif
-
        return info;
 }
 
-void
-mono_threads_reset_blocking_end (void *cookie, void* stackdata)
+gpointer
+mono_threads_enter_gc_unsafe_region_cookie (void)
 {
-       if (!mono_threads_is_coop_enabled ())
-               return;
+       MonoThreadInfo *info;
 
-       if (!cookie)
-               return;
+       g_assert (mono_threads_is_coop_enabled ());
+
+       info = mono_thread_info_current_unchecked ();
+
+       check_info (info, "enter (cookie)", "unsafe");
 
 #ifdef ENABLE_CHECKED_BUILD_GC
-       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC)) {
-               int received_cookie = (int)(intptr_t)cookie;
-               int desired_cookie;
-               int level = coop_tls_pop (&desired_cookie);
-               //g_warning("Leaving reset nest; back to level %d; desired cookie %d; received cookie %d\n", level, desired_cookie, received_cookie);
-               if (level < 0)
-                       mono_fatal_with_history ("Expected cookie %d but found no stack at all\n", desired_cookie);
-               if (desired_cookie != received_cookie)
-                       mono_fatal_with_history ("Expected cookie %d but received %d\n", desired_cookie, received_cookie);
-       } else // Notice this matches the line after the endif
+       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC))
+               coop_tls_push (info);
 #endif
-       {
-               g_assert (((MonoThreadInfo *)cookie) == mono_thread_info_current_unchecked ());
-       }
 
-       mono_threads_prepare_blocking (stackdata);
+       return info;
 }
 
 void
-mono_threads_init_coop (void)
+mono_threads_exit_gc_unsafe_region (gpointer cookie, gpointer *stackdata)
 {
        if (!mono_threads_is_coop_enabled ())
                return;
 
-       mono_counters_register ("Coop Reset Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_reset_blocking_count);
-       mono_counters_register ("Coop Try Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_try_blocking_count);
-       mono_counters_register ("Coop Do Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_do_blocking_count);
-       mono_counters_register ("Coop Do Polling", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_do_polling_count);
-       mono_counters_register ("Coop Save Count", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_save_count);
-       //See the above for what's wrong here.
-
 #ifdef ENABLE_CHECKED_BUILD_GC
-       mono_native_tls_alloc (&coop_reset_count_stack_key, NULL);
+       if (mono_check_mode_enabled (MONO_CHECK_MODE_GC))
+               coop_tls_pop (cookie);
 #endif
-}
 
-void
-mono_threads_coop_begin_global_suspend (void)
-{
-       if (mono_threads_is_coop_enabled ())
-               mono_polling_required = 1;
+       mono_threads_exit_gc_unsafe_region_unbalanced (cookie, stackdata);
 }
 
 void
-mono_threads_coop_end_global_suspend (void)
-{
-       if (mono_threads_is_coop_enabled ())
-               mono_polling_required = 0;
-}
-
-gpointer
-mono_threads_enter_gc_unsafe_region (gpointer* stackdata)
+mono_threads_exit_gc_unsafe_region_unbalanced (gpointer cookie, gpointer *stackdata)
 {
        if (!mono_threads_is_coop_enabled ())
-               return NULL;
-
-       return mono_threads_reset_blocking_start (stackdata);
-}
+               return;
 
-void
-mono_threads_exit_gc_unsafe_region (gpointer cookie, gpointer* stackdata)
-{
-       if (!mono_threads_is_coop_enabled ())
+       if (!cookie)
                return;
 
-       mono_threads_reset_blocking_end (cookie, stackdata);
+       mono_threads_enter_gc_safe_region_unbalanced (stackdata);
 }
 
 void
@@ -354,26 +402,48 @@ mono_threads_assert_gc_unsafe_region (void)
        MONO_REQ_GC_UNSAFE_MODE;
 }
 
-gpointer
-mono_threads_enter_gc_safe_region (gpointer *stackdata)
+gboolean
+mono_threads_is_coop_enabled (void)
 {
-       if (!mono_threads_is_coop_enabled ())
-               return NULL;
-
-       return mono_threads_prepare_blocking (stackdata);
+#if defined(USE_COOP_GC)
+       return TRUE;
+#else
+       static int is_coop_enabled = -1;
+       if (G_UNLIKELY (is_coop_enabled == -1))
+               is_coop_enabled = g_getenv ("MONO_ENABLE_COOP") != NULL ? 1 : 0;
+       return is_coop_enabled == 1;
+#endif
 }
 
+
 void
-mono_threads_exit_gc_safe_region (gpointer cookie, gpointer *stackdata)
+mono_threads_init_coop (void)
 {
        if (!mono_threads_is_coop_enabled ())
                return;
 
-       mono_threads_finish_blocking (cookie, stackdata);
+       mono_counters_register ("Coop Reset Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_reset_blocking_count);
+       mono_counters_register ("Coop Try Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_try_blocking_count);
+       mono_counters_register ("Coop Do Blocking", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_do_blocking_count);
+       mono_counters_register ("Coop Do Polling", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_do_polling_count);
+       mono_counters_register ("Coop Save Count", MONO_COUNTER_GC | MONO_COUNTER_INT, &coop_save_count);
+       //See the above for what's wrong here.
+
+#ifdef ENABLE_CHECKED_BUILD_GC
+       mono_native_tls_alloc (&coop_reset_count_stack_key, NULL);
+#endif
 }
 
 void
-mono_threads_assert_gc_safe_region (void)
+mono_threads_coop_begin_global_suspend (void)
 {
-       MONO_REQ_GC_SAFE_MODE;
+       if (mono_threads_is_coop_enabled ())
+               mono_polling_required = 1;
+}
+
+void
+mono_threads_coop_end_global_suspend (void)
+{
+       if (mono_threads_is_coop_enabled ())
+               mono_polling_required = 0;
 }
index 52efd8309f3523ea7e5bfa86530ec563ce5e5e43..f6afc34dafc5a58666ad8f444326fb9b6abd0e5c 100644 (file)
@@ -14,6 +14,8 @@
 #include <glib.h>
 
 #include "checked-build.h"
+#include "mono-threads.h"
+#include "mono-threads-api.h"
 
 G_BEGIN_DECLS
 
@@ -22,36 +24,14 @@ extern volatile size_t mono_polling_required;
 
 /* Runtime consumable API */
 
-static gboolean G_GNUC_UNUSED
-mono_threads_is_coop_enabled (void)
-{
-#if defined(USE_COOP_GC)
-       return TRUE;
-#else
-       static gboolean is_coop_enabled = -1;
-       if (G_UNLIKELY (is_coop_enabled == -1))
-               is_coop_enabled = g_getenv ("MONO_ENABLE_COOP") != NULL ? TRUE : FALSE;
-       return is_coop_enabled;
-#endif
-}
+gboolean
+mono_threads_is_coop_enabled (void);
 
 /* Internal API */
 
 void
 mono_threads_state_poll (void);
 
-gpointer
-mono_threads_prepare_blocking (gpointer stackdata);
-
-void
-mono_threads_finish_blocking (gpointer cookie, gpointer stackdata);
-
-gpointer
-mono_threads_reset_blocking_start (gpointer stackdata);
-
-void
-mono_threads_reset_blocking_end (gpointer cookie, gpointer stackdata);
-
 static inline void
 mono_threads_safepoint (void)
 {
@@ -59,24 +39,35 @@ mono_threads_safepoint (void)
                mono_threads_state_poll ();
 }
 
-#define MONO_PREPARE_BLOCKING  \
-       MONO_REQ_GC_NOT_CRITICAL;               \
+/*
+ * The following are used when detaching a thread. We need to pass the MonoThreadInfo*
+ * as a paramater as the thread info TLS key is being destructed, meaning that
+ * mono_thread_info_current_unchecked will return NULL, which would lead to a
+ * runtime assertion error when trying to switch the state of the current thread.
+ */
+
+gpointer
+mono_threads_enter_gc_safe_region_with_info (THREAD_INFO_TYPE *info, gpointer *stackdata);
+
+#define MONO_ENTER_GC_SAFE_WITH_INFO(info)     \
        do {    \
-               gpointer __dummy;       \
-               gpointer __blocking_cookie = mono_threads_prepare_blocking (&__dummy)
+               gpointer __gc_safe_dummy;       \
+               gpointer __gc_safe_cookie = mono_threads_enter_gc_safe_region_with_info ((info), &__gc_safe_dummy)
+
+#define MONO_EXIT_GC_SAFE_WITH_INFO    MONO_EXIT_GC_SAFE
 
-#define MONO_FINISH_BLOCKING \
-               mono_threads_finish_blocking (__blocking_cookie, &__dummy);     \
-       } while (0)
+gpointer
+mono_threads_enter_gc_unsafe_region_with_info (THREAD_INFO_TYPE *info, gpointer *stackdata);
 
-#define MONO_PREPARE_RESET_BLOCKING    \
+#define MONO_ENTER_GC_UNSAFE_WITH_INFO(info)   \
        do {    \
-               gpointer __dummy;       \
-               gpointer __reset_cookie = mono_threads_reset_blocking_start (&__dummy)
+               gpointer __gc_unsafe_dummy;     \
+               gpointer __gc_unsafe_cookie = mono_threads_enter_gc_unsafe_region_with_info ((info), &__gc_unsafe_dummy)
 
-#define MONO_FINISH_RESET_BLOCKING \
-               mono_threads_reset_blocking_end (__reset_cookie, &__dummy);     \
-       } while (0)
+#define MONO_EXIT_GC_UNSAFE_WITH_INFO  MONO_EXIT_GC_UNSAFE
+
+gpointer
+mono_threads_enter_gc_unsafe_region_unbalanced_with_info (THREAD_INFO_TYPE *info, gpointer *stackdata);
 
 G_END_DECLS
 
index 6c2b07e468f5686872fb4a9db872be7f30dacdd2..b23680759a8c6adf76789d30ca51da4eceb22317 100644 (file)
@@ -56,7 +56,6 @@ gboolean
 mono_threads_core_begin_async_suspend (MonoThreadInfo *info, gboolean interrupt_kernel)
 {
        kern_return_t ret;
-       gboolean res;
 
        g_assert (info);
 
@@ -65,7 +64,7 @@ mono_threads_core_begin_async_suspend (MonoThreadInfo *info, gboolean interrupt_
                ret = thread_suspend (info->native_handle);
        } while (ret == KERN_ABORTED);
 
-       THREADS_SUSPEND_DEBUG ("SUSPEND %p -> %d\n", (void*)info->native_handle, ret);
+       THREADS_SUSPEND_DEBUG ("SUSPEND %p -> %d\n", (gpointer)(gsize)info->native_handle, ret);
        if (ret != KERN_SUCCESS)
                return FALSE;
 
@@ -76,31 +75,26 @@ mono_threads_core_begin_async_suspend (MonoThreadInfo *info, gboolean interrupt_
                        ret = thread_resume (info->native_handle);
                } while (ret == KERN_ABORTED);
                g_assert (ret == KERN_SUCCESS);
-               THREADS_SUSPEND_DEBUG ("FAILSAFE RESUME/1 %p -> %d\n", (void*)info->native_handle, 0);
+               THREADS_SUSPEND_DEBUG ("FAILSAFE RESUME/1 %p -> %d\n", (gpointer)(gsize)info->native_handle, 0);
                //XXX interrupt_kernel doesn't make sense in this case as the target is not in a syscall
                return TRUE;
        }
-       res = mono_threads_get_runtime_callbacks ()->
+       info->suspend_can_continue = mono_threads_get_runtime_callbacks ()->
                thread_state_init_from_handle (&info->thread_saved_state [ASYNC_SUSPEND_STATE_INDEX], info);
-       THREADS_SUSPEND_DEBUG ("thread state %p -> %d\n", (void*)info->native_handle, res);
-       if (res) {
+       THREADS_SUSPEND_DEBUG ("thread state %p -> %d\n", (gpointer)(gsize)info->native_handle, res);
+       if (info->suspend_can_continue) {
                if (interrupt_kernel)
                        thread_abort (info->native_handle);
        } else {
-               mono_threads_transition_async_suspend_compensation (info);
-               do {
-                       ret = thread_resume (info->native_handle);
-               } while (ret == KERN_ABORTED);
-               g_assert (ret == KERN_SUCCESS);
-               THREADS_SUSPEND_DEBUG ("FAILSAFE RESUME/2 %p -> %d\n", (void*)info->native_handle, 0);
+               THREADS_SUSPEND_DEBUG ("FAILSAFE RESUME/2 %p -> %d\n", (gpointer)(gsize)info->native_handle, 0);
        }
-       return res;
+       return info->suspend_can_continue;
 }
 
 gboolean
 mono_threads_core_check_suspend_result (MonoThreadInfo *info)
 {
-       return TRUE;
+       return info->suspend_can_continue;
 }
 
 gboolean
@@ -146,7 +140,7 @@ mono_threads_core_begin_async_resume (MonoThreadInfo *info)
        do {
                ret = thread_resume (info->native_handle);
        } while (ret == KERN_ABORTED);
-       THREADS_SUSPEND_DEBUG ("RESUME %p -> %d\n", (void*)info->native_handle, ret);
+       THREADS_SUSPEND_DEBUG ("RESUME %p -> %d\n", (gpointer)(gsize)info->native_handle, ret);
 
        return ret == KERN_SUCCESS;
 }
index 8200b101913cc05c9e612c69a2077737a5a5ac85..c1b67330fb566d54589fc7bf849770295007bff0 100644 (file)
@@ -160,10 +160,10 @@ suspend_signal_handler (int _dummy, siginfo_t *info, void *context)
        MonoThreadInfo *current = mono_thread_info_current ();
        gboolean ret;
 
-       THREADS_SUSPEND_DEBUG ("SIGNAL HANDLER FOR %p [%p]\n", current, (void*)current->native_handle);
+       THREADS_SUSPEND_DEBUG ("SIGNAL HANDLER FOR %p [%p]\n", mono_thread_info_get_tid (current), (void*)current->native_handle);
        if (current->syscall_break_signal) {
                current->syscall_break_signal = FALSE;
-               THREADS_SUSPEND_DEBUG ("\tsyscall break for %p\n", current);
+               THREADS_SUSPEND_DEBUG ("\tsyscall break for %p\n", mono_thread_info_get_tid (current));
                mono_threads_notify_initiator_of_abort (current);
                goto done;
        }
@@ -171,25 +171,27 @@ suspend_signal_handler (int _dummy, siginfo_t *info, void *context)
        /* Have we raced with self suspend? */
        if (!mono_threads_transition_finish_async_suspend (current)) {
                current->suspend_can_continue = TRUE;
-               THREADS_SUSPEND_DEBUG ("\tlost race with self suspend %p\n", current);
+               THREADS_SUSPEND_DEBUG ("\tlost race with self suspend %p\n", mono_thread_info_get_tid (current));
                goto done;
        }
 
-       ret = mono_threads_get_runtime_callbacks ()->thread_state_init_from_sigctx (&current->thread_saved_state [ASYNC_SUSPEND_STATE_INDEX], context);
-
-       /* thread_state_init_from_sigctx return FALSE if the current thread is detaching and suspend can't continue. */
-       current->suspend_can_continue = ret;
-
-       /* This thread is doomed, all we can do is give up and let the suspender recover. */
-       if (!ret) {
-               THREADS_SUSPEND_DEBUG ("\tThread is dying, failed to capture state %p\n", current);
-               mono_threads_transition_async_suspend_compensation (current);
-
-               /* We're done suspending */
-               mono_threads_notify_initiator_of_suspend (current);
-
-               goto done;
-       }
+       /*
+        * If the thread is starting, then thread_state_init_from_sigctx returns FALSE,
+        * as the thread might have been attached without the domain or lmf having been
+        * initialized yet.
+        *
+        * One way to fix that is to keep the thread suspended (wait for the restart
+        * signal), and make sgen aware that even if a thread might be suspended, there
+        * would be cases where you cannot scan its stack/registers. That would in fact
+        * consist in removing the async suspend compensation, and treat the case directly
+        * in sgen. That's also how it was done in the sgen specific suspend code.
+        */
+
+       /* thread_state_init_from_sigctx return FALSE if the current thread is starting or detaching and suspend can't continue. */
+       current->suspend_can_continue = mono_threads_get_runtime_callbacks ()->thread_state_init_from_sigctx (&current->thread_saved_state [ASYNC_SUSPEND_STATE_INDEX], context);
+
+       if (!current->suspend_can_continue)
+               THREADS_SUSPEND_DEBUG ("\tThread is starting or detaching, failed to capture state %p\n", mono_thread_info_get_tid (current));
 
        /*
        Block the restart signal.
index 395fdb5bdab19dacdf2de564c7e8fa534cd9b936..adf14f22eaf802f541bcabef1e24cba8fb8f1d99 100644 (file)
@@ -41,6 +41,7 @@ typedef struct {
        void *(*start_routine)(void*);
        void *arg;
        int flags;
+       gint32 priority;
        MonoCoopSem registered;
        HANDLE handle;
 } StartInfo;
@@ -71,6 +72,8 @@ inner_start_thread (void *arg)
        info->runtime_thread = TRUE;
        info->handle = handle;
 
+       wapi_init_thread_info_priority(handle, start_info->priority);
+
        if (flags & CREATE_SUSPENDED) {
                info->create_suspended = TRUE;
                mono_coop_sem_init (&info->create_suspended_sem, 0);
@@ -96,17 +99,20 @@ inner_start_thread (void *arg)
 }
 
 HANDLE
-mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer arg, guint32 stack_size, guint32 creation_flags, MonoNativeThreadId *out_tid)
+mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer arg, MonoThreadParm *tp, MonoNativeThreadId *out_tid)
 {
        pthread_attr_t attr;
        int res;
        pthread_t thread;
        StartInfo start_info;
+       guint32 stack_size;
+       int policy;
+       struct sched_param sp;
 
        res = pthread_attr_init (&attr);
        g_assert (!res);
 
-       if (stack_size == 0) {
+       if (tp->stack_size == 0) {
 #if HAVE_VALGRIND_MEMCHECK_H
                if (RUNNING_ON_VALGRIND)
                        stack_size = 1 << 20;
@@ -115,7 +121,8 @@ mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer
 #else
                stack_size = (SIZEOF_VOID_P / 4) * 1024 * 1024;
 #endif
-       }
+       } else
+               stack_size = tp->stack_size;
 
 #ifdef PTHREAD_STACK_MIN
        if (stack_size < PTHREAD_STACK_MIN)
@@ -127,10 +134,20 @@ mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer
        g_assert (!res);
 #endif
 
+       /*
+        * For policies that respect priorities set the prirority for the new thread
+        */ 
+       pthread_getschedparam(pthread_self(), &policy, &sp);
+       if ((policy == SCHED_FIFO) || (policy == SCHED_RR)) {
+               sp.sched_priority = wapi_thread_priority_to_posix_priority (tp->priority, policy);
+               res = pthread_attr_setschedparam (&attr, &sp);
+       }
+
        memset (&start_info, 0, sizeof (StartInfo));
        start_info.start_routine = (void *(*)(void *)) start_routine;
        start_info.arg = arg;
-       start_info.flags = creation_flags;
+       start_info.flags = tp->creation_flags;
+       start_info.priority = tp->priority;
        mono_coop_sem_init (&(start_info.registered), 0);
 
        /* Actually start the thread */
@@ -277,7 +294,7 @@ mono_native_thread_create (MonoNativeThreadId *tid, gpointer func, gpointer arg)
 }
 
 void
-mono_threads_core_set_name (MonoNativeThreadId tid, const char *name)
+mono_native_thread_set_name (MonoNativeThreadId tid, const char *name)
 {
 #ifdef __MACH__
        /*
index 32491a4ca225229e622799504f8d7cc6012c031c..43df55e5359359b7f7d30c7bcb685916451a4d66 100644 (file)
@@ -107,7 +107,8 @@ retry_state_change:
        UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
        switch (cur_state) {
        case STATE_STARTING:
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, STATE_RUNNING, raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("ATTACH", info, raw_state, STATE_RUNNING, 0);
@@ -133,18 +134,20 @@ retry_state_change:
        UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
        switch (cur_state) {
        case STATE_RUNNING:
-               g_assert (suspend_count == 0);
+       case STATE_BLOCKING: /* An OS thread on coop goes STARTING->BLOCKING->RUNNING->BLOCKING->DETACHED */
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, STATE_DETACHED, raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("DETACH", info, raw_state, STATE_DETACHED, 0);
                return TRUE;
        case STATE_ASYNC_SUSPEND_REQUESTED: //Can't detach until whoever asked us to suspend to be happy with us
                return FALSE;
+
 /*
 STATE_ASYNC_SUSPENDED: Code should not be running while suspended.
 STATE_SELF_SUSPENDED: Code should not be running while suspended.
 STATE_SELF_SUSPEND_REQUESTED: This is a bug in the self suspend code that didn't execute the second part of it
-STATE_BLOCKING: This is a bug in the coop code that forgot to do a finish blocking before exiting.
 STATE_BLOCKING_AND_SUSPENDED: This is a bug in coop x suspend that resulted the thread in an undetachable state.
 */
        default:
@@ -166,14 +169,16 @@ retry_state_change:
 
        switch (cur_state) {
        case STATE_RUNNING: //Post a self suspend request
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_SELF_SUSPEND_REQUESTED, 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("SELF_SUSPEND_REQUEST", info, raw_state, STATE_SELF_SUSPEND_REQUESTED, 1);
                break;
 
        case STATE_ASYNC_SUSPEND_REQUESTED: //Bump the suspend count but don't change the request type as async takes preference
-               g_assert (suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX);
+               if (!(suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0 and < THREAD_SUSPEND_COUNT_MAX", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (cur_state, suspend_count + 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("SUSPEND_REQUEST", info, raw_state, cur_state, 1);
@@ -215,7 +220,8 @@ retry_state_change:
 
        switch (cur_state) {
        case STATE_RUNNING: //Post an async suspend request
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_ASYNC_SUSPEND_REQUESTED, 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("ASYNC_SUSPEND_REQUESTED", info, raw_state, STATE_ASYNC_SUSPEND_REQUESTED, 1);
@@ -224,21 +230,24 @@ retry_state_change:
        case STATE_ASYNC_SUSPENDED:
        case STATE_SELF_SUSPENDED: //Async suspend can suspend the same thread multiple times as it starts from the outside
        case STATE_BLOCKING_AND_SUSPENDED:
-               g_assert (suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX);
+               if (!(suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0 and < THREAD_SUSPEND_COUNT_MAX", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (cur_state, suspend_count + 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("ASYNC_SUSPEND_REQUESTED", info, raw_state, cur_state, 1);
                return AsyncSuspendAlreadySuspended; //Thread is already suspended so we don't need to wait it to suspend
 
        case STATE_SELF_SUSPEND_REQUESTED: //This suspend needs to notify the initiator, so we need to promote the suspend to async
-               g_assert (suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX);
+               if (!(suspend_count > 0 && suspend_count < THREAD_SUSPEND_COUNT_MAX))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0 and < THREAD_SUSPEND_COUNT_MAX", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_ASYNC_SUSPEND_REQUESTED, suspend_count + 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("ASYNC_SUSPEND_REQUESTED", info, raw_state, STATE_ASYNC_SUSPEND_REQUESTED, 1);
                return AsyncSuspendWait; //This is the first async suspend request, change the thread and let it notify us [1]
 
        case STATE_BLOCKING:
-               g_assert (suspend_count < THREAD_SUSPEND_COUNT_MAX);
+               if (!(suspend_count < THREAD_SUSPEND_COUNT_MAX))
+                       mono_fatal_with_history ("suspend_count = %d, but should be < THREAD_SUSPEND_COUNT_MAX", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (cur_state, suspend_count + 1), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("ASYNC_SUSPEND_REQUESTED", info, raw_state, cur_state, 1);
@@ -279,13 +288,15 @@ retry_state_change:
        UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
        switch (cur_state) {
        case STATE_RUNNING:
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                trace_state_change ("STATE_POLL", info, raw_state, cur_state, 0);
                return SelfSuspendResumed; //We're fine, don't suspend
 
        case STATE_ASYNC_SUSPEND_REQUESTED: //Async suspend requested, service it with a self suspend
        case STATE_SELF_SUSPEND_REQUESTED: //Start the self suspend process
-               g_assert (suspend_count > 0);
+               if (!(suspend_count > 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_SELF_SUSPENDED, suspend_count), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("STATE_POLL", info, raw_state, STATE_SELF_SUSPENDED, 0);
@@ -337,7 +348,8 @@ retry_state_change:
        UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
        switch (cur_state) {
        case STATE_RUNNING: //Thread already running.
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                trace_state_change ("RESUME", info, raw_state, cur_state, 0);
                return ResumeError; //Resume failed because thread was not blocked
 
@@ -355,7 +367,8 @@ retry_state_change:
        case STATE_ASYNC_SUSPENDED:
        case STATE_SELF_SUSPENDED:
        case STATE_BLOCKING_AND_SUSPENDED: //Decrease the suspend_count and maybe resume
-               g_assert (suspend_count > 0);
+               if (!(suspend_count > 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0", suspend_count);
                if (suspend_count > 1) {
                        if (InterlockedCompareExchange (&info->thread_state, build_thread_state (cur_state, suspend_count - 1), raw_state) != raw_state)
                                        goto retry_state_change;
@@ -376,7 +389,8 @@ retry_state_change:
                }
 
        case STATE_SELF_SUSPEND_REQUESTED: //Self suspend was requested but another thread decided to resume it.
-               g_assert (suspend_count > 0);
+               if (!(suspend_count > 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0", suspend_count);
                if (suspend_count > 1) {
                        if (InterlockedCompareExchange (&info->thread_state, build_thread_state (cur_state, suspend_count - 1), raw_state) != raw_state)
                                        goto retry_state_change;
@@ -441,51 +455,6 @@ STATE_BLOCKING: Async suspend only begins if a transition to async suspend reque
        }
 }
 
-/*
-This the compensatory transition for failed async suspend.
-
-Async suspend can land on a thread as it began cleaning up and is no longer
-functional. This happens as cleanup is a racy process from the async suspend
-perspective. The thread could have cleaned up its domain or jit_tls, for example.
-
-It can only transition the state as left by a sucessfull finish async suspend transition.
-
-*/
-void
-mono_threads_transition_async_suspend_compensation (MonoThreadInfo* info)
-{
-       int raw_state, cur_state, suspend_count;
-
-retry_state_change:
-       UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
-       switch (cur_state) {
-
-       case STATE_ASYNC_SUSPENDED:
-               /*
-               Must be one since if a self suspend is in progress the thread should still be async suspendable.
-               If count > 1 and no self suspend is in progress then it means one of the following two.
-               - the thread was previously suspended, which means we should never reach end suspend in the first place.
-               - another suspend happened concurrently, which means the global suspend lock didn't happen.
-               */
-               g_assert (suspend_count == 1);
-               if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_RUNNING, suspend_count - 1), raw_state) != raw_state)
-                       goto retry_state_change;
-               trace_state_change ("COMPENSATE_FINISH_ASYNC_SUSPEND", info, raw_state, STATE_RUNNING, -1);
-               break;
-/*
-STATE_RUNNING
-STATE_SELF_SUSPENDED
-STATE_ASYNC_SUSPEND_REQUESTED
-STATE_BLOCKING
-STATE_BLOCKING_AND_SUSPENDED
-STATE_SELF_SUSPEND_REQUESTED: All those are invalid end states of a sucessfull finish async suspend
-*/
-       default:
-               mono_fatal_with_history ("Cannot transition thread %p from %s with COMPENSATE_FINISH_ASYNC_SUSPEND", mono_thread_info_get_tid (info), state_name (cur_state));
-
-       }
-}
-
 /*
 This transitions the thread into a cooperative state where it's assumed to be suspended but can continue.
 
@@ -508,14 +477,16 @@ retry_state_change:
        switch (cur_state) {
 
        case STATE_RUNNING: //transition to blocked
-               g_assert (suspend_count == 0);
+               if (!(suspend_count == 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be == 0", suspend_count);
                if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_BLOCKING, suspend_count), raw_state) != raw_state)
                        goto retry_state_change;
                trace_state_change ("DO_BLOCKING", info, raw_state, STATE_BLOCKING, 0);
                return DoBlockingContinue;
 
        case STATE_ASYNC_SUSPEND_REQUESTED:
-               g_assert (suspend_count > 0);
+               if (!(suspend_count > 0))
+                       mono_fatal_with_history ("suspend_count = %d, but should be > 0", suspend_count);
                trace_state_change ("DO_BLOCKING", info, raw_state, cur_state, 0);
                return DoBlockingPollAndRetry;
 /*
@@ -548,11 +519,6 @@ mono_threads_transition_done_blocking (MonoThreadInfo* info)
 retry_state_change:
        UNWRAP_THREAD_STATE (raw_state, cur_state, suspend_count, info);
        switch (cur_state) {
-       case STATE_RUNNING: //Blocking was aborted and not properly restored
-       case STATE_ASYNC_SUSPEND_REQUESTED: //Blocking was aborted, not properly restored and now there's a pending suspend
-               trace_state_change ("DONE_BLOCKING", info, raw_state, cur_state, 0);
-               return DoneBlockingAborted;
-
        case STATE_BLOCKING:
                if (suspend_count == 0) {
                        if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_RUNNING, suspend_count), raw_state) != raw_state)
@@ -560,7 +526,8 @@ retry_state_change:
                        trace_state_change ("DONE_BLOCKING", info, raw_state, STATE_RUNNING, 0);
                        return DoneBlockingOk;
                } else {
-                       g_assert (suspend_count >= 0);
+                       if (!(suspend_count >= 0))
+                               mono_fatal_with_history ("suspend_count = %d, but should be >= 0", suspend_count);
                        if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_BLOCKING_AND_SUSPENDED, suspend_count), raw_state) != raw_state)
                                goto retry_state_change;
                        trace_state_change ("DONE_BLOCKING", info, raw_state, STATE_BLOCKING_AND_SUSPENDED, 0);
@@ -568,6 +535,8 @@ retry_state_change:
                }
 
 /*
+STATE_RUNNING: //Blocking was aborted and not properly restored
+STATE_ASYNC_SUSPEND_REQUESTED: //Blocking was aborted, not properly restored and now there's a pending suspend
 STATE_ASYNC_SUSPENDED
 STATE_SELF_SUSPENDED: Code should not be running while suspended.
 STATE_SELF_SUSPEND_REQUESTED: A blocking operation must not be done while trying to self suspend
@@ -587,7 +556,7 @@ It returns one of:
 -Ignore: Thread was not in blocking, nothing to do;
 -IgnoreAndPool: Thread was not blocking and there's a pending suspend that needs to be processed;
 -Ok: Blocking state successfully aborted;
--OkAndPool: Blocking state successfully aborted, there's a pending suspend to be processed though
+-Wait: Blocking state successfully aborted, there's a pending suspend to be processed though
 */
 MonoAbortBlockingResult
 mono_threads_transition_abort_blocking (THREAD_INFO_TYPE* info)
@@ -612,10 +581,12 @@ retry_state_change:
                        trace_state_change ("ABORT_BLOCKING", info, raw_state, STATE_RUNNING, 0);
                        return AbortBlockingOk;
                } else {
-                       if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_SELF_SUSPEND_REQUESTED, suspend_count), raw_state) != raw_state)
+                       if (!(suspend_count > 0))
+                               mono_fatal_with_history ("suspend_count = %d, but should be > 0", suspend_count);
+                       if (InterlockedCompareExchange (&info->thread_state, build_thread_state (STATE_BLOCKING_AND_SUSPENDED, suspend_count), raw_state) != raw_state)
                                goto retry_state_change;
-                       trace_state_change ("ABORT_BLOCKING", info, raw_state, STATE_SELF_SUSPEND_REQUESTED, 0);
-                       return AbortBlockingOkAndPool;
+                       trace_state_change ("ABORT_BLOCKING", info, raw_state, STATE_BLOCKING_AND_SUSPENDED, 0);
+                       return AbortBlockingWait;
                }
 /*
 STATE_ASYNC_SUSPENDED:
index 86275a53833ab5028b682df6386b79015b419ec2..1b9dd43daf1f9350fc5aac916c862b8ae42c7451 100644 (file)
@@ -31,7 +31,6 @@ mono_threads_core_begin_async_suspend (MonoThreadInfo *info, gboolean interrupt_
        DWORD id = mono_thread_info_get_tid (info);
        HANDLE handle;
        DWORD result;
-       gboolean res;
 
        handle = OpenThread (THREAD_ALL_ACCESS, FALSE, id);
        g_assert (handle);
@@ -53,27 +52,24 @@ mono_threads_core_begin_async_suspend (MonoThreadInfo *info, gboolean interrupt_
                //XXX interrupt_kernel doesn't make sense in this case as the target is not in a syscall
                return TRUE;
        }
-       res = mono_threads_get_runtime_callbacks ()->thread_state_init_from_handle (&info->thread_saved_state [ASYNC_SUSPEND_STATE_INDEX], info);
+       info->suspend_can_continue = mono_threads_get_runtime_callbacks ()->thread_state_init_from_handle (&info->thread_saved_state [ASYNC_SUSPEND_STATE_INDEX], info);
        THREADS_SUSPEND_DEBUG ("thread state %p -> %d\n", (void*)id, res);
-       if (res) {
+       if (info->suspend_can_continue) {
                //FIXME do we need to QueueUserAPC on this case?
                if (interrupt_kernel)
                        QueueUserAPC ((PAPCFUNC)interrupt_apc, handle, (ULONG_PTR)NULL);
        } else {
-               mono_threads_transition_async_suspend_compensation (info);
-               result = ResumeThread (handle);
-               g_assert (result == 1);
                THREADS_SUSPEND_DEBUG ("FAILSAFE RESUME/2 %p -> %d\n", (void*)info->native_handle, 0);
        }
 
        CloseHandle (handle);
-       return res;
+       return info->suspend_can_continue;
 }
 
 gboolean
 mono_threads_core_check_suspend_result (MonoThreadInfo *info)
 {
-       return TRUE;
+       return info->suspend_can_continue;
 }
 
 gboolean
@@ -176,11 +172,12 @@ inner_start_thread (LPVOID arg)
 }
 
 HANDLE
-mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer arg, guint32 stack_size, guint32 creation_flags, MonoNativeThreadId *out_tid)
+mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer arg, MonoThreadParm *tp, MonoNativeThreadId *out_tid)
 {
        ThreadStartInfo *start_info;
        HANDLE result;
        DWORD thread_id;
+       guint32 creation_flags = tp->creation_flags;
        int res;
 
        start_info = g_malloc0 (sizeof (ThreadStartInfo));
@@ -197,7 +194,7 @@ mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start_routine, gpointer
                        return NULL;
        }
 
-       result = CreateThread (NULL, stack_size, inner_start_thread, start_info, creation_flags, &thread_id);
+       result = CreateThread (NULL, tp->stack_size, inner_start_thread, start_info, creation_flags, &thread_id);
        if (result) {
                res = mono_coop_sem_wait (&(start_info->registered), MONO_SEM_FLAGS_NONE);
                g_assert (res != -1);
@@ -348,7 +345,7 @@ typedef struct tagTHREADNAME_INFO
 #endif
 
 void
-mono_threads_core_set_name (MonoNativeThreadId tid, const char *name)
+mono_native_thread_set_name (MonoNativeThreadId tid, const char *name)
 {
 #if defined(_MSC_VER)
        /* http://msdn.microsoft.com/en-us/library/xcb2z8hs.aspx */
index b6e70329c96dc4c6f5660c3d071c3b37f8cde78a..6ebe007a3c6d583db8d05fd2a724a81e10b76cc8 100644 (file)
@@ -28,6 +28,7 @@
 #include <mono/utils/mono-lazy-init.h>
 #include <mono/utils/mono-coop-mutex.h>
 #include <mono/utils/mono-coop-semaphore.h>
+#include <mono/utils/mono-threads-coop.h>
 
 #include <errno.h>
 
@@ -46,8 +47,15 @@ harder for an operation that is hardly performance critical.
 The GC has to acquire this lock before starting a STW to make sure
 a runtime suspend won't make it wronly see a thread in a safepoint
 when it is in fact not.
+
+This has to be a naked locking primitive, and not a coop aware one, as
+it needs to be usable when destroying thread_info_key, the TLS key for
+the current MonoThreadInfo. In this case, mono_thread_info_current_unchecked,
+(which is used inside MONO_ENTER_GC_SAFE), would return NULL, leading
+to an assertion error. We then simply switch state manually in
+mono_thread_info_suspend_lock_with_info.
 */
-static MonoCoopSem global_suspend_semaphore;
+static MonoSemType global_suspend_semaphore;
 
 static size_t thread_info_size;
 static MonoThreadInfoCallbacks threads_callbacks;
@@ -72,6 +80,9 @@ static gboolean unified_suspend_enabled;
 /*abort at 1 sec*/
 #define SLEEP_DURATION_BEFORE_ABORT 200
 
+static long sleepWarnDuration = SLEEP_DURATION_BEFORE_WARNING,
+           sleepAbortDuration = SLEEP_DURATION_BEFORE_ABORT;
+
 static int suspend_posts, resume_posts, abort_posts, waits_done, pending_ops;
 
 void
@@ -227,14 +238,14 @@ mono_threads_wait_pending_operations (void)
                for (i = 0; i < pending_suspends; ++i) {
                        THREADS_SUSPEND_DEBUG ("[INITIATOR-WAIT-WAITING]\n");
                        InterlockedIncrement (&waits_done);
-                       if (!mono_os_sem_timedwait (&suspend_semaphore, SLEEP_DURATION_BEFORE_ABORT, MONO_SEM_FLAGS_NONE))
+                       if (!mono_os_sem_timedwait (&suspend_semaphore, sleepAbortDuration, MONO_SEM_FLAGS_NONE))
                                continue;
                        mono_stopwatch_stop (&suspension_time);
 
                        dump_threads ();
 
                        MOSTLY_ASYNC_SAFE_PRINTF ("WAITING for %d threads, got %d suspended\n", (int)pending_suspends, i);
-                       g_error ("suspend_thread suspend took %d ms, which is more than the allowed %d ms", (int)mono_stopwatch_elapsed_ms (&suspension_time), SLEEP_DURATION_BEFORE_ABORT);
+                       g_error ("suspend_thread suspend took %d ms, which is more than the allowed %d ms", (int)mono_stopwatch_elapsed_ms (&suspension_time), sleepAbortDuration);
                }
                mono_stopwatch_stop (&suspension_time);
                THREADS_SUSPEND_DEBUG ("Suspending %d threads took %d ms.\n", (int)pending_suspends, (int)mono_stopwatch_elapsed_ms (&suspension_time));
@@ -378,13 +389,25 @@ register_thread (MonoThreadInfo *info, gpointer baseptr)
        return info;
 }
 
+static void
+mono_thread_info_suspend_lock_with_info (MonoThreadInfo *info);
+
 static void
 unregister_thread (void *arg)
 {
-       MonoThreadInfo *info = (MonoThreadInfo *) arg;
-       int small_id = info->small_id;
+       gpointer gc_unsafe_stackdata;
+       MonoThreadInfo *info;
+       int small_id;
+
+       info = (MonoThreadInfo *) arg;
        g_assert (info);
 
+       small_id = info->small_id;
+
+       /* We only enter the GC unsafe region, as when exiting this function, the thread
+        * will be detached, and the current MonoThreadInfo* will be destroyed. */
+       mono_threads_enter_gc_unsafe_region_unbalanced_with_info (info, &gc_unsafe_stackdata);
+
        THREADS_DEBUG ("unregistering info %p\n", info);
 
        mono_native_tls_set_value (thread_exited_key, GUINT_TO_POINTER (1));
@@ -407,7 +430,7 @@ unregister_thread (void *arg)
        if (threads_callbacks.thread_detach)
                threads_callbacks.thread_detach (info);
 
-       mono_thread_info_suspend_lock ();
+       mono_thread_info_suspend_lock_with_info (info);
 
        /*
        Now perform the callback that must be done under locks.
@@ -619,6 +642,7 @@ mono_threads_init (MonoThreadInfoCallbacks *callbacks, size_t info_size)
        gboolean res;
        threads_callbacks = *callbacks;
        thread_info_size = info_size;
+       char *sleepLimit;
 #ifdef HOST_WIN32
        res = mono_native_tls_alloc (&thread_info_key, NULL);
        res = mono_native_tls_alloc (&thread_exited_key, NULL);
@@ -635,8 +659,17 @@ mono_threads_init (MonoThreadInfoCallbacks *callbacks, size_t info_size)
        g_assert (res);
 
        unified_suspend_enabled = g_getenv ("MONO_ENABLE_UNIFIED_SUSPEND") != NULL || mono_threads_is_coop_enabled ();
+       
+       if ((sleepLimit = g_getenv ("MONO_SLEEP_ABORT_LIMIT")) != NULL) {
+               long threshold = strtol(sleepLimit, NULL, 10);
+               if ((errno == 0) && (threshold >= 40))  {
+                       sleepAbortDuration = threshold;
+                       sleepWarnDuration = threshold / 20;
+               } else
+                       g_warning("MONO_SLEEP_ABORT_LIMIT must be a number >= 40");
+       }
 
-       mono_coop_sem_init (&global_suspend_semaphore, 1);
+       mono_os_sem_init (&global_suspend_semaphore, 1);
        mono_os_sem_init (&suspend_semaphore, 0);
 
        mono_lls_init (&thread_list, NULL, HAZARD_FREE_NO_LOCK);
@@ -796,12 +829,6 @@ mono_thread_info_begin_resume (MonoThreadInfo *info)
        return mono_thread_info_core_resume (info);
 }
 
-gboolean
-mono_thread_info_check_suspend_result (MonoThreadInfo *info)
-{
-       return check_async_suspend (info);
-}
-
 /*
 FIXME fix cardtable WB to be out of line and check with the runtime if the target is not the
 WB trampoline. Another option is to encode wb ranges in MonoJitInfo, but that is somewhat hard.
@@ -888,6 +915,8 @@ suspend_sync (MonoNativeThreadId tid, gboolean interrupt_kernel)
        mono_threads_wait_pending_operations ();
 
        if (!check_async_suspend (info)) {
+               mono_thread_info_core_resume (info);
+               mono_threads_wait_pending_operations ();
                mono_hazard_pointer_clear (hp, 1);
                return NULL;
        }
@@ -989,17 +1018,30 @@ The suspend lock is held during any suspend in progress.
 A GC that has safepoints must take this lock as part of its
 STW to make sure no unsafe pending suspend is in progress.   
 */
+
+static void
+mono_thread_info_suspend_lock_with_info (MonoThreadInfo *info)
+{
+       g_assert (info);
+
+       MONO_ENTER_GC_SAFE_WITH_INFO(info);
+
+       int res = mono_os_sem_wait (&global_suspend_semaphore, MONO_SEM_FLAGS_NONE);
+       g_assert (res != -1);
+
+       MONO_EXIT_GC_SAFE_WITH_INFO;
+}
+
 void
 mono_thread_info_suspend_lock (void)
 {
-       int res = mono_coop_sem_wait (&global_suspend_semaphore, MONO_SEM_FLAGS_NONE);
-       g_assert (res != -1);
+       mono_thread_info_suspend_lock_with_info (mono_thread_info_current_unchecked ());
 }
 
 void
 mono_thread_info_suspend_unlock (void)
 {
-       mono_coop_sem_post (&global_suspend_semaphore);
+       mono_os_sem_post (&global_suspend_semaphore);
 }
 
 /*
@@ -1082,9 +1124,9 @@ mono_thread_info_is_async_context (void)
  * Returns: a windows or io-layer handle for the thread.
  */
 HANDLE
-mono_threads_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, guint32 stack_size, guint32 creation_flags, MonoNativeThreadId *out_tid)
+mono_threads_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, MonoThreadParm *tp, MonoNativeThreadId *out_tid)
 {
-       return mono_threads_core_create_thread (start, arg, stack_size, creation_flags, out_tid);
+       return mono_threads_core_create_thread (start, arg, tp, out_tid);
 }
 
 /*
@@ -1197,7 +1239,7 @@ mono_thread_info_sleep (guint32 ms, gboolean *alerted)
        if (alerted)
                return sleep_interruptable (ms, alerted);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
 
        if (ms == INFINITE) {
                do {
@@ -1242,7 +1284,7 @@ mono_thread_info_sleep (guint32 ms, gboolean *alerted)
 #endif /* __linux__ */
        }
 
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        return 0;
 }
@@ -1250,9 +1292,9 @@ mono_thread_info_sleep (guint32 ms, gboolean *alerted)
 gint
 mono_thread_info_usleep (guint64 us)
 {
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        g_usleep (us);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
        return 0;
 }
 
@@ -1314,12 +1356,6 @@ mono_threads_open_thread_handle (HANDLE handle, MonoNativeThreadId tid)
        return mono_threads_core_open_thread_handle (handle, tid);
 }
 
-void
-mono_thread_info_set_name (MonoNativeThreadId tid, const char *name)
-{
-       mono_threads_core_set_name (tid, name);
-}
-
 #define INTERRUPT_STATE ((MonoThreadInfoInterruptToken*) (size_t) -1)
 
 struct _MonoThreadInfoInterruptToken {
@@ -1519,3 +1555,9 @@ mono_thread_info_describe_interrupt_token (MonoThreadInfo *info, GString *text)
        else
                g_string_append_printf (text, "waiting");
 }
+
+gboolean
+mono_thread_info_is_current (MonoThreadInfo *info)
+{
+       return mono_thread_info_get_tid (info) == mono_native_thread_id_get ();
+}
index 97c77de6e7df32e02c97b643813bec873cbd7dc6..eaab83591e53a1fbc9fdf8f6341b82976155ade6 100644 (file)
@@ -14,8 +14,6 @@
 #include <mono/utils/mono-stack-unwinding.h>
 #include <mono/utils/mono-linked-list-set.h>
 #include <mono/utils/mono-tls.h>
-#include <mono/utils/mono-threads-coop.h>
-#include <mono/utils/mono-threads-api.h>
 #include <mono/utils/mono-coop-semaphore.h>
 
 #include <mono/io-layer/io-layer.h>
@@ -191,10 +189,11 @@ typedef struct {
 #if defined(USE_POSIX_BACKEND)
        MonoSemType finish_resume_semaphore;
        gboolean syscall_break_signal;
-       gboolean suspend_can_continue;
        int signal;
 #endif
 
+       gboolean suspend_can_continue;
+
        /* This memory pool is used by coop GC to save stack data roots between GC unsafe regions */
        GByteArray *stackdata;
 
@@ -238,8 +237,11 @@ typedef struct {
 
        MonoThreadInfoInterruptToken *interrupt_token;
 
-       /* MonoHandleArena for coop handles */
-       gpointer handle_arena;
+       /* HandleStack for coop handles */
+       gpointer handle_stack;
+
+       /* Stack mark for targets that explicitly require one */
+       gpointer stack_mark;
 } MonoThreadInfo;
 
 typedef struct {
@@ -278,6 +280,15 @@ typedef enum {
 
 typedef SuspendThreadResult (*MonoSuspendThreadCallback) (THREAD_INFO_TYPE *info, gpointer user_data);
 
+/*
+ * Parameters to pass for thread creation
+ */
+typedef struct {
+       int priority;
+       guint32 creation_flags; 
+       guint32 stack_size;             
+} MonoThreadParm;
+
 static inline gboolean
 mono_threads_filter_tools_threads (THREAD_INFO_TYPE *info)
 {
@@ -357,9 +368,6 @@ mono_thread_info_lookup (MonoNativeThreadId id);
 gboolean
 mono_thread_info_resume (MonoNativeThreadId tid);
 
-MONO_API void
-mono_thread_info_set_name (MonoNativeThreadId tid, const char *name);
-
 void
 mono_thread_info_safe_suspend_and_run (MonoNativeThreadId id, gboolean interrupt_kernel, MonoSuspendThreadCallback callback, gpointer user_data);
 
@@ -445,7 +453,7 @@ gboolean
 mono_thread_info_is_live (THREAD_INFO_TYPE *info);
 
 HANDLE
-mono_threads_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, guint32 stack_size, guint32 creation_flags, MonoNativeThreadId *out_tid);
+mono_threads_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, MonoThreadParm *tp, MonoNativeThreadId *out_tid);
 
 int
 mono_threads_get_max_stack_size (void);
@@ -510,7 +518,7 @@ void mono_threads_platform_register (THREAD_INFO_TYPE *info); //ok
 void mono_threads_platform_free (THREAD_INFO_TYPE *info);
 void mono_threads_core_abort_syscall (THREAD_INFO_TYPE *info);
 gboolean mono_threads_core_needs_abort_syscall (void);
-HANDLE mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, guint32 stack_size, guint32 creation_flags, MonoNativeThreadId *out_tid);
+HANDLE mono_threads_core_create_thread (LPTHREAD_START_ROUTINE start, gpointer arg, MonoThreadParm *, MonoNativeThreadId *out_tid);
 void mono_threads_core_resume_created (THREAD_INFO_TYPE *info, MonoNativeThreadId tid);
 void mono_threads_core_get_stack_bounds (guint8 **staddr, size_t *stsize);
 gboolean mono_threads_core_yield (void);
@@ -518,7 +526,6 @@ void mono_threads_core_exit (int exit_code);
 void mono_threads_core_unregister (THREAD_INFO_TYPE *info);
 HANDLE mono_threads_core_open_handle (void);
 HANDLE mono_threads_core_open_thread_handle (HANDLE handle, MonoNativeThreadId tid);
-void mono_threads_core_set_name (MonoNativeThreadId tid, const char *name);
 
 void mono_threads_coop_begin_global_suspend (void);
 void mono_threads_coop_end_global_suspend (void);
@@ -532,6 +539,9 @@ mono_native_thread_id_equals (MonoNativeThreadId id1, MonoNativeThreadId id2);
 gboolean
 mono_native_thread_create (MonoNativeThreadId *tid, gpointer func, gpointer arg);
 
+MONO_API void
+mono_native_thread_set_name (MonoNativeThreadId tid, const char *name);
+
 /*Mach specific internals */
 void mono_threads_init_dead_letter (void);
 void mono_threads_install_dead_letter (void);
@@ -580,7 +590,6 @@ typedef enum {
 } MonoDoBlockingResult;
 
 typedef enum {
-       DoneBlockingAborted, //blocking was aborted and not properly restored, poll the state
        DoneBlockingOk, //exited blocking fine
        DoneBlockingWait, //thread should end suspended
 } MonoDoneBlockingResult;
@@ -588,9 +597,9 @@ typedef enum {
 
 typedef enum {
        AbortBlockingIgnore, //Ignore
-       AbortBlockingIgnoreAndPoll, //Ignore and pool
+       AbortBlockingIgnoreAndPoll, //Ignore and poll
        AbortBlockingOk, //Abort worked
-       AbortBlockingOkAndPool, //Abort worked, but pool before
+       AbortBlockingWait, //Abort worked, but should wait for resume
 } MonoAbortBlockingResult;
 
 
@@ -601,13 +610,15 @@ MonoRequestAsyncSuspendResult mono_threads_transition_request_async_suspension (
 MonoSelfSupendResult mono_threads_transition_state_poll (THREAD_INFO_TYPE *info);
 MonoResumeResult mono_threads_transition_request_resume (THREAD_INFO_TYPE* info);
 gboolean mono_threads_transition_finish_async_suspend (THREAD_INFO_TYPE* info);
-void mono_threads_transition_async_suspend_compensation (THREAD_INFO_TYPE* info);
 MonoDoBlockingResult mono_threads_transition_do_blocking (THREAD_INFO_TYPE* info);
 MonoDoneBlockingResult mono_threads_transition_done_blocking (THREAD_INFO_TYPE* info);
 MonoAbortBlockingResult mono_threads_transition_abort_blocking (THREAD_INFO_TYPE* info);
 
 MonoThreadUnwindState* mono_thread_info_get_suspend_state (THREAD_INFO_TYPE *info);
 
+gpointer
+mono_threads_enter_gc_unsafe_region_cookie (void);
+
 
 void mono_thread_info_wait_for_resume (THREAD_INFO_TYPE *info);
 /* Advanced suspend API, used for suspending multiple threads as once. */
@@ -621,12 +632,12 @@ gboolean mono_thread_info_in_critical_location (THREAD_INFO_TYPE *info);
 gboolean mono_thread_info_begin_suspend (THREAD_INFO_TYPE *info);
 gboolean mono_thread_info_begin_resume (THREAD_INFO_TYPE *info);
 
-gboolean
-mono_thread_info_check_suspend_result (THREAD_INFO_TYPE *info);
-
 void mono_threads_add_to_pending_operation_set (THREAD_INFO_TYPE* info); //XXX rename to something to reflect the fact that this is used for both suspend and resume
 gboolean mono_threads_wait_pending_operations (void);
 void mono_threads_begin_global_suspend (void);
 void mono_threads_end_global_suspend (void);
 
+gboolean
+mono_thread_info_is_current (THREAD_INFO_TYPE *info);
+
 #endif /* __MONO_THREADS_H__ */
index 5f0168ebb7475b94886d44a002331d2aa1184842..06f9f217b88cf6ce3a51b9fe65182ae38f182995 100644 (file)
 #include <utils/mono-time.h>
 
 
-#define MTICKS_PER_SEC 10000000
+#define MTICKS_PER_SEC (10 * 1000 * 1000)
+
+gint64
+mono_msec_ticks (void)
+{
+       return mono_100ns_ticks () / 10 / 1000;
+}
 
 #ifdef HOST_WIN32
 #include <windows.h>
 
-guint32
-mono_msec_ticks (void)
+#ifndef _MSC_VER
+/* we get "error: implicit declaration of function 'GetTickCount64'" */
+WINBASEAPI ULONGLONG WINAPI GetTickCount64(void);
+#endif
+
+gint64
+mono_msec_boottime (void)
 {
        /* GetTickCount () is reportedly monotonic */
-       return GetTickCount ();
+       return GetTickCount64 ();
 }
 
 /* Returns the number of 100ns ticks from unspecified time: this should be monotonic */
@@ -102,7 +113,7 @@ get_boot_time (void)
        if (uptime) {
                double upt;
                if (fscanf (uptime, "%lf", &upt) == 1) {
-                       gint64 now = mono_100ns_ticks ();
+                       gint64 now = mono_100ns_datetime ();
                        fclose (uptime);
                        return now - (gint64)(upt * MTICKS_PER_SEC);
                }
@@ -114,14 +125,14 @@ get_boot_time (void)
 }
 
 /* Returns the number of milliseconds from boot time: this should be monotonic */
-guint32
-mono_msec_ticks (void)
+gint64
+mono_msec_boottime (void)
 {
        static gint64 boot_time = 0;
        gint64 now;
        if (!boot_time)
                boot_time = get_boot_time ();
-       now = mono_100ns_ticks ();
+       now = mono_100ns_datetime ();
        /*printf ("now: %llu (boot: %llu) ticks: %llu\n", (gint64)now, (gint64)boot_time, (gint64)(now - boot_time));*/
        return (now - boot_time)/10000;
 }
@@ -131,7 +142,16 @@ gint64
 mono_100ns_ticks (void)
 {
        struct timeval tv;
-#ifdef CLOCK_MONOTONIC
+#if defined(PLATFORM_MACOSX)
+       /* http://developer.apple.com/library/mac/#qa/qa1398/_index.html */
+       static mach_timebase_info_data_t timebase;
+       guint64 now = mach_absolute_time ();
+       if (timebase.denom == 0) {
+               mach_timebase_info (&timebase);
+               timebase.denom *= 100; /* we return 100ns ticks */
+       }
+       return now * timebase.numer / timebase.denom;
+#elif defined(CLOCK_MONOTONIC)
        struct timespec tspec;
        static struct timespec tspec_freq = {0};
        static int can_use_clock = 0;
@@ -145,16 +165,6 @@ mono_100ns_ticks (void)
                        return ((gint64)tspec.tv_sec * MTICKS_PER_SEC + tspec.tv_nsec / 100);
                }
        }
-       
-#elif defined(PLATFORM_MACOSX)
-       /* http://developer.apple.com/library/mac/#qa/qa1398/_index.html */
-       static mach_timebase_info_data_t timebase;
-       guint64 now = mach_absolute_time ();
-       if (timebase.denom == 0) {
-               mach_timebase_info (&timebase);
-               timebase.denom *= 100; /* we return 100ns ticks */
-       }
-       return now * timebase.numer / timebase.denom;
 #endif
        if (gettimeofday (&tv, NULL) == 0)
                return ((gint64)tv.tv_sec * 1000000 + tv.tv_usec) * 10;
index 95bda8e530979b740b5b7fa06a99b300031e7ede..438b9ef18815b1bdc0ee574c715638654f25f44f 100644 (file)
@@ -8,14 +8,19 @@
 #include <sys/time.h>
 #endif
 
-/* Returns the number of milliseconds from boot time: this should be monotonic */
-guint32 mono_msec_ticks      (void);
+/* Returns the number of milliseconds from boot time: this should be monotonic
+ *
+ * Prefer to use mono_msec_ticks for elapsed time calculation. */
+gint64 mono_msec_boottime (void);
+
+/* Returns the number of milliseconds ticks from unspecified time: this should be monotonic */
+gint64 mono_msec_ticks (void);
 
 /* Returns the number of 100ns ticks from unspecified time: this should be monotonic */
-gint64  mono_100ns_ticks     (void);
+gint64 mono_100ns_ticks (void);
 
 /* Returns the number of 100ns ticks since 1/1/1601, UTC timezone */
-gint64  mono_100ns_datetime  (void);
+gint64 mono_100ns_datetime (void);
 
 #ifndef HOST_WIN32
 gint64 mono_100ns_datetime_from_timeval (struct timeval tv);
index 565b3fe593b6a89fd9908f88e8b3d71424f05da8..2c3ed31df4539c5aa6813646d062bfb03fbdef9f 100644 (file)
@@ -27,7 +27,8 @@ typedef enum {
        TLS_KEY_SGEN_TLAB_TEMP_END = 6,
        TLS_KEY_BOEHM_GC_THREAD = 7,
        TLS_KEY_LMF_ADDR = 8,
-       TLS_KEY_NUM = 9
+       TLS_KEY_SGEN_IN_CRITICAL_REGION_ADDR = 9,
+       TLS_KEY_NUM = 10
 } MonoTlsKey;
 
 #ifdef HOST_WIN32
index 6a82e68b5a60add404b2d2c00599862fee10d01a..ede69be85f35d83385d2d8acd2e6f5faf3fd44d2 100644 (file)
@@ -73,9 +73,9 @@ mono_get_address_info (const char *hostname, int port, int flags, MonoAddressInf
 #endif
        sprintf (service_name, "%d", port);
 
-       MONO_PREPARE_BLOCKING;
+       MONO_ENTER_GC_SAFE;
        ret = getaddrinfo (hostname, service_name, &hints, &info);
-       MONO_FINISH_BLOCKING;
+       MONO_EXIT_GC_SAFE;
 
        if (ret)
                return 1; /* FIXME propagate the error */
index 486f7866be2d0b45c247cbe011dae9bbe459afc0..bcd711d0f5a8d1919e14d0746597bf6e8195ab7a 100644 (file)
@@ -4,7 +4,12 @@
 /*.suo
 /*.sdf
 /*.opensdf
+/*.opendb
+mono.VC.db
 /ipch/
 /Win32/
 /x64/
-/include/
\ No newline at end of file
+/include/
+/package/
+/build/
+/dist/
diff --git a/msvc/build-all.vcxproj b/msvc/build-all.vcxproj
new file mode 100644 (file)
index 0000000..0626d25
--- /dev/null
@@ -0,0 +1,155 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{5362490B-8516-44EE-9987-014C015A080A}</ProjectGuid>\r
+    <RootNamespace>buildall</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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 Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PreBuildEvent>\r
+      <Command>\r
+      </Command>\r
+    </PreBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="build-init.vcxproj">\r
+      <Project>{92ae7622-5f58-4234-9a26-9ec71876b3f4}</Project>\r
+    </ProjectReference>\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/build-all.vcxproj.filters b/msvc/build-all.vcxproj.filters
new file mode 100644 (file)
index 0000000..ef1ebf5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/msvc/build-init.vcxproj b/msvc/build-init.vcxproj
new file mode 100644 (file)
index 0000000..ee690bc
--- /dev/null
@@ -0,0 +1,148 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{92AE7622-5F58-4234-9A26-9EC71876B3F4}</ProjectGuid>\r
+    <RootNamespace>buildinit</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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 Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>winsetup.bat</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>winsetup.bat</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>winsetup.bat</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>winsetup.bat</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\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/build-init.vcxproj.filters b/msvc/build-init.vcxproj.filters
new file mode 100644 (file)
index 0000000..ef1ebf5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/msvc/build-install.vcxproj b/msvc/build-install.vcxproj
new file mode 100644 (file)
index 0000000..a50201f
--- /dev/null
@@ -0,0 +1,151 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{A9DC644B-9171-4FCD-BF21-2CC6D055FC40}</ProjectGuid>\r
+    <RootNamespace>buildinstall</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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 Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>.\install.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" "$(MONO_INSTALL_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>.\install.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" "$(MONO_INSTALL_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\install.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" "$(MONO_INSTALL_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\install.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" "$(MONO_INSTALL_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="build-package.vcxproj">\r
+      <Project>{b6e563b8-7f57-4f7f-9439-f2405d4e2522}</Project>\r
+    </ProjectReference>\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/build-install.vcxproj.filters b/msvc/build-install.vcxproj.filters
new file mode 100644 (file)
index 0000000..ef1ebf5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/msvc/build-package.vcxproj b/msvc/build-package.vcxproj
new file mode 100644 (file)
index 0000000..b4f6dab
--- /dev/null
@@ -0,0 +1,151 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{B6E563B8-7F57-4F7F-9439-F2405D4E2522}</ProjectGuid>\r
+    <RootNamespace>buildpackage</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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 Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>.\package.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <PostBuildEvent>\r
+      <Command>.\package.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\package.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+    <PostBuildEvent>\r
+      <Command>.\package.bat  $(Platform) $(Configuration) "$(MONO_BUILD_DIR_PREFIX)" -q</Command>\r
+    </PostBuildEvent>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="build-all.vcxproj">\r
+      <Project>{5362490b-8516-44ee-9987-014c015a080a}</Project>\r
+    </ProjectReference>\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/build-package.vcxproj.filters b/msvc/build-package.vcxproj.filters
new file mode 100644 (file)
index 0000000..ef1ebf5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/msvc/compare-config-content.ps1 b/msvc/compare-config-content.ps1
new file mode 100644 (file)
index 0000000..0ed84ba
--- /dev/null
@@ -0,0 +1,51 @@
+##############################################################################
+##
+## compare-config-content
+##
+##############################################################################
+
+<#
+
+.SYNOPSIS
+
+Compares mono build configuration content detecting diff's.
+
+#>
+
+param(
+    ## first config source to compare.
+    $mono_config_source1,
+
+    ## second config source to compare.
+    $mono_config_source2
+)
+
+if ((Test-Path -isvalid $mono_config_source1) -And (Test-Path $mono_config_source1))
+{
+       $mono_config_source1_content = Get-Content $mono_config_source1
+}
+else
+{
+       $mono_config_source1_content = $mono_config_source1
+}
+
+if ((Test-Path -isvalid $mono_config_source2) -And (Test-Path $mono_config_source2))
+{
+       $mono_config_source2_content = Get-Content $mono_config_source2
+}
+else
+{
+       $mono_config_source2_content = $mono_config_source2
+}
+
+## Compare content.
+$comparedLines = Compare-Object $mono_config_source1_content $mono_config_source2_content -IncludeEqual | Sort-Object { $_.InputObject.ReadCount }
+$comparedLines | foreach {
+    if($_.SideIndicator -ne "==")
+    {
+               Write-Host "Changes detected."
+               exit 1;
+    }
+}
+
+exit 0;
\ No newline at end of file
diff --git a/msvc/compare-config-files.ps1 b/msvc/compare-config-files.ps1
new file mode 100644 (file)
index 0000000..9122f1e
--- /dev/null
@@ -0,0 +1,58 @@
+##############################################################################
+##
+## compare-config-files
+##
+##############################################################################
+
+<#
+
+.SYNOPSIS
+
+Compares mono build configuration files detecting incompatible changes.
+
+#>
+
+param(
+    ## winconfig header file.
+    $mono_winconfig,
+
+    ## config header file.
+    $mono_config,
+
+       ## The master configuration file, optional.
+       $mono_config_ac
+)
+
+## Get the content from each config file
+$mono_winconfig_content = Get-Content $mono_winconfig
+$mono_config_content = Get-Content $mono_config
+
+## Compare config files.
+$comparedLines = Compare-Object $mono_winconfig_content $mono_config_content -IncludeEqual | Sort-Object { $_.InputObject.ReadCount }
+
+$comparedLines | foreach {
+
+    if($_.SideIndicator -ne "==")
+    {
+               ##Look for diffs.
+               $mono_version = (Select-String -InputObject $_.InputObject -pattern '#define VERSION \"(.*)\"')
+               if ($mono_version -eq $null) {
+                       Write-Host "Changes detected, versions doesn't match. Configuration must to be replaced."
+                       exit 1;
+               }
+    }
+}
+
+if ($mono_config_ac -ne $null -And $mono_config_ac -ne "") {
+
+       $mono_version_ac = (Select-String -path $mono_config_ac -pattern 'AC_INIT\(mono, \[(.*)\]').Matches[0].Groups[1].Value
+       $mono_version = (Select-String -path $mono_config -pattern '#define VERSION \"(.*)\"').Matches[0].Groups[1].Value
+
+       if($mono_version_ac -ne $mono_version)
+       {
+               Write-Host "Changes detected, versions doesn't match. Configuration must to be replaced."
+               exit 1;
+       }
+}
+
+exit 0;
index 129314ca64a7c0b5f894069502d3cd2ff1cc78af..e7ad3d3cf9cf917e1787b8b3a0288d28655bab86 100755 (executable)
@@ -30,7 +30,7 @@ push @symbols, "MonoFixupCorEE";
 
 open (OUT, ">$outfile") || die "Cannot open '$outfile': $!\n";
 print OUT "; file generated by create-windef.pl\n";
-print OUT "LIBRARY $dllname\nEXPORTS\n";
+#print OUT "LIBRARY $dllname\nEXPORTS\n";
 print OUT join ("\n", @symbols);
 print OUT "\n";
 
index b3d0229f79d09827dabf9277216c18ab9caae03a..e09803d25e2400abc0d38f41ca1c7d669c41c83f 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
     <ProjectGuid>{158073ED-99AE-4196-9EDC-DDB2344F8466}</ProjectGuid>\r
     <RootNamespace>eglib</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
-    </PreBuildEvent>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
-    </ClCompile>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
-    </ClCompile>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
-    </PreBuildEvent>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\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
     </ClCompile>\r
   </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <AdditionalIncludeDirectories>$(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
     </ClCompile>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_EGLIB_SOURCE_DIR);$(MONO_EGLIB_INCLUDE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-    </ClCompile>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\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
     </ClCompile>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <AdditionalIncludeDirectories>$(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
     </ClCompile>\r
   </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level4</WarningLevel>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-    </ClCompile>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_eglib|Win32'">\r
-    <ClCompile />\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_eglib|Win32'">\r
-    <ClCompile />\r
-  </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClCompile Include="..\eglib\src\garray.c" />\r
     <ClCompile Include="..\eglib\src\gbytearray.c" />\r
     <ClInclude Include="..\eglib\src\gmodule.h" />\r
     <ClInclude Include="..\eglib\src\sort.frag.h" />\r
   </ItemGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="build-init.vcxproj">\r
+      <Project>{92ae7622-5f58-4234-9a26-9ec71876b3f4}</Project>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
diff --git a/msvc/eglib.vcxproj.filters b/msvc/eglib.vcxproj.filters
new file mode 100644 (file)
index 0000000..680ff1a
--- /dev/null
@@ -0,0 +1,117 @@
+<?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="..\eglib\src\garray.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gbytearray.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gdate-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gdir-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gerror.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gfile.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gfile-posix.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gfile-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\ghashtable.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\giconv.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\glist.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gmarkup.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gmem.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gmisc-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gqueue.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gmodule-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\goutput.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gpath.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gpattern.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gptrarray.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gqsort.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gshell.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gslist.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gspawn.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gstr.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gstring.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gtimer-win32.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gunicode.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\gutf8.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\src\vasprintf.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClInclude Include="..\eglib\src\glib.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\eglib\src\gmodule.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\eglib\src\sort.frag.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{d16b81e3-5093-424e-a5d4-e7dd8da49dce}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{b9df2a0f-4f98-4451-a22e-c731a46eff24}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{38a39ff1-842b-431b-b54b-24094e8283eb}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 001463f7af21b3eadd9fc8e0a0516b34bb01a61a..7183d6f4a80004ba495fc185e0ac61c284c27f57 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{B7098DFA-31E6-4006-8A15-1C9A4E925149}</ProjectGuid>\r
     <RootNamespace>genmdesc</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>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <UseOfMfc>false</UseOfMfc>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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)\$(Configuration)\</IntDir>\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
+    <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
+  </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
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>_DEBUG;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\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>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>runmdesc.bat "$(TargetPath)" $(Platform)</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TypeLibraryName>.\./VSDependancies/genmdesc___Win32_Debug/genmdesc.tlb</TypeLibraryName>\r
-      <HeaderFileName>\r
-      </HeaderFileName>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <ResourceCompile>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoutils.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX86</TargetMachine>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>runmdesc.bat "$(TargetPath)" $(Platform)</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-      <TypeLibraryName>.\./VSDependancies/genmdesc___Win32_Debug/genmdesc.tlb</TypeLibraryName>\r
-      <HeaderFileName>\r
-      </HeaderFileName>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\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
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoutils.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>NDEBUG;_CRT_SECURE_NO_DEPRECATE;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <StringPooling>true</StringPooling>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX86</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>runmdesc.bat "$(TargetPath)" $(Platform)</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TypeLibraryName>.\Release/genmdesc.tlb</TypeLibraryName>\r
-      <HeaderFileName>\r
-      </HeaderFileName>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoutils.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX86</TargetMachine>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>runmdesc.bat "$(TargetPath)" $(Platform)</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>\r
-      </Command>\r
-    </PreBuildEvent>\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-      <TypeLibraryName>.\Release/genmdesc.tlb</TypeLibraryName>\r
-      <HeaderFileName>\r
-      </HeaderFileName>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\eglib\src;%(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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <FunctionLevelLinking>true</FunctionLevelLinking>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level3</WarningLevel>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <ResourceCompile>\r
-      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <Culture>0x0409</Culture>\r
-    </ResourceCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>eglib.lib;libmonoutils.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <SuppressStartupBanner>true</SuppressStartupBanner>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-      </PrecompiledHeader>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-      </PrecompiledHeader>\r
     </ClCompile>\r
     <ClCompile Include="..\mono\mini\helpers.c">\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-      </PrecompiledHeader>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-      </PrecompiledHeader>\r
     </ClCompile>\r
     <ClCompile Include="..\mono\utils\monobitset.c">\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-      </PrecompiledHeader>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-      </PrecompiledHeader>\r
     </ClCompile>\r
     <ClCompile Include="..\mono\metadata\opcodes.c">\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       </PrecompiledHeader>\r
       <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</BrowseInformation>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-      </PrecompiledHeader>\r
-      <BrowseInformation Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">true</BrowseInformation>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-      </PrecompiledHeader>\r
       <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       </PrecompiledHeader>\r
-      <AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-      </PrecompiledHeader>\r
     </ClCompile>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/genmdesc.vcxproj.filters b/msvc/genmdesc.vcxproj.filters
new file mode 100644 (file)
index 0000000..bd94041
--- /dev/null
@@ -0,0 +1,28 @@
+<?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\genmdesc.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\utils\monobitset.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\metadata\opcodes.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{da9e2258-c654-445a-82e4-ddbee1f7e961}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{439ee672-2e40-4530-a4a0-38fc5a709175}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{d51a0903-747f-410b-9621-22b208eeb41b}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/install.bat b/msvc/install.bat
new file mode 100644 (file)
index 0000000..1a43399
--- /dev/null
@@ -0,0 +1,96 @@
+@ECHO off
+
+SET PLATFORM=%1
+SET CONFIG=%2
+SET BUILD_DIR=%3
+SET INSTALL_DIR=%4
+SET ARGUMENTS=%5
+
+SET XCOPY_COMMAND=%windir%\system32\xcopy
+
+SET BUILD_DIR=%BUILD_DIR:"=%
+SET BUILD_DIR=%BUILD_DIR:/=\%
+SET INSTALL_DIR=%INSTALL_DIR:"=%
+SET INSTALL_DIR=%INSTALL_DIR:/=\%
+
+IF "" == "%PLATFORM%" (
+       ECHO Error: No platform parameter set.
+       GOTO ON_ERROR
+
+       )
+IF "" == "%CONFIG%" (
+       ECHO Error: No configuration parameter set.
+       GOTO ON_ERROR
+)
+
+IF "" == "%BUILD_DIR%" (
+       ECHO Error: No MONO_BUILD_DIR_PREFIX parameter set.
+       GOTO ON_ERROR
+)
+
+IF "" == "%INSTALL_DIR%" (
+       ECHO Error: No MONO_INSTALLATION_DIR_PREFIX parameter set.
+       GOTO ON_ERROR
+)
+
+IF "\" == "%BUILD_DIR:~-1%" (
+       SET BUILD_DIR=%BUILD_DIR:~0,-1%
+)
+
+IF "\" == "%INSTALL_DIR:~-1%" (
+       SET INSTALL_DIR=%INSTALL_DIR:~0,-1%
+)
+
+IF NOT EXIST %BUILD_DIR% (
+       ECHO Error: '%BUILD_DIR%', directory doesn't eixst.
+       GOTO ON_ERROR
+)
+
+IF NOT EXIST %INSTALL_DIR% (
+       ECHO Install directory '%INSTALL_DIR%', directory doesn't eixst, creating....
+       mkdir "%INSTALL_DIR%"
+       ECHO Install directory '%INSTALL_DIR%' created.
+)
+
+SET PACKAGE_DIR=%BUILD_DIR%\package\%PLATFORM%\%CONFIG%
+
+IF NOT EXIST %PACKAGE_DIR% (
+       ECHO Error: '%PACKAGE_DIR%' directory unavailable.
+       GOTO ON_ERROR
+)
+
+SET OPTIONS=/s /e /y
+
+IF "-v" == "%ARGUMENTS%" (
+       SET OPTIONS=/f /s /e /y
+)
+
+IF "-q" == "%ARGUMENTS%" (
+       SET "OPTIONS=/s /e /q /y"
+)
+
+ECHO Installing mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% ...
+
+SET RUN=%XCOPY_COMMAND% "%PACKAGE_DIR%\*.*" "%INSTALL_DIR%" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+ECHO Installing of mono build %PLATFORM% %CONFIG% from %PACKAGE_DIR% into %INSTALL_DIR% DONE.
+
+EXIT /b 0
+
+:ON_ERROR
+       ECHO "install.bat [win32|x64] [Debug|Release] [MONO_BUILD_DIR_PREFIX] [MONO_INSTALLATION_DIR_PREFIX] [ARGUMENTS]"
+       EXIT /b 1
+
+@ECHO on
+
+:runCommand
+
+       IF "-q" == "%~2" (
+               %~1 >nul 2>&1
+       ) ELSE (
+               %~1
+       )
+
+goto :EOF
+       
\ No newline at end of file
index 2be0904f02ff1167dd55961a015e7ff56cc5b356..6999c3536b42fcaa8c956e6483363e141e7a794a 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
     <ProjectGuid>{EB56000B-C80B-4E8B-908D-D84D31B517D3}</ProjectGuid>\r
     <RootNamespace>libgc</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\lib\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-    </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
-    </Lib>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <WarningLevel>Level1</WarningLevel>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
     </ClCompile>\r
     <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
     </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
-    </Lib>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
     </ClCompile>\r
     <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
     </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-    </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
-    </Lib>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <DisableSpecificWarnings>4311;4312;4996;4005;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
     </ClCompile>\r
     <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
     </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
-    </Lib>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ProgramDataBaseFileName>$(OutDir)vc80.pdb</ProgramDataBaseFileName>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
+      <ProgramDataBaseFileName>$(IntDir)$(TargetName).pdb</ProgramDataBaseFileName>\r
     </ClCompile>\r
     <Lib>\r
-      <OutputFile>$(OutDir)libgc.lib</OutputFile>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
     </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
diff --git a/msvc/libgc.vcxproj.filters b/msvc/libgc.vcxproj.filters
new file mode 100644 (file)
index 0000000..6453cc0
--- /dev/null
@@ -0,0 +1,105 @@
+<?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
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{699a2844-7533-4292-9d33-c8f0ff83fc43}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{adac5b81-1d62-4900-8b59-a68c6636c687}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{b3da4a6f-b547-4b41-9e7e-3b76a2bda990}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libgcmonosgen.vcxproj b/msvc/libgcmonosgen.vcxproj
new file mode 100644 (file)
index 0000000..52dd0ba
--- /dev/null
@@ -0,0 +1,224 @@
+<?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
+    <ClCompile Include="..\mono\sgen\sgen-alloc.c" />\r
+    <ClCompile Include="..\mono\metadata\sgen-bridge.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
+    <RootNamespace>libmonosgen</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+    <ProjectName>libgcmonosgen</ProjectName>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <CharacterSet>Unicode</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>StaticLibrary</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\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)'=='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)'=='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
+  <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)'=='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
+  <PropertyGroup Label="UserMacros" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)</TargetName>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_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
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+    </Link>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <PrecompiledHeader>\r
+      </PrecompiledHeader>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <OmitFramePointers>false</OmitFramePointers>\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
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+    </Link>\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;$(SGEN_DEFINES);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
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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;$(SGEN_DEFINES);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
+    </ClCompile>\r
+    <Link>\r
+      <SubSystem>Windows</SubSystem>\r
+      <GenerateDebugInformation>true</GenerateDebugInformation>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\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/libgcmonosgen.vcxproj.filters b/msvc/libgcmonosgen.vcxproj.filters
new file mode 100644 (file)
index 0000000..d40313b
--- /dev/null
@@ -0,0 +1,177 @@
+<?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\metadata\sgen-bridge.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
+  <ItemGroup>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{62eb1a19-26dd-4c17-8bd0-0a734673637d}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{0de15c24-0de8-4592-88fc-d16d0ad05d21}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{ede39adb-354b-436b-9fc1-0e7667901ab6}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmono.bat b/msvc/libmono.bat
new file mode 100644 (file)
index 0000000..6509ac1
--- /dev/null
@@ -0,0 +1,97 @@
+@ECHO off
+
+SET SOURCE_ROOT=%1
+SET TARGET_ROOT=%2
+SET ARGUMENTS=%3
+
+SET XCOPY_COMMAND=%windir%\system32\xcopy
+
+SET TARGET_ROOT=%TARGET_ROOT:"=%
+SET TARGET_ROOT=%TARGET_ROOT:/=\%
+SET SOURCE_ROOT=%SOURCE_ROOT:"=%
+SET SOURCE_ROOT=%SOURCE_ROOT:/=\%
+
+IF "" == "%SOURCE_ROOT%" (
+       ECHO Error: No source root parameter set.
+       GOTO ON_ERROR
+)
+       
+IF "" == "%TARGET_ROOT%" (
+       ECHO Error: No target root parameter set.
+       GOTO ON_ERROR
+)
+
+IF NOT EXIST %SOURCE_ROOT% (
+       ECHO Error: source directory '%SOURCE_ROOT%', directory doesn't eixst.
+       GOTO ON_ERROR
+)
+
+IF NOT EXIST %TARGET_ROOT% (
+       ECHO Target directory '%TARGET_ROOT%', directory doesn't eixst, creating....
+       mkdir %TARGET_ROOT%
+       ECHO Target directory '%TARGET_ROOT%' created.
+)
+
+IF "\" == "%SOURCE_ROOT:~-1%" (
+       SET SOURCE_ROOT=%SOURCE_ROOT:~0,-1%
+)
+
+IF "\" == "%TARGET_ROOT:~-1%" (
+       SET TARGET_ROOT=%TARGET_ROOT:~0,-1%
+)
+
+SET OPTIONS=/y
+
+IF "-v" == "%ARGUMENTS%" (
+       SET OPTIONS=/f /y
+)
+
+IF "-q" == "%ARGUMENTS%" (
+       SET "OPTIONS=/q /y"
+)
+
+ECHO Copying mono include files from %SOURCE_ROOT% to %TARGET_ROOT% ...
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\cil\opcode.def" "%TARGET_ROOT%\cil\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\mini\jit.h" "%TARGET_ROOT%\jit\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\metadata\*.h" "%TARGET_ROOT%\metadata\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\utils\mono-counters.h" "%TARGET_ROOT%\utils\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\utils\mono-dl-fallback.h" "%TARGET_ROOT%\utils\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\utils\mono-error.h" "%TARGET_ROOT%\utils\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\utils\mono-logger.h" "%TARGET_ROOT%\utils\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%SOURCE_ROOT%\utils\mono-publib.h" "%TARGET_ROOT%\utils\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+ECHO Copying mono include files from %SOURCE_ROOT% to %TARGET_ROOT% DONE.
+
+EXIT /b 0
+
+:ON_ERROR
+       ECHO "libmono.bat [SOURCE_ROOT] [TARGET_ROOT] [ARGUMENTS]"
+       EXIT /b 1
+
+@ECHO on
+
+:runCommand
+
+       IF "-q" == "%~2" (
+               %~1 >nul 2>&1
+       ) ELSE (
+               %~1
+       )
+
+goto :EOF
index 68a0ff55687fc5461ebddaa4d7ee5243583dc12e..6fca2cc5ae4439aaa535b3c08b833683d3b9cede 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <ItemGroup>\r
     <ClCompile Include="..\mono\metadata\remoting.c" />\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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">true</ExcludedFromBuild>\r
     </ClCompile>\r
     <ClCompile Include="..\mono\mini\mini.c" />\r
     <ClInclude Include="..\mono\metadata\remoting.h" />\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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">true</ExcludedFromBuild>\r
     </ClInclude>\r
     <ClInclude Include="..\mono\mini\mini-x86.h">\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">true</ExcludedFromBuild>\r
     </ClInclude>\r
     <ClInclude Include="..\mono\mini\mini.h" />\r
     <ClInclude Include="..\mono\mini\seq-points.h" />\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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">true</ExcludedFromBuild>\r
     </ClCompile>\r
     <ClCompile Include="..\mono\mini\branch-opts.c" />\r
     <ClCompile Include="..\mono\mini\mini-generic-sharing.c" />\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>DynamicLibrary</ConfigurationType>\r
-    <UseOfMfc>false</UseOfMfc>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">monosgen-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">monosgen-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">monosgen-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mono-2.0</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">monosgen-2.0</TargetName>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\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>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>mono.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-      <DataExecutionPrevention>\r
-      </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</Command>\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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <PrecompiledHeaderOutputFile>\r
@@ -370,82 +238,24 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>monosgen.def</ModuleDefinitionFile>\r
+      <AdditionalDependencies>eglib.lib;libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;$(GC_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>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ProgramDatabaseFile>$(OutDir)$(TargetName).pdb</ProgramDatabaseFile>\r
     </Link>\r
     <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\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>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\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>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>mono.def</ModuleDefinitionFile>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
@@ -455,11 +265,10 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <Optimization>Disabled</Optimization>\r
       <InlineFunctionExpansion>Default</InlineFunctionExpansion>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <PrecompiledHeaderOutputFile>\r
@@ -477,85 +286,30 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>monosgen.def</ModuleDefinitionFile>\r
+      <AdditionalDependencies>eglib.lib;libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     </Link>\r
     <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\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>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <StringPooling>true</StringPooling>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\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>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>mono.def</ModuleDefinitionFile>\r
-      <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
-      <DataExecutionPrevention>\r
-      </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-    <PreBuildEvent>\r
-      <Command>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</Command>\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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <StringPooling>true</StringPooling>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
@@ -571,30 +325,23 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>monosgen.def</ModuleDefinitionFile>\r
+      <AdditionalDependencies>eglib.lib;libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <ModuleDefinitionFile>$(MONO_DEF)</ModuleDefinitionFile>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>\r
     </Link>\r
     <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\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>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
@@ -604,10 +351,9 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <Optimization>MinSpace</Optimization>\r
       <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <StringPooling>true</StringPooling>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
@@ -623,119 +369,45 @@ $(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(So
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>mono.def</ModuleDefinitionFile>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <AdditionalDependencies>eglib.lib;libmonoutils.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;$(GC_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>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\r
-    </PostBuildEvent>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <PreBuildEvent>\r
-      <Command>echo #define FULL_VERSION "Visual Studio built mono" &gt; ..\mono\mini\version.h</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>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <StringPooling>true</StringPooling>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\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>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <ModuleDefinitionFile>monosgen.def</ModuleDefinitionFile>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-    <PostBuildEvent>\r
-      <Command>$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\cil\opcode.def" "$(SolutionDir)include\mono\cil\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\mini\jit.h" "$(SolutionDir)include\mono\jit\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\metadata\*.h" "$(SolutionDir)include\mono\metadata\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-counters.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-dl-fallback.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-error.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-logger.h" "$(SolutionDir)include\mono\utils\"\r
-$(windir)\system32\xcopy /F /Y "$(SolutionDir)..\mono\utils\mono-publib.h" "$(SolutionDir)include\mono\utils\"</Command>\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)'=='Debug_SGen|x64'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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)'=='Debug_SGen|Win32'">true</ExcludedFromBuild>\r
       <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>\r
-      <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">true</ExcludedFromBuild>\r
     </CustomBuildStep>\r
   </ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\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
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
+    </ProjectReference>\r
+    <ProjectReference Include="libgcmonosgen.vcxproj">\r
+      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d740}</Project>\r
     </ProjectReference>\r
     <ProjectReference Include="libmonoruntime.vcxproj">\r
       <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d739}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
     <ProjectReference Include="libmonoutils.vcxproj">\r
       <Project>{8fc2b0c8-51ad-49df-851f-5d01a77a75e4}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/libmono.vcxproj.filters b/msvc/libmono.vcxproj.filters
new file mode 100644 (file)
index 0000000..75748b8
--- /dev/null
@@ -0,0 +1,249 @@
+<?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\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\metadata\remoting.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-exceptions-native-unwinder.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
+  </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
+  </ItemGroup>\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
+</Project>
\ No newline at end of file
index d8f354b76079eb2f3d601a0f7ff7e3082a13fc04..c02736c1bff8c3197b298dcd6a20f268f6dd34c6 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -34,7 +18,6 @@
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <ItemGroup>\r
     <ClCompile Include="..\mono\metadata\appdomain.c" />\r
     <ClCompile Include="..\mono\metadata\assembly.c" />\r
@@ -87,6 +70,7 @@
     <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\sgen-mono.c" />\r
     <ClCompile Include="..\mono\metadata\threadpool-ms-io.c" />\r
     <ClCompile Include="..\mono\metadata\threadpool-ms.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-alloc.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-bridge.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\metadata\sgen-new-bridge.c" />\r
-    <ClCompile Include="..\mono\sgen\sgen-nursery-allocator.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-old-bridge.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-os-mach.c" />\r
-    <ClCompile Include="..\mono\metadata\sgen-os-posix.c" />\r
+    <ClCompile Include="..\mono\metadata\sgen-os-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\metadata\sgen-os-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\metadata\sgen-os-win32.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-array-list.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\metadata\sgen-tarjan-bridge.c" />\r
     <ClCompile Include="..\mono\metadata\sgen-toggleref.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\metadata\sgen-stw.c" />\r
     <ClCompile Include="..\mono\metadata\socket-io.c" />\r
     <ClCompile Include="..\mono\metadata\string-icalls.c" />\r
     <ClInclude Include="..\mono\metadata\appdomain.h" />\r
     <ClInclude Include="..\mono\metadata\assembly.h" />\r
     <ClInclude Include="..\mono\metadata\attach.h" />\r
-    <ClInclude Include="..\mono\metadata\char-conversions.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\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\decimal.h" />\r
     <ClInclude Include="..\mono\metadata\domain-internals.h" />\r
     <ClInclude Include="..\mono\metadata\environment.h" />\r
     <ClInclude Include="..\mono\metadata\exception.h" />\r
     <ClInclude Include="..\mono\metadata\gc-internals.h" />\r
     <ClInclude Include="..\mono\metadata\handle.h" />\r
     <ClInclude Include="..\mono\metadata\number-ms.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\threadpool-ms-io.h" />\r
     <ClInclude Include="..\mono\metadata\threadpool-ms.h" />\r
     <ClInclude Include="..\mono\sgen\gc-internal-agnostic.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\sgen\sgen-archdep.h" />\r
     <ClInclude Include="..\mono\metadata\sgen-bridge.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-cardtable.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-major-copy-object.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-major-scan-object.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-protocol.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-qsort.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-scan-object.h" />\r
     <ClInclude Include="..\mono\metadata\sgen-toggleref.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-thread-pool.h" />\r
-    <ClInclude Include="..\mono\sgen\sgen-workers.h" />\r
     <ClInclude Include="..\mono\metadata\socket-io.h" />\r
     <ClInclude Include="..\mono\metadata\string-icalls.h" />\r
     <ClInclude Include="..\mono\metadata\sysmath.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
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{C36612BD-22D3-4B95-85E2-7FDC4FC5D739}</ProjectGuid>\r
     <Keyword>Win32Proj</Keyword>\r
     <RootNamespace>libmonoruntime</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <UseDebugLibraries>true</UseDebugLibraries>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <UseDebugLibraries>true</UseDebugLibraries>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <UseDebugLibraries>false</UseDebugLibraries>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>StaticLibrary</ConfigurationType>\r
-    <UseDebugLibraries>false</UseDebugLibraries>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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|x64'" Label="PropertySheets">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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 Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />\r
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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 Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <TargetName>$(ProjectName)sgen</TargetName>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <TargetName>$(ProjectName)sgen</TargetName>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <TargetName>$(ProjectName)sgen</TargetName>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <TargetName>$(ProjectName)sgen</TargetName>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)$(MONO_TARGET_SUFFIX)\$(Configuration)\</IntDir>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(BOEHM_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-    </ClCompile>\r
-    <Link>\r
-      <SubSystem>Windows</SubSystem>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <ClCompile>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level3</WarningLevel>\r
-      <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);_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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
+    <Lib>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
+    </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <ClCompile>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(BOEHM_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-    </ClCompile>\r
-    <Link>\r
-      <SubSystem>Windows</SubSystem>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-    </Link>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <ClCompile>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <WarningLevel>Level3</WarningLevel>\r
-      <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;$(SGEN_DEFINES);_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <OmitFramePointers>false</OmitFramePointers>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE);$(top_srcdir)\mono</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);_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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
+    <Lib>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
+    </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MaxSpeed</Optimization>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;$(BOEHM_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-    </ClCompile>\r
-    <Link>\r
-      <SubSystem>Windows</SubSystem>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-    </Link>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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;$(SGEN_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
+    <Lib>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
+    </Lib>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <ClCompile>\r
       <Optimization>MaxSpeed</Optimization>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;$(BOEHM_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
-    </ClCompile>\r
-    <Link>\r
-      <SubSystem>Windows</SubSystem>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <OptimizeReferences>true</OptimizeReferences>\r
-    </Link>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\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;$(SGEN_DEFINES);NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\r
+      <PreprocessorDefinitions>WIN32;WIN32_LEAN_AND_MEAN;$(GC_DEFINES);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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
+    <Lib>\r
+      <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
+    </Lib>\r
   </ItemDefinitionGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
-</Project>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/libmonoruntime.vcxproj.filters b/msvc/libmonoruntime.vcxproj.filters
new file mode 100644 (file)
index 0000000..e7d4b41
--- /dev/null
@@ -0,0 +1,486 @@
+<?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\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\file-io.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\nacl-stub.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\process.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\socket-io.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-ms.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\metadata\threadpool-ms-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\sgen-os-mach.c">\r
+      <Filter>Source Files\sgen</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\metadata\sgen-os-posix.c">\r
+      <Filter>Source Files\sgen</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\metadata\sgen-os-win32.c">\r
+      <Filter>Source Files\sgen</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\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
+  </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\file-io.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-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\process.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\profiler-private.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\socket-io.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-ms.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-ms-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
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{eb8a6a4d-924c-494d-99c1-663e4c09a806}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{b3f8bc4c-d4c8-457a-b29c-5f49d00a3b6c}</UniqueIdentifier>\r
+    </Filter>\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
+</Project>
\ No newline at end of file
index 5daad9472621c95d4b94c98809d6f0ab2a74ff50..ca9ce67c4658365ada96d183ab9f909a5e9a2ec0 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
@@ -18,7 +18,6 @@
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <ItemGroup>\r
     <ClCompile Include="..\mono\utils\dlmalloc.c" />\r
     <ClCompile Include="..\mono\utils\hazard-pointer.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
-    <ClCompile Include="..\mono\utils\mach-support-arm.c" />\r
-    <ClCompile Include="..\mono\utils\mach-support-x86.c" />\r
-    <ClCompile Include="..\mono\utils\mach-support.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
@@ -42,6 +61,8 @@
     <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.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
-    <ClCompile Include="..\mono\utils\mono-threads-posix.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads-posix-signals.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-threads-posix-abort-syscall.c" />\r
-    <ClCompile Include="..\mono\utils\mono-threads-mach-abort-syscall.c" />\r
+    <ClCompile Include="..\mono\utils\mono-threads-posix-abort-syscall.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-mach-abort-syscall.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-abort-syscall.c" />\r
     <ClCompile Include="..\mono\utils\mono-time.c" />\r
     <ClCompile Include="..\mono\utils\mono-tls.c" />\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
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}</ProjectGuid>\r
     <Keyword>Win32Proj</Keyword>\r
     <RootNamespace>libmonoutils</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>true</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>StaticLibrary</ConfigurationType>\r
     <UseDebugLibraries>false</UseDebugLibraries>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\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
   </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
   <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
   </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
   <PropertyGroup Label="UserMacros" />\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
-    <OutDir>$(Platform)\lib\$(Configuration)\</OutDir>\r
-    <IntDir>$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <Optimization>Disabled</Optimization>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/eglib/src;$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <MASM>\r
       <PreprocessorDefinitions>X64</PreprocessorDefinitions>\r
       <Optimization>MaxSpeed</Optimization>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
       <Optimization>MaxSpeed</Optimization>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <IntrinsicFunctions>true</IntrinsicFunctions>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <AdditionalIncludeDirectories>$(top_srcdir);$(top_srcdir)/mono;$(LIBGC_CPPFLAGS_INCLUDE);$(GLIB_CFLAGS_INCLUDE)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Link>\r
     <PreBuildEvent>\r
-      <Command>winsetup.bat</Command>\r
+      <Command>\r
+      </Command>\r
     </PreBuildEvent>\r
     <MASM>\r
       <PreprocessorDefinitions>X64</PreprocessorDefinitions>\r
   <ImportGroup Label="ExtensionTargets">\r
     <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />\r
   </ImportGroup>\r
-</Project>\r
+</Project>
diff --git a/msvc/libmonoutils.vcxproj.filters b/msvc/libmonoutils.vcxproj.filters
new file mode 100644 (file)
index 0000000..dae5e30
--- /dev/null
@@ -0,0 +1,416 @@
+<?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-mach-abort-syscall.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-abort-syscall.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-threads-windows-abort-syscall.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
+  </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-threads-posix-signals.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
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{7d1240fd-7e95-4e21-ab1a-365dd69355de}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{f07c02ee-fbf8-4f7f-9991-c100492ef765}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\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
+</Project>
\ No newline at end of file
index 64aaae18a4a7460a573e0c5dcb51fab88bf6251d..27a44e3ae8cb8675b56bba9e4659ab9f6ff20c84 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}</ProjectGuid>\r
     <RootNamespace>libtest</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Windows</SubSystem>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\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>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <TargetMachine>MachineX86</TargetMachine>\r
     </Link>\r
   </ItemDefinitionGroup>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBTEST_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\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
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\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
diff --git a/msvc/libtest.vcxproj.filters b/msvc/libtest.vcxproj.filters
new file mode 100644 (file)
index 0000000..0fa3590
--- /dev/null
@@ -0,0 +1,19 @@
+<?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>{4f6cb78a-c0fd-44ff-b6eb-3fd8cb31f602}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{bbadd15b-d268-41c7-9f14-7141812f5baf}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{11b4a994-1216-42cd-82bf-cef5e70afcb8}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\mono\tests\libtest.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-mini-regression-aot-test.vcxproj b/msvc/mono-mini-regression-aot-test.vcxproj
new file mode 100644 (file)
index 0000000..9dcde12
--- /dev/null
@@ -0,0 +1,199 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{D632D664-C0F5-4B60-9375-BDDAD5C7A649}</ProjectGuid>\r
+    <RootNamespace>monominiregressionaottest</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+    <Import Project="mono-regression-test-Win32.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test-aot.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+    <Import Project="mono-regression-test-Win32.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test-aot.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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
+    <Import Project="mono-regression-test-x64.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test-aot.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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
+    <Import Project="mono-regression-test-x64.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test-aot.props" />\r
+  </ImportGroup>\r
+  <PropertyGroup Label="UserMacros" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_AOT_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_AOT_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_AOT_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_AOT_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="mono.vcxproj">\r
+      <Project>{a0eddcd9-940f-432c-a28f-7ef322437d79}</Project>\r
+    </ProjectReference>\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/mono-mini-regression-aot-test.vcxproj.filters b/msvc/mono-mini-regression-aot-test.vcxproj.filters
new file mode 100644 (file)
index 0000000..f81daba
--- /dev/null
@@ -0,0 +1,17 @@
+<?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="Source Files">\r
+      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>\r
+      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>\r
+    </Filter>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>\r
+      <Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>\r
+      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-mini-regression-test-aot.props b/msvc/mono-mini-regression-test-aot.props
new file mode 100644 (file)
index 0000000..e741e13
--- /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">
+  <!--<ImportGroup Label="PropertySheets" />-->
+  <PropertyGroup Label="UserMacros">
+    <MONO_MINI_ALL_REGRESSION_TEST_AOT_ARG>--aot="tool-prefix=$(MONO_TOOLCHAIN_PREFIX)"  $(MONO_MINI_REGRESSION_TESTS)</MONO_MINI_ALL_REGRESSION_TEST_AOT_ARG>
+    <MONO_MINI_ONE_REGRESSION_TEST_AOT_ARG>--aot="tool-prefix=$(MONO_TOOLCHAIN_PREFIX)" basic.exe</MONO_MINI_ONE_REGRESSION_TEST_AOT_ARG>
+    <MONO_MINI_REGRESSION_TEST_AOT_ARGS>$(MONO_EXECUTABLE_CONFIG_ARG) $(MONO_MINI_ALL_REGRESSION_TEST_AOT_ARG)</MONO_MINI_REGRESSION_TEST_AOT_ARGS>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="MONO_MINI_ALL_REGRESSION_TEST_AOT_ARG">
+      <Value>$(MONO_MINI_ALL_REGRESSION_TEST_AOT_ARG)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_ONE_REGRESSION_TEST_AOT_ARG">
+      <Value>$(MONO_MINI_ONE_REGRESSION_TEST_AOT_ARG)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_REGRESSION_TEST_AOT_ARGS">
+      <Value>$(MONO_MINI_REGRESSION_TEST_AOT_ARGS)</Value>
+    </BuildMacro>
+  </ItemGroup>
+  <ItemDefinitionGroup />
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-mini-regression-test.props b/msvc/mono-mini-regression-test.props
new file mode 100644 (file)
index 0000000..b000310
--- /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">
+  <!--<ImportGroup Label="PropertySheets" />-->
+  <PropertyGroup Label="UserMacros">
+    <MONO_MINI_ALL_REGRESSION_TEST_ARG>--regression $(MONO_MINI_REGRESSION_TESTS)</MONO_MINI_ALL_REGRESSION_TEST_ARG>
+    <MONO_MINI_ONE_REGRESSION_TEST_ARG>--regression basic.exe</MONO_MINI_ONE_REGRESSION_TEST_ARG>
+    <MONO_MINI_REGRESSION_TEST_ARGS>$(MONO_EXECUTABLE_CONFIG_ARG) $(MONO_MINI_ALL_REGRESSION_TEST_ARG)</MONO_MINI_REGRESSION_TEST_ARGS>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="MONO_MINI_ALL_REGRESSION_TEST_ARG">
+      <Value>$(MONO_MINI_ALL_REGRESSION_TEST_ARG)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_ONE_REGRESSION_TEST_ARG">
+      <Value>$(MONO_MINI_ONE_REGRESSION_TEST_ARG)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_REGRESSION_TEST_ARGS">
+      <Value>$(MONO_MINI_REGRESSION_TEST_ARGS)</Value>
+    </BuildMacro>
+  </ItemGroup>
+  <ItemDefinitionGroup />
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-mini-regression-test.vcxproj b/msvc/mono-mini-regression-test.vcxproj
new file mode 100644 (file)
index 0000000..6ad3801
--- /dev/null
@@ -0,0 +1,200 @@
+<?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="Release|Win32">\r
+      <Configuration>Release</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|x64">\r
+      <Configuration>Release</Configuration>\r
+      <Platform>x64</Platform>\r
+    </ProjectConfiguration>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ProjectReference Include="mono.vcxproj">\r
+      <Project>{a0eddcd9-940f-432c-a28f-7ef322437d79}</Project>\r
+    </ProjectReference>\r
+  </ItemGroup>\r
+  <PropertyGroup Label="Globals">\r
+    <ProjectGuid>{3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}</ProjectGuid>\r
+    <RootNamespace>monoregressiontest</RootNamespace>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
+    <ProjectName>mono-mini-regression-test</ProjectName>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>true</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
+    <ConfigurationType>Utility</ConfigurationType>\r
+    <UseDebugLibraries>false</UseDebugLibraries>\r
+    <PlatformToolset>v140</PlatformToolset>\r
+    <WholeProgramOptimization>true</WholeProgramOptimization>\r
+    <CharacterSet>MultiByte</CharacterSet>\r
+  </PropertyGroup>\r
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
+  <ImportGroup Label="ExtensionSettings">\r
+  </ImportGroup>\r
+  <ImportGroup Label="Shared">\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
+    <Import Project="mono-regression-test-Win32.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|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
+    <Import Project="mono-regression-test-Win32.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\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
+    <Import Project="mono-regression-test-x64.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test.props" />\r
+  </ImportGroup>\r
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\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
+    <Import Project="mono-regression-test-x64.props" />\r
+    <Import Project="mono-regression-test.props" />\r
+    <Import Project="mono-mini-regression-test.props" />\r
+  </ImportGroup>\r
+  <PropertyGroup Label="UserMacros" />\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <OutDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\</OutDir>\r
+    <IntDir>$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <LocalDebuggerCommand>$(MONO_EXECUTABLE)</LocalDebuggerCommand>\r
+    <DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>\r
+    <LocalDebuggerCommandArguments>$(MONO_MINI_REGRESSION_TEST_ARGS)</LocalDebuggerCommandArguments>\r
+    <LocalDebuggerWorkingDirectory>$(MONO_EXECUTABLE_DIR)</LocalDebuggerWorkingDirectory>\r
+    <LocalDebuggerEnvironment>$(MONO_PATH_ENV)\r
+$(MONO_CFG_DIR_ENV)\r
+$(MONO_TOOLCHAIN_PATH_ENV)\r
+$(MONO_LOG_LEVEL_ENV)\r
+$(MONO_LOG_MASK_ENV)\r
+$(LocalDebuggerEnvironment)</LocalDebuggerEnvironment>\r
+  </PropertyGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>Disabled</Optimization>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\r
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <ClCompile>\r
+      <WarningLevel>Level3</WarningLevel>\r
+      <Optimization>MaxSpeed</Optimization>\r
+      <FunctionLevelLinking>true</FunctionLevelLinking>\r
+      <IntrinsicFunctions>true</IntrinsicFunctions>\r
+      <SDLCheck>true</SDLCheck>\r
+    </ClCompile>\r
+    <Link>\r
+      <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
+      <OptimizeReferences>true</OptimizeReferences>\r
+    </Link>\r
+  </ItemDefinitionGroup>\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/mono-mini-regression-test.vcxproj.filters b/msvc/mono-mini-regression-test.vcxproj.filters
new file mode 100644 (file)
index 0000000..ef1ebf5
--- /dev/null
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
\ No newline at end of file
diff --git a/msvc/mono-regression-test-Win32.props b/msvc/mono-regression-test-Win32.props
new file mode 100644 (file)
index 0000000..c74e5c8
--- /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">
+  <ImportGroup Label="PropertySheets" />
+  <PropertyGroup Label="UserMacros">
+    <MONO_TOOLCHAIN_PREFIX>i686-w64-mingw32-</MONO_TOOLCHAIN_PREFIX>
+    <MONO_TOOLCHAIN_PATH>C:/ProgramData/chocolatey/lib/Cygwin/tools/cygwin/bin</MONO_TOOLCHAIN_PATH>
+  </PropertyGroup>
+  <PropertyGroup />
+  <ItemDefinitionGroup />
+  <ItemGroup>
+    <BuildMacro Include="MONO_TOOLCHAIN_PREFIX">
+      <Value>$(MONO_TOOLCHAIN_PREFIX)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_TOOLCHAIN_PATH">
+      <Value>$(MONO_TOOLCHAIN_PATH)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-regression-test-x64.props b/msvc/mono-regression-test-x64.props
new file mode 100644 (file)
index 0000000..a2724a9
--- /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">
+  <ImportGroup Label="PropertySheets" />
+  <PropertyGroup Label="UserMacros">
+    <MONO_TOOLCHAIN_PREFIX>x86_64-w64-mingw32-</MONO_TOOLCHAIN_PREFIX>
+    <MONO_TOOLCHAIN_PATH>C:/ProgramData/chocolatey/lib/Cygwin/tools/cygwin/bin</MONO_TOOLCHAIN_PATH>
+  </PropertyGroup>
+  <PropertyGroup />
+  <ItemDefinitionGroup />
+  <ItemGroup>
+    <BuildMacro Include="MONO_TOOLCHAIN_PREFIX">
+      <Value>$(MONO_TOOLCHAIN_PREFIX)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_TOOLCHAIN_PATH">
+      <Value>$(MONO_TOOLCHAIN_PATH)</Value>
+    </BuildMacro>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/msvc/mono-regression-test.props b/msvc/mono-regression-test.props
new file mode 100644 (file)
index 0000000..d4e6bf6
--- /dev/null
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <!--<ImportGroup Label="PropertySheets" />-->
+  <PropertyGroup Label="UserMacros">
+    <MONO_PATH>$(MONO_DIR)/mcs/class/lib/net_4_x</MONO_PATH>
+    <MONO_CFG_DIR>$(MONO_DIR)/runtime/etc</MONO_CFG_DIR>
+    <MONO_CONFIG_ARG>--config "$(MONO_DIR)/runtime/etc/mono/config"</MONO_CONFIG_ARG>
+    <MONO_MINI_REGRESSION_TEST_DIR>$(MONO_DIR)/mono/mini</MONO_MINI_REGRESSION_TEST_DIR>
+    <MONO_MINI_REGRESSION_TESTS>basic.exe basic-float.exe basic-long.exe basic-calls.exe objects.exe arrays.exe basic-math.exe exceptions.exe iltests.exe devirtualization.exe generics.exe basic-simd.exe</MONO_MINI_REGRESSION_TESTS>
+    <MONO_EXECUTABLE>$(MONO_BUILD_DIR_PREFIX)$(Platform)/bin/$(Configuration)/mono$(MONO_TARGET_SUFFIX).exe</MONO_EXECUTABLE>
+    <MONO_EXECUTABLE_DIR>$(MONO_MINI_REGRESSION_TEST_DIR)</MONO_EXECUTABLE_DIR>
+    <MONO_PATH_ENV>MONO_PATH=$(MONO_PATH)</MONO_PATH_ENV>
+    <MONO_CFG_DIR_ENV>MONO_CFG_DIR=$(MONO_CFG_DIR)</MONO_CFG_DIR_ENV>
+    <MONO_TOOLCHAIN_PATH_ENV>PATH=$(MONO_TOOLCHAIN_PATH)</MONO_TOOLCHAIN_PATH_ENV>
+    <MONO_LOG_LEVEL_ENV>MONO_LOG_LEVEL=debug</MONO_LOG_LEVEL_ENV>
+    <MONO_LOG_MASK_ENV>MONO_LOG_MASK=asm,aot</MONO_LOG_MASK_ENV>
+  </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="MONO_PATH">
+      <Value>$(MONO_PATH)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_CFG_DIR">
+      <Value>$(MONO_CFG_DIR)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_CONFIG_ARG">
+      <Value>$(MONO_CONFIG_ARG)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_REGRESSION_TEST_DIR">
+      <Value>$(MONO_MINI_REGRESSION_TEST_DIR)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_MINI_REGRESSION_TESTS">
+      <Value>$(MONO_MINI_REGRESSION_TESTS)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_EXECUTABLE">
+      <Value>$(MONO_EXECUTABLE)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_EXECUTABLE_DIR">
+      <Value>$(MONO_EXECUTABLE_DIR)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_PATH_ENV">
+      <Value>$(MONO_PATH_ENV)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_CFG_DIR_ENV">
+      <Value>$(MONO_CFG_DIR_ENV)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_TOOLCHAIN_PATH_ENV">
+      <Value>$(MONO_TOOLCHAIN_PATH_ENV)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_LOG_LEVEL_ENV">
+      <Value>$(MONO_LOG_LEVEL_ENV)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_LOG_MASK_ENV">
+      <Value>$(MONO_LOG_MASK_ENV)</Value>
+    </BuildMacro>
+  </ItemGroup>
+  <ItemDefinitionGroup />
+</Project>
\ No newline at end of file
index 487513f2c369be8282e3c4a4be25b3af208c821e..bbc7249634d1b0d40dfaa9eff49e5e7f819bb33f 100644 (file)
@@ -1,5 +1,4 @@
 ; file generated by create-windef.pl
-LIBRARY mono-2.0.dll
 EXPORTS
 MonoFixupCorEE
 mono_add_internal_call
@@ -15,6 +14,7 @@ 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
@@ -471,6 +471,7 @@ 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
@@ -486,18 +487,23 @@ 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_jit_thread_detach
 mono_ldstr
 mono_ldtoken
 mono_load_remote_field
 mono_load_remote_field_new
+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_unpoison
 mono_lock_free_queue_node_init
+mono_lock_free_queue_node_unpoison
 mono_locks_dump
 mono_lookup_icall_symbol
 mono_lookup_internal_call
@@ -635,6 +641,8 @@ mono_monitor_enter_v4
 mono_monitor_exit
 mono_monitor_try_enter
 mono_mprotect
+mono_native_thread_id_get
+mono_native_thread_set_name
 mono_object_castclass_mbyref
 mono_object_clone
 mono_object_describe
@@ -829,6 +837,8 @@ mono_thread_get_main
 mono_thread_get_managed_id
 mono_thread_get_name_utf8
 mono_thread_get_undeniable_exception
+mono_thread_hazardous_try_free
+mono_thread_info_detach
 mono_thread_init
 mono_thread_is_foreign
 mono_thread_manage
@@ -838,7 +848,9 @@ 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_unsafe_region
 mono_threads_exit_gc_safe_region
index 23f0ec49c4655646527a7753ec7930e516244356..5384dc846b4cb2c0ee72d1e25695c04c47c44898 100644 (file)
@@ -1,21 +1,90 @@
-<?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="MonoDefines">
-    <top_srcdir>$(MSBuildProjectDirectory)\..</top_srcdir>
-    <LIBGC_CPPFLAGS_INCLUDE>$(top_srcdir)\libgc\include</LIBGC_CPPFLAGS_INCLUDE>
-    <GLIB_CFLAGS_INCLUDE>$(top_srcdir)\eglib\src</GLIB_CFLAGS_INCLUDE>
-    <BOEHM_DEFINES>HAVE_BOEHM_GC</BOEHM_DEFINES>
+  <PropertyGroup Label="UserMacros">
+    <!-- Change this to custom build tree location to enable out of source tree builds, example c:/mono-build/ -->
+    <MONO_BUILD_DIR_PREFIX>$(MSBuildProjectDirectory)/./build/</MONO_BUILD_DIR_PREFIX>
+    <!-- Change this to custom distribution tree location to enable out of source tree distribution, example c:/mono-dist/ -->
+    <MONO_INSTALL_DIR_PREFIX>$(MSBuildProjectDirectory)/./dist/</MONO_INSTALL_DIR_PREFIX>
+    <!-- GC in use, sgen or boehm, default is sgen. -->
+    <MONO_TARGET_GC>sgen</MONO_TARGET_GC>
+    <!-- When true, build targets will get a suffix based on used GC. Makes it possible to have builds using different GC's in same build folders, sharing common targets. -->
+    <MONO_USE_TARGET_SUFFIX>true</MONO_USE_TARGET_SUFFIX>
+    <!-- When true, build will get a separate build folder based on used GC. Makes it possible separate builds into different output folders under the same build prefix. -->
+    <MONO_USE_SEPARATE_BUILD_DIR>true</MONO_USE_SEPARATE_BUILD_DIR>
+    <!-- When true, all binaries and libraries will link using static c-runtime. When false, all binaries and libraries will link using dynamic c-runtime.  -->
+    <MONO_USE_STATIC_C_RUNTIME>false</MONO_USE_STATIC_C_RUNTIME>
+  </PropertyGroup>
+  <PropertyGroup Label="MonoDirectories">
+    <top_srcdir>$(MSBuildProjectDirectory)/..</top_srcdir>
+    <MONO_DIR>$(top_srcdir)</MONO_DIR>
+    <MONO_INCLUDE_DIR>$(MONO_DIR)/mono</MONO_INCLUDE_DIR>
+    <MONO_EGLIB_INCLUDE_DIR>$(MONO_DIR)/eglib;$(MONO_DIR)/eglib/include;$(MONO_DIR)/eglib/test</MONO_EGLIB_INCLUDE_DIR>
+    <MONO_EGLIB_SOURCE_DIR>$(MONO_DIR)/eglib/src</MONO_EGLIB_SOURCE_DIR>
+    <MONO_LIBGC_INCLUDE_DIR>$(MONO_DIR)/libgc/include</MONO_LIBGC_INCLUDE_DIR>
+    <MONO_LIBGC_SOURCE_DIR>$(MONO_DIR)/libgc/src</MONO_LIBGC_SOURCE_DIR>
+    <MONO_JIT_INCLUDE_DIR>$(MONO_INCLUDE_DIR)/jit</MONO_JIT_INCLUDE_DIR>
+    <MONO_JIT_SOURCE_DIR>$(MONO_INCLUDE_DIR)/jit</MONO_JIT_SOURCE_DIR>
+    <LIBGC_CPPFLAGS_INCLUDE>$(MONO_LIBGC_INCLUDE_DIR)</LIBGC_CPPFLAGS_INCLUDE>
+    <GLIB_CFLAGS_INCLUDE>$(MONO_EGLIB_SOURCE_DIR)</GLIB_CFLAGS_INCLUDE>
+  </PropertyGroup>
+  <PropertyGroup Label="Static-C-Runtime" Condition="$(MONO_USE_STATIC_C_RUNTIME)=='true'">
+    <MONO_C_RUNTIME Condition="'$(Configuration)'=='Debug'">MultiThreadedDebug</MONO_C_RUNTIME>
+    <MONO_C_RUNTIME Condition="'$(Configuration)'!='Debug'">MultiThreaded</MONO_C_RUNTIME>
+  </PropertyGroup>
+  <PropertyGroup Label="Dynamic-C-Runtime" Condition="$(MONO_USE_STATIC_C_RUNTIME)!='true'">
+    <MONO_C_RUNTIME Condition="'$(Configuration)'=='Debug'">MultiThreadedDebugDLL</MONO_C_RUNTIME>
+    <MONO_C_RUNTIME Condition="'$(Configuration)'!='Debug'">MultiThreadedDLL</MONO_C_RUNTIME>
+  </PropertyGroup>
+  <PropertyGroup Label="MonoSGEN" Condition="$(MONO_TARGET_GC)=='sgen' Or $(MONO_TARGET_GC)!='boehm'">
     <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>
+  <PropertyGroup Label="MonoBOEHM" Condition="$(MONO_TARGET_GC)=='boehm'">
+    <BOEHM_DEFINES>HAVE_BOEHM_GC</BOEHM_DEFINES>
+    <GC_DEFINES>$(BOEHM_DEFINES)</GC_DEFINES>
+    <GC_LIB>libgc.lib</GC_LIB>
+    <MONO_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="MonoProfiler">
+    <VTUNE_INCLUDE_DIR>$(ProgramFiles)/Intel/VTune Amplifier XE 2013/include</VTUNE_INCLUDE_DIR>
   </PropertyGroup>
+  <ItemGroup>
+    <BuildMacro Include="MONO_BUILD_DIR_PREFIX">
+      <Value>$(MONO_BUILD_DIR_PREFIX)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_INSTALL_DIR_PREFIX">
+      <Value>$(MONO_INSTALL_DIR_PREFIX)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_TARGET_GC">
+      <Value>$(MONO_TARGET_GC)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_USE_TARGET_SUFFIX">
+      <Value>$(MONO_USE_TARGET_SUFFIX)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_USE_SEPARATE_BUILD_DIR">
+      <Value>$(MONO_USE_SEPARATE_BUILD_DIR)</Value>
+    </BuildMacro>
+    <BuildMacro Include="MONO_USE_STATIC_C_RUNTIME">
+      <Value>$(MONO_USE_STATIC_C_RUNTIME)</Value>
+    </BuildMacro>
+  </ItemGroup>
   <ItemDefinitionGroup>
     <ClCompile>
       <DllExportPreprocessorDefinitions>MONO_DLL_EXPORT</DllExportPreprocessorDefinitions>
       <DllImportPreprocessorDefinitions>MONO_DLL_IMPORT</DllImportPreprocessorDefinitions>
-      <PreprocessorDefinitions>__default_codegen__;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;HAVE_CONFIG_H;GC_NOT_DLL;WIN32_THREADS;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;_UNICODE;UNICODE;WIN32_THREADS;FD_SETSIZE=1024;$(PreprocessorDefinitions);_WINSOCKAPI_</PreprocessorDefinitions>
-         <DisableSpecificWarnings>4273;4005</DisableSpecificWarnings>
+      <PreprocessorDefinitions>__default_codegen__;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;HAVE_CONFIG_H;GC_NOT_DLL;WIN32_THREADS;WINVER=0x0600;_WIN32_WINNT=0x0600;_WIN32_IE=0x0501;_UNICODE;UNICODE;FD_SETSIZE=1024;%(PreprocessorDefinitions);</PreprocessorDefinitions>
+      <DisableSpecificWarnings>4273;4005</DisableSpecificWarnings>
+      <RuntimeLibrary>$(MONO_C_RUNTIME)</RuntimeLibrary>
     </ClCompile>
     <Link>
-      <AdditionalDependencies>Mswsock.lib;ws2_32.lib;ole32.lib;oleaut32.lib;psapi.lib;version.lib;advapi32.lib;winmm.lib;kernel32.lib;$(AdditionalDependencies)</AdditionalDependencies>
+      <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>
-    </ItemDefinitionGroup>
-</Project>
+  </ItemDefinitionGroup>
+</Project>
\ No newline at end of file
index 17660be4ef0d7e875b1575794c737fea8aee2538..408a8b7953166556d8333ee29425e862957f554c 100644 (file)
@@ -1,6 +1,8 @@
-Microsoft Visual Studio Solution File, Format Version 11.00\r
-# Visual Studio 2010\r
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Embedded Samples", "Embedded Samples", "{5FE09AA5-C3C9-45EA-A323-36A11B653CEC}"\r
+Microsoft Visual Studio Solution File, Format Version 12.00\r
+# Visual Studio 14\r
+VisualStudioVersion = 14.0.25123.0\r
+MinimumVisualStudioVersion = 10.0.40219.1\r
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "EmbeddedSamples", "EmbeddedSamples", "{5FE09AA5-C3C9-45EA-A323-36A11B653CEC}"\r
 EndProject\r
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{EE2CC761-9652-44AC-9204-7EB31194CAA6}"\r
 EndProject\r
@@ -10,297 +12,376 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{ECA11C76
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "genmdesc", "genmdesc.vcxproj", "{B7098DFA-31E6-4006-8A15-1C9A4E925149}"\r
        ProjectSection(ProjectDependencies) = postProject\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4} = {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}\r
+               {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
                {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
+               {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
+               {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
+               {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}") = "libgc", "libgc.vcxproj", "{EB56000B-C80B-4E8B-908D-D84D31B517D3}"\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "monodis", "monodis.vcxproj", "{37F50E5A-4818-46CF-81FE-4BB06DE5D42E}"\r
+       ProjectSection(ProjectDependencies) = postProject\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
+               {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
+               {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
+               {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}") = "eglib", "eglib.vcxproj", "{158073ED-99AE-4196-9EDC-DDB2344F8466}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
+       EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "test_eglib", "test_eglib.vcxproj", "{80A0620A-3478-4E1A-AA7C-0D2387B892AB}"\r
+       ProjectSection(ProjectDependencies) = postProject\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
+               {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}") = "monoposixhelper", "monoposixhelper.vcxproj", "{33014734-0F46-4099-9A21-0C989E428681}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
+       EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jay", "..\mcs\jay\jay.vcxproj", "{5D485D32-3B9F-4287-AB24-C8DA5B89F537}"\r
 EndProject\r
 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Profilers", "Profilers", "{4CFD7702-60B2-4E82-BFAD-FCBB53EB4DA2}"\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "profiler-vtune", "profiler-vtune.vcxproj", "{F51017F9-B7FB-4F87-B7B5-12799D965783}"\r
+       ProjectSection(ProjectDependencies) = postProject\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}") = "libmonoutils", "libmonoutils.vcxproj", "{8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
+       EndProjectSection\r
 EndProject\r
 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmonoruntime", "libmonoruntime.vcxproj", "{C36612BD-22D3-4B95-85E2-7FDC4FC5D739}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
+       EndProjectSection\r
+EndProject\r
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Runtime", "Runtime", "{DE3617B4-17A8-4E5F-A00F-BA43D956881F}"\r
+EndProject\r
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BuildTargets", "BuildTargets", "{DC782E23-920A-4873-82A7-37F195FB92C1}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build-all", "build-all.vcxproj", "{5362490B-8516-44EE-9987-014C015A080A}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {80A0620A-3478-4E1A-AA7C-0D2387B892AB} = {80A0620A-3478-4E1A-AA7C-0D2387B892AB}\r
+               {EB56000B-C80B-4E8B-908D-D84D31B517D3} = {EB56000B-C80B-4E8B-908D-D84D31B517D3}\r
+               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4} = {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}\r
+               {5D485D32-3B9F-4287-AB24-C8DA5B89F537} = {5D485D32-3B9F-4287-AB24-C8DA5B89F537}\r
+               {33014734-0F46-4099-9A21-0C989E428681} = {33014734-0F46-4099-9A21-0C989E428681}\r
+               {C5639B3F-288A-4A4B-A4A5-C0D85834221D} = {C5639B3F-288A-4A4B-A4A5-C0D85834221D}\r
+               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3} = {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}\r
+               {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
+               {A0EDDCD9-940F-432C-A28F-7EF322437D79} = {A0EDDCD9-940F-432C-A28F-7EF322437D79}\r
+               {158073ED-99AE-4196-9EDC-DDB2344F8466} = {158073ED-99AE-4196-9EDC-DDB2344F8466}\r
+               {F51017F9-B7FB-4F87-B7B5-12799D965783} = {F51017F9-B7FB-4F87-B7B5-12799D965783}\r
+               {B7098DFA-31E6-4006-8A15-1C9A4E925149} = {B7098DFA-31E6-4006-8A15-1C9A4E925149}\r
+       EndProjectSection\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build-init", "build-init.vcxproj", "{92AE7622-5F58-4234-9A26-9EC71876B3F4}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build-install", "build-install.vcxproj", "{A9DC644B-9171-4FCD-BF21-2CC6D055FC40}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522} = {B6E563B8-7F57-4F7F-9439-F2405D4E2522}\r
+       EndProjectSection\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "build-package", "build-package.vcxproj", "{B6E563B8-7F57-4F7F-9439-F2405D4E2522}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {5362490B-8516-44EE-9987-014C015A080A} = {5362490B-8516-44EE-9987-014C015A080A}\r
+       EndProjectSection\r
+EndProject\r
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "GC", "GC", "{21DF4C80-0EC9-4BFE-8552-2D47FCEF419A}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgcmonosgen", "libgcmonosgen.vcxproj", "{C36612BD-22D3-4B95-85E2-7FDC4FC5D740}"\r
+       ProjectSection(ProjectDependencies) = postProject\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {92AE7622-5F58-4234-9A26-9EC71876B3F4}\r
+       EndProjectSection\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mono-mini-regression-test", "mono-mini-regression-test.vcxproj", "{3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}"\r
+EndProject\r
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mono-mini-regression-aot-test", "mono-mini-regression-aot-test.vcxproj", "{D632D664-C0F5-4B60-9375-BDDAD5C7A649}"\r
+EndProject\r
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "regression", "regression", "{A0068765-334B-414C-8E21-8376CD2EC9F6}"\r
 EndProject\r
 Global\r
        GlobalSection(SolutionConfigurationPlatforms) = preSolution\r
-               Debug_SGen|Win32 = Debug_SGen|Win32\r
-               Debug_SGen|x64 = Debug_SGen|x64\r
                Debug|Win32 = Debug|Win32\r
                Debug|x64 = Debug|x64\r
-               Release_SGen|Win32 = Release_SGen|Win32\r
-               Release_SGen|x64 = Release_SGen|x64\r
                Release|Win32 = Release|Win32\r
                Release|x64 = Release|x64\r
        EndGlobalSection\r
        GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug_SGen|x64.Build.0 = Debug|x64\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug|Win32.Build.0 = Debug|Win32\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug|x64.ActiveCfg = Debug|x64\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Debug|x64.Build.0 = Debug|x64\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release_SGen|x64.Build.0 = Release|x64\r
                {B7098DFA-31E6-4006-8A15-1C9A4E925149}.Release|Win32.ActiveCfg = Release|Win32\r
                {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_SGen|Win32.ActiveCfg = Debug_SGen|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug_SGen|Win32.Build.0 = Debug_SGen|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug_SGen|x64.ActiveCfg = Debug_SGen|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Debug_SGen|x64.Build.0 = Debug_SGen|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_SGen|Win32.ActiveCfg = Release_SGen|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release_SGen|Win32.Build.0 = Release_SGen|Win32\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release_SGen|x64.ActiveCfg = Release_SGen|x64\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771}.Release_SGen|x64.Build.0 = Release_SGen|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_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Debug_SGen|x64.ActiveCfg = Debug|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
-               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Debug|x64.Build.0 = Debug|x64\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release|Win32.ActiveCfg = Release|Win32\r
+               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release|Win32.Build.0 = Release|Win32\r
                {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release|x64.ActiveCfg = Release|x64\r
-               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
+               {C5639B3F-288A-4A4B-A4A5-C0D85834221D}.Release|x64.Build.0 = Release|x64\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug|Win32.Build.0 = Debug|Win32\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug|x64.ActiveCfg = Debug|x64\r
-               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Debug|x64.Build.0 = Debug|x64\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release|Win32.ActiveCfg = Release|Win32\r
+               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release|Win32.Build.0 = Release|Win32\r
                {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release|x64.ActiveCfg = Release|x64\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug_SGen|Win32.ActiveCfg = Debug_SGen|Win32\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug_SGen|Win32.Build.0 = Debug_SGen|Win32\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug_SGen|x64.ActiveCfg = Debug_SGen|x64\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug_SGen|x64.Build.0 = Debug_SGen|x64\r
+               {6FDE4E5E-57D0-432F-A987-6C226A7827E4}.Release|x64.Build.0 = Release|x64\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug|Win32.Build.0 = Debug|Win32\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug|x64.ActiveCfg = Debug|x64\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Debug|x64.Build.0 = Debug|x64\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release_SGen|Win32.ActiveCfg = Release_SGen|Win32\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release_SGen|Win32.Build.0 = Release_SGen|Win32\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release_SGen|x64.ActiveCfg = Release_SGen|x64\r
-               {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release_SGen|x64.Build.0 = Release_SGen|x64\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release|Win32.ActiveCfg = Release|Win32\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release|Win32.Build.0 = Release|Win32\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release|x64.ActiveCfg = Release|x64\r
                {A0EDDCD9-940F-432C-A28F-7EF322437D79}.Release|x64.Build.0 = Release|x64\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug_SGen|x64.Build.0 = Debug|x64\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug|Win32.Build.0 = Debug|Win32\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug|x64.ActiveCfg = Debug|x64\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Debug|x64.Build.0 = Debug|x64\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release_SGen|x64.Build.0 = Release|x64\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release|Win32.ActiveCfg = Release|Win32\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release|Win32.Build.0 = Release|Win32\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release|x64.ActiveCfg = Release|x64\r
                {EB56000B-C80B-4E8B-908D-D84D31B517D3}.Release|x64.Build.0 = Release|x64\r
-               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug|Win32.Build.0 = Debug|Win32\r
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug|x64.ActiveCfg = Debug|x64\r
-               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Debug|x64.Build.0 = Debug|x64\r
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release|Win32.ActiveCfg = Release|Win32\r
+               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release|Win32.Build.0 = Release|Win32\r
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release|x64.ActiveCfg = Release|x64\r
-               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
+               {37F50E5A-4818-46CF-81FE-4BB06DE5D42E}.Release|x64.Build.0 = Release|x64\r
                {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug|Win32.Build.0 = Debug|Win32\r
                {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug|x64.ActiveCfg = Debug|x64\r
-               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Debug|x64.Build.0 = Debug|x64\r
                {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release|Win32.ActiveCfg = Release|Win32\r
+               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release|Win32.Build.0 = Release|Win32\r
                {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release|x64.ActiveCfg = Release|x64\r
-               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
+               {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}.Release|x64.Build.0 = Release|x64\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug|Win32.Build.0 = Debug|Win32\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug|x64.ActiveCfg = Debug|x64\r
-               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Debug|x64.Build.0 = Debug|x64\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release|Win32.ActiveCfg = Release|Win32\r
+               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release|Win32.Build.0 = Release|Win32\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release|x64.ActiveCfg = Release|x64\r
-               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
+               {CA2A69D6-3B9D-45A5-8BF7-4E242E683122}.Release|x64.Build.0 = Release|x64\r
                {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug|Win32.Build.0 = Debug|Win32\r
                {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug|x64.ActiveCfg = Debug|x64\r
-               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Debug|x64.Build.0 = Debug|x64\r
                {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release|Win32.ActiveCfg = Release|Win32\r
+               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release|Win32.Build.0 = Release|Win32\r
                {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release|x64.ActiveCfg = Release|x64\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug_SGen|x64.Build.0 = Debug|x64\r
+               {C2EB666E-9146-4B7A-85F6-25F9EA313770}.Release|x64.Build.0 = Release|x64\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug|Win32.Build.0 = Debug|Win32\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug|x64.ActiveCfg = Debug|x64\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Debug|x64.Build.0 = Debug|x64\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release_SGen|x64.Build.0 = Release|x64\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release|Win32.ActiveCfg = Release|Win32\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release|Win32.Build.0 = Release|Win32\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release|x64.ActiveCfg = Release|x64\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466}.Release|x64.Build.0 = Release|x64\r
-               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
                {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug|Win32.Build.0 = Debug|Win32\r
                {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug|x64.ActiveCfg = Debug|x64\r
-               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release_SGen|x64.ActiveCfg = Release|x64\r
+               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Debug|x64.Build.0 = Debug|x64\r
                {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release|Win32.ActiveCfg = Release|Win32\r
+               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release|Win32.Build.0 = Release|Win32\r
                {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release|x64.ActiveCfg = Release|x64\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug_SGen|x64.Build.0 = Debug|x64\r
+               {80A0620A-3478-4E1A-AA7C-0D2387B892AB}.Release|x64.Build.0 = Release|x64\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug|Win32.Build.0 = Debug|Win32\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug|x64.ActiveCfg = Debug|x64\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Debug|x64.Build.0 = Debug|x64\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release_SGen|x64.Build.0 = Release|x64\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release|Win32.ActiveCfg = Release|Win32\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release|Win32.Build.0 = Release|Win32\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release|x64.ActiveCfg = Release|x64\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4}.Release|x64.Build.0 = Release|x64\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Debug_SGen|x64.Build.0 = Debug|x64\r
                {33014734-0F46-4099-9A21-0C989E428681}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {33014734-0F46-4099-9A21-0C989E428681}.Debug|Win32.Build.0 = Debug|Win32\r
                {33014734-0F46-4099-9A21-0C989E428681}.Debug|x64.ActiveCfg = Debug|x64\r
                {33014734-0F46-4099-9A21-0C989E428681}.Debug|x64.Build.0 = Debug|x64\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {33014734-0F46-4099-9A21-0C989E428681}.Release_SGen|x64.Build.0 = Release|x64\r
                {33014734-0F46-4099-9A21-0C989E428681}.Release|Win32.ActiveCfg = Release|Win32\r
                {33014734-0F46-4099-9A21-0C989E428681}.Release|Win32.Build.0 = Release|Win32\r
                {33014734-0F46-4099-9A21-0C989E428681}.Release|x64.ActiveCfg = Release|x64\r
                {33014734-0F46-4099-9A21-0C989E428681}.Release|x64.Build.0 = Release|x64\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug_SGen|Win32.Build.0 = Debug|Win32\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug_SGen|x64.ActiveCfg = Debug|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug|Win32.Build.0 = Debug|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Debug|x64.ActiveCfg = Debug|Win32\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release_SGen|x64.ActiveCfg = Release|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release|Win32.ActiveCfg = Release|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release|Win32.Build.0 = Release|Win32\r
                {5D485D32-3B9F-4287-AB24-C8DA5B89F537}.Release|x64.ActiveCfg = Release|Win32\r
-               {F51017F9-B7FB-4F87-B7B5-12799D965783}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {F51017F9-B7FB-4F87-B7B5-12799D965783}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
                {F51017F9-B7FB-4F87-B7B5-12799D965783}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {F51017F9-B7FB-4F87-B7B5-12799D965783}.Debug|x64.ActiveCfg = Debug|x64\r
-               {F51017F9-B7FB-4F87-B7B5-12799D965783}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {F51017F9-B7FB-4F87-B7B5-12799D965783}.Release_SGen|x64.ActiveCfg = Release|x64\r
                {F51017F9-B7FB-4F87-B7B5-12799D965783}.Release|Win32.ActiveCfg = Release|Win32\r
                {F51017F9-B7FB-4F87-B7B5-12799D965783}.Release|x64.ActiveCfg = Release|x64\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug_SGen|Win32.ActiveCfg = Debug|Win32\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug_SGen|Win32.Build.0 = Debug|Win32\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug_SGen|x64.ActiveCfg = Debug|x64\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug_SGen|x64.Build.0 = Debug|x64\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug|Win32.Build.0 = Debug|Win32\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug|x64.ActiveCfg = Debug|x64\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Debug|x64.Build.0 = Debug|x64\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release_SGen|Win32.ActiveCfg = Release|Win32\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release_SGen|Win32.Build.0 = Release|Win32\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release_SGen|x64.ActiveCfg = Release|x64\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release_SGen|x64.Build.0 = Release|x64\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release|Win32.ActiveCfg = Release|Win32\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release|Win32.Build.0 = Release|Win32\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release|x64.ActiveCfg = Release|x64\r
                {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4}.Release|x64.Build.0 = Release|x64\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug_SGen|Win32.ActiveCfg = Debug_SGen|Win32\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug_SGen|Win32.Build.0 = Debug_SGen|Win32\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug_SGen|x64.ActiveCfg = Debug_SGen|x64\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug_SGen|x64.Build.0 = Debug_SGen|x64\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug|Win32.ActiveCfg = Debug|Win32\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug|Win32.Build.0 = Debug|Win32\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug|x64.ActiveCfg = Debug|x64\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Debug|x64.Build.0 = Debug|x64\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release_SGen|Win32.ActiveCfg = Release_SGen|Win32\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release_SGen|Win32.Build.0 = Release_SGen|Win32\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release_SGen|x64.ActiveCfg = Release_SGen|x64\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release_SGen|x64.Build.0 = Release_SGen|x64\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release|Win32.ActiveCfg = Release|Win32\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release|Win32.Build.0 = Release|Win32\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release|x64.ActiveCfg = Release|x64\r
                {C36612BD-22D3-4B95-85E2-7FDC4FC5D739}.Release|x64.Build.0 = Release|x64\r
+               {5362490B-8516-44EE-9987-014C015A080A}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {5362490B-8516-44EE-9987-014C015A080A}.Debug|x64.ActiveCfg = Debug|x64\r
+               {5362490B-8516-44EE-9987-014C015A080A}.Release|Win32.ActiveCfg = Release|Win32\r
+               {5362490B-8516-44EE-9987-014C015A080A}.Release|x64.ActiveCfg = Release|x64\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Debug|Win32.Build.0 = Debug|Win32\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Debug|x64.ActiveCfg = Debug|x64\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Debug|x64.Build.0 = Debug|x64\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Release|Win32.ActiveCfg = Release|Win32\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Release|Win32.Build.0 = Release|Win32\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Release|x64.ActiveCfg = Release|x64\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4}.Release|x64.Build.0 = Release|x64\r
+               {A9DC644B-9171-4FCD-BF21-2CC6D055FC40}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {A9DC644B-9171-4FCD-BF21-2CC6D055FC40}.Debug|x64.ActiveCfg = Debug|x64\r
+               {A9DC644B-9171-4FCD-BF21-2CC6D055FC40}.Release|Win32.ActiveCfg = Release|Win32\r
+               {A9DC644B-9171-4FCD-BF21-2CC6D055FC40}.Release|x64.ActiveCfg = Release|x64\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522}.Debug|x64.ActiveCfg = Debug|x64\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522}.Release|Win32.ActiveCfg = Release|Win32\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522}.Release|x64.ActiveCfg = Release|x64\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Debug|Win32.Build.0 = Debug|Win32\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Debug|x64.ActiveCfg = Debug|x64\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Debug|x64.Build.0 = Debug|x64\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Release|Win32.ActiveCfg = Release|Win32\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Release|Win32.Build.0 = Release|Win32\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Release|x64.ActiveCfg = Release|x64\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740}.Release|x64.Build.0 = Release|x64\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Debug|Win32.Build.0 = Debug|Win32\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Debug|x64.ActiveCfg = Debug|x64\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Debug|x64.Build.0 = Debug|x64\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Release|Win32.ActiveCfg = Release|Win32\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Release|Win32.Build.0 = Release|Win32\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Release|x64.ActiveCfg = Release|x64\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D}.Release|x64.Build.0 = Release|x64\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Debug|Win32.ActiveCfg = Debug|Win32\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Debug|Win32.Build.0 = Debug|Win32\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Debug|x64.ActiveCfg = Debug|x64\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Debug|x64.Build.0 = Debug|x64\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Release|Win32.ActiveCfg = Release|Win32\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Release|Win32.Build.0 = Release|Win32\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.Release|x64.ActiveCfg = Release|x64\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649}.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
-               {C2EB666E-9146-4B7A-85F6-25F9EA313770} = {5FE09AA5-C3C9-45EA-A323-36A11B653CEC}\r
-               {B7098DFA-31E6-4006-8A15-1C9A4E925149} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
+               {A0EDDCD9-940F-432C-A28F-7EF322437D79} = {DE3617B4-17A8-4E5F-A00F-BA43D956881F}\r
+               {EB56000B-C80B-4E8B-908D-D84D31B517D3} = {21DF4C80-0EC9-4BFE-8552-2D47FCEF419A}\r
                {37F50E5A-4818-46CF-81FE-4BB06DE5D42E} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
                {84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
                {CA2A69D6-3B9D-45A5-8BF7-4E242E683122} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
-               {CB0D9E92-293C-439C-9AC7-C5F59B6E0771} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
-               {EB56000B-C80B-4E8B-908D-D84D31B517D3} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
+               {C2EB666E-9146-4B7A-85F6-25F9EA313770} = {5FE09AA5-C3C9-45EA-A323-36A11B653CEC}\r
                {158073ED-99AE-4196-9EDC-DDB2344F8466} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
-               {33014734-0F46-4099-9A21-0C989E428681} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
-               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
-               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
                {80A0620A-3478-4E1A-AA7C-0D2387B892AB} = {ECA11C76-E192-4F67-A8FA-28B637D9716F}\r
                {5A435710-E6D2-4DD4-9B3F-A7239A32C6F4} = {ECA11C76-E192-4F67-A8FA-28B637D9716F}\r
+               {33014734-0F46-4099-9A21-0C989E428681} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
+               {5D485D32-3B9F-4287-AB24-C8DA5B89F537} = {EE2CC761-9652-44AC-9204-7EB31194CAA6}\r
                {F51017F9-B7FB-4F87-B7B5-12799D965783} = {4CFD7702-60B2-4E82-BFAD-FCBB53EB4DA2}\r
+               {8FC2B0C8-51AD-49DF-851F-5D01A77A75E4} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D739} = {0EBA83B7-0EB4-4C83-A900-77300A97E8B1}\r
+               {5362490B-8516-44EE-9987-014C015A080A} = {DC782E23-920A-4873-82A7-37F195FB92C1}\r
+               {92AE7622-5F58-4234-9A26-9EC71876B3F4} = {DC782E23-920A-4873-82A7-37F195FB92C1}\r
+               {A9DC644B-9171-4FCD-BF21-2CC6D055FC40} = {DC782E23-920A-4873-82A7-37F195FB92C1}\r
+               {B6E563B8-7F57-4F7F-9439-F2405D4E2522} = {DC782E23-920A-4873-82A7-37F195FB92C1}\r
+               {C36612BD-22D3-4B95-85E2-7FDC4FC5D740} = {21DF4C80-0EC9-4BFE-8552-2D47FCEF419A}\r
+               {3E0D229E-C39F-4EDA-9A6A-A33ECEA0322D} = {A0068765-334B-414C-8E21-8376CD2EC9F6}\r
+               {D632D664-C0F5-4B60-9375-BDDAD5C7A649} = {A0068765-334B-414C-8E21-8376CD2EC9F6}\r
+               {A0068765-334B-414C-8E21-8376CD2EC9F6} = {ECA11C76-E192-4F67-A8FA-28B637D9716F}\r
        EndGlobalSection\r
        GlobalSection(ExtensibilityGlobals) = postSolution\r
                AMDCaProjectFile = C:\Users\Owner\Development\monogit\mono\msvc\CodeAnalyst\mono.caw\r
index 66f1f0ef99cc5a6ad402271dc976c8b89febc524..12cceebe601e6c6be260770cff6f7ef0598e753a 100644 (file)
@@ -1,14 +1,6 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
   <ItemGroup Label="ProjectConfigurations">\r
-    <ProjectConfiguration Include="Debug_SGen|Win32">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Debug_SGen|x64">\r
-      <Configuration>Debug_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Debug|Win32">\r
       <Configuration>Debug</Configuration>\r
       <Platform>Win32</Platform>\r
@@ -17,14 +9,6 @@
       <Configuration>Debug</Configuration>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|Win32">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>Win32</Platform>\r
-    </ProjectConfiguration>\r
-    <ProjectConfiguration Include="Release_SGen|x64">\r
-      <Configuration>Release_SGen</Configuration>\r
-      <Platform>x64</Platform>\r
-    </ProjectConfiguration>\r
     <ProjectConfiguration Include="Release|Win32">\r
       <Configuration>Release</Configuration>\r
       <Platform>Win32</Platform>\r
       <Platform>x64</Platform>\r
     </ProjectConfiguration>\r
   </ItemGroup>\r
-  <Import Project="mono.props" />\r
   <PropertyGroup Label="Globals">\r
     <ProjectGuid>{A0EDDCD9-940F-432C-A28F-7EF322437D79}</ProjectGuid>\r
     <RootNamespace>mono</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
-  </PropertyGroup>\r
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'" Label="Configuration">\r
-    <ConfigurationType>Application</ConfigurationType>\r
-    <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|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
-  </ImportGroup>\r
-  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">$(ProjectName)-sgen</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">$(ProjectName)-sgen</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">$(ProjectName)-sgen</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">$(ProjectName)-sgen</TargetName>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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
+    <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
+    <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
+  </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
+    <LinkIncremental>true</LinkIncremental>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <LinkIncremental>true</LinkIncremental>\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
   </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference />\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(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
-    </ProjectReference>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|Win32'">\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
-    </ClCompile>\r
-    <ProjectReference />\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
-      <GenerateDebugInformation>true</GenerateDebugInformation>\r
-      <SubSystem>Console</SubSystem>\r
-      <TargetMachine>MachineX64</TargetMachine>\r
-    </Link>\r
-  </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_SGen|x64'">\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <MinimalRebuild>true</MinimalRebuild>\r
-      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\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>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).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>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\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
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
     </Link>\r
   </ItemDefinitionGroup>\r
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|Win32'">\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-    </ClCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(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)'=='Release|x64'">\r
     <Midl>\r
       <TargetEnvironment>X64</TargetEnvironment>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;WIN64;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
-      <PrecompiledHeader>\r
-      </PrecompiledHeader>\r
-      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <CompileAs>CompileAsC</CompileAs>\r
-    </ClCompile>\r
-    <ProjectReference>\r
-      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
-    </ProjectReference>\r
-    <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(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
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release_SGen|x64'">\r
-    <Midl>\r
-      <TargetEnvironment>X64</TargetEnvironment>\r
-    </Midl>\r
-    <ClCompile>\r
-      <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\;..\jit;..\eglib\src;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
     <ProjectReference Include="libmono.vcxproj">\r
       <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/mono.vcxproj.filters b/msvc/mono.vcxproj.filters
new file mode 100644 (file)
index 0000000..8d1de7d
--- /dev/null
@@ -0,0 +1,19 @@
+<?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>{b38b5984-2dce-4e4c-b7a9-efbfd9020787}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{a5d90d91-dfa6-4431-a256-9a4f05987798}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{9da0f496-002d-4de5-bdce-b77a14368e4d}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\mono\mini\main.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 9a739c622b362a421674251b9cdd62456b6e8b1a..7e7eb2df1552132be1d5f91f13028c9ee2f631ff 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{37F50E5A-4818-46CF-81FE-4BB06DE5D42E}</ProjectGuid>\r
     <RootNamespace>dis</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>\r
-      </AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <TargetMachine>MachineX86</TargetMachine>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DisableSpecificWarnings>4996;4018;4244;%(DisableSpecificWarnings)</DisableSpecificWarnings>\r
     </ClCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>\r
-      </AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_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
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\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
diff --git a/msvc/monodis.vcxproj.filters b/msvc/monodis.vcxproj.filters
new file mode 100644 (file)
index 0000000..b2d0e1f
--- /dev/null
@@ -0,0 +1,60 @@
+<?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\dis\declsec.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\dis\dis-cil.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\dis\dump.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\dis\get.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\dis\main.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\dis\util.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClInclude Include="..\mono\dis\declsec.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\dis-cil.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\dump.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\get.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\meta.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\push-pop.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\mono\dis\util.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{930a623e-3354-4408-8337-bcc10486de30}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{ed6c7bc3-7db2-4d06-afe2-cef361f172a3}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{bcb6eb9e-da1a-4edf-936d-e7fbb7212858}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 962d5bacf515679a4d14793cf9b3ec324692db47..cce843fff837109d89404089ffbf4356c2d69fba 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{CA2A69D6-3B9D-45A5-8BF7-4E242E683122}</ProjectGuid>\r
     <RootNamespace>monograph</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <TargetMachine>MachineX86</TargetMachine>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>ws2_32.lib;libmono.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\;..\eglib\src;..\mono\;..\mono\jit;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
   <ItemGroup>\r
     <ProjectReference Include="eglib.vcxproj">\r
       <Project>{158073ed-99ae-4196-9edc-ddb2344f8466}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
     <ProjectReference Include="libmono.vcxproj">\r
       <Project>{cb0d9e92-293c-439c-9ac7-c5f59b6e0771}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/monograph.vcxproj.filters b/msvc/monograph.vcxproj.filters
new file mode 100644 (file)
index 0000000..3391822
--- /dev/null
@@ -0,0 +1,22 @@
+<?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="..\tools\monograph\monograph.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\mono\metadata\opcodes.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{816448ff-856a-473b-8b2c-5a753c609efa}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{0fd5c5dd-f2f7-4c88-90a4-a18f2788fbd7}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{41563c0c-c891-43a9-aee3-e8f91a8c9162}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index df216b7622ccae357b321e8ac672676996079786..83304969ab20ec2f93929d747146fd03db64a965 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{33014734-0F46-4099-9A21-0C989E428681}</ProjectGuid>\r
     <RootNamespace>monoposixhelper</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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)\$(Configuration)\</IntDir>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\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
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <Midl>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Windows</SubSystem>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <TargetMachine>MachineX64</TargetMachine>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <CompileAs>CompileAsC</CompileAs>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
       <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>\r
       <ModuleDefinitionFile>monoposixhelper.def</ModuleDefinitionFile>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\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
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
     <Midl>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>..\eglib\src;..\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <SubSystem>Windows</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
-      <ImportLibrary>$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
+      <ImportLibrary>$(MONO_BUILD_DIR_PREFIX)$(Platform)\lib\$(Configuration)\$(TargetName).lib</ImportLibrary>\r
       <TargetMachine>MachineX64</TargetMachine>\r
-      <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClCompile Include="..\support\adler32.c" />\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
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-    </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
diff --git a/msvc/monoposixhelper.vcxproj.filters b/msvc/monoposixhelper.vcxproj.filters
new file mode 100644 (file)
index 0000000..9df33f5
--- /dev/null
@@ -0,0 +1,110 @@
+<?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
+  </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
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{45dae598-72bc-4d0e-9cba-004f84c718c0}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{2f5dbdd8-33f3-495b-964a-55d67a027fad}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\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
index d686ca0d90942115580eb285e3023703273a11f9..081051fe5e02ad8f0c9dfa335d0dae455b33f289 100644 (file)
@@ -1,5 +1,4 @@
 ; file generated by create-windef.pl
-LIBRARY monosgen-2.0.dll
 EXPORTS
 MonoFixupCorEE
 mono_add_internal_call
@@ -15,6 +14,7 @@ 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
@@ -473,6 +473,7 @@ 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
@@ -488,18 +489,23 @@ 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_jit_thread_detach
 mono_ldstr
 mono_ldtoken
 mono_load_remote_field
 mono_load_remote_field_new
+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_unpoison
 mono_lock_free_queue_node_init
+mono_lock_free_queue_node_unpoison
 mono_locks_dump
 mono_lookup_icall_symbol
 mono_lookup_internal_call
@@ -637,6 +643,8 @@ mono_monitor_enter_v4
 mono_monitor_exit
 mono_monitor_try_enter
 mono_mprotect
+mono_native_thread_id_get
+mono_native_thread_set_name
 mono_object_castclass_mbyref
 mono_object_clone
 mono_object_describe
@@ -831,6 +839,8 @@ mono_thread_get_main
 mono_thread_get_managed_id
 mono_thread_get_name_utf8
 mono_thread_get_undeniable_exception
+mono_thread_hazardous_try_free
+mono_thread_info_detach
 mono_thread_init
 mono_thread_is_foreign
 mono_thread_manage
@@ -840,7 +850,9 @@ 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_unsafe_region
 mono_threads_exit_gc_safe_region
diff --git a/msvc/package.bat b/msvc/package.bat
new file mode 100644 (file)
index 0000000..df29a8b
--- /dev/null
@@ -0,0 +1,104 @@
+@ECHO off
+
+SET PLATFORM=%1
+SET CONFIG=%2
+SET BUILD_DIR=%3
+SET ARGUMENTS=%4
+
+SET XCOPY_COMMAND=%windir%\system32\xcopy
+
+SET BUILD_DIR=%BUILD_DIR:"=%
+SET BUILD_DIR=%BUILD_DIR:/=\%
+
+IF "" == "%PLATFORM%" (
+       ECHO Error: No platform parameter set.
+       GOTO ON_ERROR
+)
+       
+IF "" == "%CONFIG%" (
+       ECHO Error: No configuration parameter set.
+       GOTO ON_ERROR
+)
+
+IF "" == "%BUILD_DIR%" (
+       ECHO Error: No MONO_BUILD_DIR_PREFIX parameter set.
+       GOTO ON_ERROR
+)
+
+IF NOT EXIST %BUILD_DIR% (
+       ECHO Error: '%BUILD_DIR%', directory doesn't eixst.
+       GOTO ON_ERROR
+)
+
+IF "\" == "%BUILD_DIR:~-1%" (
+       SET BUILD_DIR=%BUILD_DIR:~0,-1%
+)
+
+IF NOT EXIST %BUILD_DIR%\%PLATFORM%\lib\%CONFIG% (
+       ECHO Error: No lib directory available for %PLATFORM% %CONFIG% at '%BUILD_DIR%'. Any build availalbe for platform, configuration pair?
+       GOTO ON_ERROR
+)
+
+IF NOT EXIST %BUILD_DIR%\%PLATFORM%\bin\%CONFIG% (
+       ECHO Error: No bin directory available for %PLATFORM% %CONFIG% at '%BUILD_DIR%'. Any build availalbe for platform, configuration pair?
+       GOTO ON_ERROR
+)
+
+SET PACKAGE_DIR=%BUILD_DIR%\package\%PLATFORM%\%CONFIG%
+
+SET OPTIONS=/s /e /y
+
+IF "-v" == "%ARGUMENTS%" (
+       SET OPTIONS=/f /s /e /y
+)
+
+IF "-q" == "%ARGUMENTS%" (
+       SET "OPTIONS=/s /e /q /y"
+)
+
+ECHO Packaging mono build %PLATFORM% %CONFIG% into '%PACKAGE_DIR%' ...
+
+IF EXIST %PACKAGE_DIR% rmdir %PACKAGE_DIR% /s /q
+mkdir %PACKAGE_DIR%
+mkdir %PACKAGE_DIR%\include\mono-2.0
+
+SET RUN=%XCOPY_COMMAND% ".\include\*.*" "%PACKAGE_DIR%\include\mono-2.0\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.lib" "%PACKAGE_DIR%\lib\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\lib\%CONFIG%\*.pdb" "%PACKAGE_DIR%\lib\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.exe" "%PACKAGE_DIR%\bin\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.dll" "%PACKAGE_DIR%\bin\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.pdb" "%PACKAGE_DIR%\bin\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+SET RUN=%XCOPY_COMMAND% "%BUILD_DIR%\%PLATFORM%\bin\%CONFIG%\*.lib" "%PACKAGE_DIR%\bin\" %OPTIONS%
+call :runCommand "%RUN%" %ARGUMENTS%
+
+ECHO Packaging of mono build %PLATFORM% %CONFIG% into '%PACKAGE_DIR%' DONE. 
+
+EXIT /b 0
+
+:ON_ERROR
+       ECHO "package.bat [win32|x64] [Debug|Release] [MONO_BUILD_DIR_PREFIX] [ARGUMENTS]"
+       EXIT /b 1
+
+@ECHO on
+
+:runCommand
+
+       IF "-q" == "%~2" (
+               %~1 >nul 2>&1
+       ) ELSE (
+               %~1
+       )
+
+goto :EOF
index 275e4c17c95efe7c35b181ead4fa308851e7bf6e..5a6e9116bd9759204af84f6bbdaa11fd2f611fb0 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{84C7DB50-D6F8-4C47-B22C-6BB203AEB4D3}</ProjectGuid>\r
     <RootNamespace>pedump</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src\;$(SolutionDir)..\;$(SolutionDir)..\mono\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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;GC_NOT_DLL;GC_GCJ_SUPPORT;GC_WIN32_THREADS;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)pedump/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)pedump/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)pedump/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src\;$(SolutionDir)..\;$(SolutionDir)..\mono\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src\;$(SolutionDir)..\;$(SolutionDir)..\mono\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)pedump/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)pedump/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)pedump/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src\;$(SolutionDir)..\;$(SolutionDir)..\mono\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_INCLUDE_DIR);$(MONO_JIT_INCLUDE_DIR);$(MONO_EGLIB_SOURCE_DIR);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Psapi.lib;Ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;libmonoruntime$(MONO_TARGET_SUFFIX).lib;libmonoutils.lib;$(GC_LIB);%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\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\pedump.c" />\r
     <ClCompile Include="..\mono\metadata\process.c" />\r
     <ClCompile Include="..\mono\metadata\profiler.c" />\r
     <ClCompile Include="..\mono\metadata\rand.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
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
     <ProjectReference Include="libgc.vcxproj">\r
       <Project>{eb56000b-c80b-4e8b-908d-d84d31b517d3}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\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
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmonoruntime.vcxproj">\r
-      <Project>{c36612bd-22d3-4b95-85e2-7fdc4fc5d739}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
-    </ProjectReference>\r
-    <ProjectReference Include="libmonoutils.vcxproj">\r
-      <Project>{8fc2b0c8-51ad-49df-851f-5d01a77a75e4}</Project>\r
-      <Private>false</Private>\r
-      <ReferenceOutputAssembly>true</ReferenceOutputAssembly>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/pedump.vcxproj.filters b/msvc/pedump.vcxproj.filters
new file mode 100644 (file)
index 0000000..7658bc1
--- /dev/null
@@ -0,0 +1,106 @@
+<?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\file-io.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\process.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\socket-io.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
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{e36ce4ec-2939-4ed1-9bee-c1697823c53a}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{091ce72c-8fa4-4aa9-a8b8-e5a8a38db6e2}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{699de579-6295-481f-be9a-b8aaadad1b0e}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index dcdb2ba64855620ad1a170e0fb8b434fff1430a8..45c497b9bdc31612d3d1fbd4a95b2bdd7041ba50 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{F51017F9-B7FB-4F87-B7B5-12799D965783}</ProjectGuid>\r
     <RootNamespace>profilervtune</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\r
+    <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>DynamicLibrary</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />\r
   <ImportGroup Label="ExtensionSettings">\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)'=='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
   <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)'=='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
   <PropertyGroup Label="UserMacros" />\r
   <PropertyGroup>\r
     <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|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
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|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
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>\r
     <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\</OutDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(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)'=='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</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mono-profiler-vtune</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">mono-profiler-vtune</TargetName>\r
-    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mono-profiler-vtune</TargetName>\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
+    <TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\mono\jit;..\mono\eglib\src;..\..\mono\eglib\src;$(ProgramFiles)\Intel\VTune Amplifier XE 2013\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <TargetMachine>MachineX86</TargetMachine>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
-      <AdditionalDependencies>mono-2.0.lib;libgc.lib;eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\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
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
       <FunctionLevelLinking>true</FunctionLevelLinking>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\mono\jit;..\mono\eglib\src;..\..\mono\eglib\src;$(ProgramFiles)\Intel\VTune Amplifier XE 2011\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
     </ClCompile>\r
     <Link>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <EnableCOMDATFolding>true</EnableCOMDATFolding>\r
       <ModuleDefinitionFile>mono-profiler-vtune.def</ModuleDefinitionFile>\r
-      <AdditionalDependencies>mono-2.0.lib;version.lib;libgc.lib;eglib.lib;ws2_32.lib;Psapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
     </Link>\r
+    <ProjectReference>\r
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\mono\jit;..\mono\eglib\src;..\..\mono\eglib\src;$(ProgramFiles)\Intel\VTune Amplifier XE 2013\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>mono-2.0.lib;libgc.lib;eglib.lib;jitprofiling.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;$(ProgramFiles)\Intel\VTune Amplifier XE 2013\lib32;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);eglib.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
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>..\libgc\include;..\;..\mono\;..\mono\jit;..\mono\eglib\src;..\..\mono\eglib\src;$(ProgramFiles)\Intel\VTune Amplifier XE 2011\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <Link>\r
-      <AdditionalDependencies>mono-2.0.lib;version.lib;libgc.lib;eglib.lib;ws2_32.lib;Psapi.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;$(GC_LIB);eglib.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
+      <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
+    </ProjectReference>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\r
     <ClCompile Include="..\mono\profiler\mono-profiler-vtune.c" />\r
   <ItemGroup>\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>\r
+  </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
   <ImportGroup Label="ExtensionTargets">\r
   </ImportGroup>\r
diff --git a/msvc/profiler-vtune.vcxproj.filters b/msvc/profiler-vtune.vcxproj.filters
new file mode 100644 (file)
index 0000000..7b3e25b
--- /dev/null
@@ -0,0 +1,24 @@
+<?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>{b83592a6-eeed-445a-9946-28081f6ca7f6}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{893b7f18-0c7b-4514-8148-39085ecda2f6}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{80c1df13-7968-4ed0-8849-a42648a684e8}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\mono\profiler\mono-profiler-vtune.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <None Include="mono-profiler-vtune.def">\r
+      <Filter>Resource Files</Filter>\r
+    </None>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
diff --git a/msvc/scripts/Commons.Xml.Relaxng.pre b/msvc/scripts/Commons.Xml.Relaxng.pre
new file mode 100644 (file)
index 0000000..55520b7
--- /dev/null
@@ -0,0 +1 @@
+$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.jay > $(ProjectDir)\Commons.Xml.Relaxng.Rnc\RncParser.cs
diff --git a/msvc/scripts/Microsoft.Build.pre b/msvc/scripts/Microsoft.Build.pre
new file mode 100644 (file)
index 0000000..7d981d5
--- /dev/null
@@ -0,0 +1 @@
+$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.jay > $(ProjectDir)\Microsoft.Build.Internal\ExpressionParser.cs
diff --git a/msvc/scripts/RabbitMQ.Client.Apigen.post b/msvc/scripts/RabbitMQ.Client.Apigen.post
new file mode 100644 (file)
index 0000000..675c09b
--- /dev/null
@@ -0,0 +1,6 @@
+@MONO@ RabbitMQ.Client.Apigen.exe /n:v0_9 "/apiName:AMQP_0_9" $(ProjectDir)..\..\docs\specs\amqp0-9.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-9.cs
+@MONO@ RabbitMQ.Client.Apigen.exe /n:v0_8 "/apiName:AMQP_0_8" $(ProjectDir)..\..\docs\specs\amqp0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-0-8.cs
+@MONO@ RabbitMQ.Client.Apigen.exe /n:v0_8qpid "/apiName:AMQP_0_8_QPID" $(ProjectDir)..\..\docs\specs\qpid-amqp.0-8.stripped.xml $(ProjectDir)..\..\docs\specs\net_4_x-api-qpid-0-8.cs
+
+
+
diff --git a/msvc/scripts/System.Web.pre b/msvc/scripts/System.Web.pre
new file mode 100644 (file)
index 0000000..c071bf4
--- /dev/null
@@ -0,0 +1 @@
+@MONO@ $(ProjectDir)\..\lib\net_4_x\culevel.exe -o $(ProjectDir)\System.Web\UplevelHelper.cs $(ProjectDir)\UplevelHelperDefinitions.xml
diff --git a/msvc/scripts/TODO b/msvc/scripts/TODO
deleted file mode 100644 (file)
index da7b5d8..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-Tasks as of February 12th 2011 that are needed:
-
-       Missing nostdlib
-
-       Missing: -codepage:xxx
-
diff --git a/msvc/scripts/TODO.md b/msvc/scripts/TODO.md
new file mode 100644 (file)
index 0000000..4069052
--- /dev/null
@@ -0,0 +1,12 @@
+These are the tasks that are pending in the MSVC scripts to fully roll it out:
+
+[ ] Validate that all generated assemblies are identical
+[ ] Add support for listing CLEAN_FILES in the `csproj` file
+[ ] Adding an "install" target
+[ ] On Windows- have a solution that builds both runtime and libraries all in one
+[ ] Add the other profiles (mobile, iOS, etc)
+[ ] Generate the dependency files
+[ ] Eliminate the need for "build-libs.sh/build-libs.bat" at the toplevel with proper MSBuild idioms
+[ ] Integrate the "update-solution-files" with each build, so we auto-update the files on commits
+[ ] Make it work with MSBuild instead of xbuild
+[x] Design a system for listing resources, so we avoid the ".pre" that runs resgen or copy by hand, because this ruins dependencies.  Alternatively, have @COPY@ be a "Copy if newer"
index 16fab9278c9f10c81333841b7e59a80e61542c83..02ef2e45743d279ddbe795a9c3cb20ce3334647c 100644 (file)
@@ -6,10 +6,13 @@
     <ProductVersion>9.0.30729</ProductVersion>\r
     <SchemaVersion>2.0</SchemaVersion>\r
     <ProjectGuid>@PROJECTGUID@</ProjectGuid>\r
-    <OutputType>Library</OutputType>\r
+    <OutputType>@OUTPUTTYPE@</OutputType>\r
     <NoWarn>@DISABLEDWARNINGS@</NoWarn>\r
     <OutputPath>@OUTPUTDIR@</OutputPath>\r
+    <IntermediateOutputPath>obj-@OUTPUTSUFFIX@</IntermediateOutputPath>\r
+    <GenerateTargetFrameworkAttribute>false</GenerateTargetFrameworkAttribute>\r
     @NOSTDLIB@\r
+    @STARTUPOBJECT@\r
     @NOCONFIG@\r
     @ALLOWUNSAFE@\r
     <AppDesignerFolder>Properties</AppDesignerFolder>\r
index e4276cf6b176ba08a52c2f3da7f6aa6b47fda972..b627e50afd84c80f9660c99d8c511ad554c1c4f0 100644 (file)
@@ -1,3 +1,16 @@
+//
+// Consumes the order.xml file that contains a list of all the assemblies to build
+// and produces a solution and the csproj files for it
+//
+// Currently this hardcodes a set of assemblies to build, the net-4.x series, but 
+// it can be extended to handle the command line tools.
+//
+// KNOWN ISSUES:
+//    * This fails to find matches for "System" and "System.xml" when processing the
+//      RabbitMQ executable, likely, because we do not process executables yet
+//
+//    * Has not been tested in a while with the command line tools
+//
 using System;
 using System.IO;
 using System.Collections.Generic;
@@ -57,11 +70,15 @@ class SlnGenerator {
 
        public void Write (string filename)
        {
+               var fullPath = Path.GetDirectoryName (filename) + "/";
+               
                using (var sln = new StreamWriter (filename)) {
                        sln.WriteLine ();
                        sln.WriteLine (header);
                        foreach (var proj in libraries) {
-                               sln.WriteLine (project_start, proj.library, proj.csProjFilename, proj.projectGuid);
+                               var unixProjFile = proj.csProjFilename.Replace ("\\", "/");
+                               var fullProjPath = Path.GetFullPath (unixProjFile);
+                               sln.WriteLine (project_start, proj.library, MsbuildGenerator.GetRelativePath (fullPath, fullProjPath), proj.projectGuid);
                                sln.WriteLine (project_end);
                        }
                        sln.WriteLine ("Global");
@@ -190,6 +207,7 @@ class MsbuildGenerator {
        StringBuilder defines = new StringBuilder ();
        bool Optimize = true;
        bool want_debugging_support = false;
+       string main = null;
        Dictionary<string, string> embedded_resources = new Dictionary<string, string> ();
        List<string> warning_as_error = new List<string> ();
        List<int> ignore_warning = new List<int> ();
@@ -198,7 +216,7 @@ class MsbuildGenerator {
        List<string> references = new List<string> ();
        List<string> libs = new List<string> ();
        List<string> reference_aliases = new List<string> ();
-       bool showWarnings = false;
+       bool showWarnings = true;
 
        // Currently unused
 #pragma warning disable 0219, 0414
@@ -210,7 +228,7 @@ class MsbuildGenerator {
        string win32IconFile;
        string StrongNameKeyFile;
        bool copyLocal = true;
-       Target Target = Target.Exe;
+       Target Target = Target.Library;
        string TargetExt = ".exe";
        string OutputFile;
        string StrongNameKeyContainer;
@@ -373,6 +391,9 @@ class MsbuildGenerator {
                                return true;
                        }
                case "/main":
+                       main = value;
+                       return true;
+
                case "/m":
                case "/addmodule":
                case "/win32res":
@@ -540,6 +561,9 @@ class MsbuildGenerator {
                        CodePage = value;
                        return true;
 
+               case "/publicsign":
+                       return true;
+                       
                case "/-getresourcestrings":
                        return true;
                }
@@ -630,19 +654,29 @@ class MsbuildGenerator {
 
        public VsCsproj Csproj;
 
-       public VsCsproj Generate (Dictionary<string,MsbuildGenerator> projects, bool showWarnings = false)
+       void AppendResource (StringBuilder resources, string source, string logical)
+       {
+               resources.AppendFormat ("    <EmbeddedResource Include=\"{0}\">" + NewLine, source);
+               resources.AppendFormat ("      <LogicalName>{0}</LogicalName>" + NewLine, logical);
+               resources.AppendFormat ("    </EmbeddedResource>" + NewLine);
+       }
+       
+       public VsCsproj Generate (string library_output, Dictionary<string,MsbuildGenerator> projects, bool showWarnings = false)
        {
                var generatedProjFile = NativeName (Csproj.csProjFilename);
                //Console.WriteLine ("Generating: {0}", generatedProjFile);
 
-               string boot, flags, output_name, built_sources, response, profile;
+               string boot, flags, output_name, built_sources, response, profile, reskey;
 
                boot = xproject.Element ("boot").Value;
                flags = xproject.Element ("flags").Value;
                output_name = xproject.Element ("output").Value;
+               if (output_name.EndsWith (".exe"))
+                       Target = Target.Exe;
                built_sources = xproject.Element ("built_sources").Value;
                response = xproject.Element ("response").Value;
-               //if (library.EndsWith("-build")) fx_version = "2.0"; // otherwise problem if .NET4.5 is installed, seems. (https://github.com/nikhilk/scriptsharp/issues/156)
+               reskey = xproject.Element ("resources").Value;
+
                profile = xproject.Element ("profile").Value;
                if (string.IsNullOrEmpty (response)) {
                        // Address the issue where entries are missing the fx_version
@@ -670,29 +704,10 @@ class MsbuildGenerator {
                }
                //
                // Prebuild code, might be in inputs, check:
-               //  inputs/LIBRARY-PROFILE.pre
                //  inputs/LIBRARY.pre
                //
-               string prebuild = Load (library + ".pre");
-               string prebuild_windows, prebuild_unix;
-               
-               int q = library.IndexOf ("-");
-               if (q != -1)
-                       prebuild = prebuild + Load (library.Substring (0, q) + ".pre");
-
-               if (prebuild.IndexOf ("@MONO@") != -1){
-                       prebuild_unix = prebuild.Replace ("@MONO@", "mono").Replace ("@CAT@", "cat");
-                       prebuild_windows = prebuild.Replace ("@MONO@", "").Replace ("@CAT@", "type");
-               } else {
-                       prebuild_unix = prebuild.Replace ("jay.exe", "jay");
-                       prebuild_windows = prebuild;
-               }
-               
-               const string condition_unix    = "Condition=\" '$(OS)' != 'Windows_NT' \"";
-               const string condition_windows = "Condition=\" '$(OS)' == 'Windows_NT' \"";
-               prebuild =
-                       "    <PreBuildEvent " + condition_unix + ">" + NewLine + prebuild_unix + NewLine + "    </PreBuildEvent>" + NewLine +
-                       "    <PreBuildEvent " + condition_windows + ">" + NewLine + prebuild_windows + NewLine + "    </PreBuildEvent>" + NewLine;
+               string prebuild = GenerateStep (library, ".pre", "PreBuildEvent");
+               string postbuild = GenerateStep (library, ".post", "PostBuildEvent");
 
                var all_args = new Queue<string []> ();
                all_args.Enqueue (flags.Split ());
@@ -710,7 +725,7 @@ class MsbuildGenerator {
                                        var resp_file_full = Path.Combine (base_dir, response_file);
                                        extra_args = LoadArgs (resp_file_full);
                                        if (extra_args == null) {
-                                               Console.WriteLine ("Unable to open response file: " + resp_file_full);
+                                               Console.WriteLine ($"{library_output}: Unable to open response file: {resp_file_full}");
                                                Environment.Exit (1);
                                        }
 
@@ -720,13 +735,12 @@ class MsbuildGenerator {
 
                                if (CSCParseOption (f [i], ref f))
                                        continue;
-                               Console.WriteLine ("Failure with {0}", f [i]);
+                               Console.WriteLine ("{library_output}: Failure with {0}", f [i]);
                                Environment.Exit (1);
                        }
                }
 
                string [] source_files;
-               //Console.WriteLine ("Base: {0} res: {1}", base_dir, response);
                using (var reader = new StreamReader (NativeName (base_dir + "\\" + response))) {
                        source_files = reader.ReadToEnd ().Split ();
                }
@@ -782,17 +796,45 @@ class MsbuildGenerator {
                        refs.Append (string.Format ("    <Reference Include=\"{0}\" />" + NewLine, nunitLibPath));
                }
 
+               //
+               // Generate resource referenced from the command line
+               //
                var resources = new StringBuilder ();
                if (embedded_resources.Count > 0) {
-                       resources.AppendFormat ("  <ItemGroup>" + NewLine);
                        foreach (var dk in embedded_resources) {
-                               resources.AppendFormat ("    <EmbeddedResource Include=\"{0}\">" + NewLine, dk.Key);
-                               resources.AppendFormat ("      <LogicalName>{0}</LogicalName>" + NewLine, dk.Value);
-                               resources.AppendFormat ("    </EmbeddedResource>" + NewLine);
+                               var source = dk.Key;
+                               if (source.EndsWith (".resources"))
+                                       source = source.Replace (".resources", ".resx");
+                               
+                               // try to find a pre-built resource, and use that instead of trying to build it
+                               if (source.EndsWith (".resx")) {
+                                       var probe_prebuilt = Path.Combine (base_dir, source.Replace (".resx", ".resources.prebuilt"));
+                                       if (File.Exists (probe_prebuilt)) {
+                                               
+                                               source = GetRelativePath (base_dir + "/", probe_prebuilt);
+                                       }
+                               }
+                               AppendResource (resources, source, dk.Value);
+                       }
+               }
+               //
+               // Generate resources that were part of the explicit <resource> node
+               //
+               if (reskey != null && reskey != ""){
+                       var pairs = reskey.Split (' ', '\n', '\t');
+                       foreach (var pair in pairs){
+                               var p = pair.IndexOf (",");
+                               if (p == -1){
+                                       Console.Error.WriteLine ($"Found a resource without a filename: {pairs} for {Csproj.csProjFilename}");
+                                       Environment.Exit (1);
+                               }
+                               AppendResource (resources, pair.Substring (p+1), pair.Substring (0, p) + ".resources");
                        }
+               }
+               if (resources.Length > 0){
+                       resources.Insert (0, "  <ItemGroup>" + NewLine);
                        resources.AppendFormat ("  </ItemGroup>" + NewLine);
                }
-       
 
                if (references.Count > 0 || reference_aliases.Count > 0) {
                        // -r:mscorlib.dll -r:System.dll
@@ -805,18 +847,19 @@ class MsbuildGenerator {
                        //  <Name>System-basic</Name>
                        //</ProjectReference>
                        var refdistinct = references.Distinct ();
-                       foreach (string r in refdistinct) {
-                               var match = GetMatchingCsproj (Path.GetFileName (r), projects);
+                       foreach (string reference in refdistinct) {
+                               
+                               var match = GetMatchingCsproj (library_output, reference, projects);
                                if (match != null) {
-                                       AddProjectReference (refs, Csproj, match, r, null);
+                                       AddProjectReference (refs, Csproj, match, reference, null);
                                } else {
                                        if (showWarnings){
-                                               Console.WriteLine ("{0}: Could not find a matching project reference for {1}", library, Path.GetFileName (r));
+                                               Console.WriteLine ("{0}: Could not find a matching project reference for {1}", library, Path.GetFileName (reference));
                                                Console.WriteLine ("  --> Adding reference with hintpath instead");
                                        }
-                                       refs.Append ("    <Reference Include=\"" + r + "\">" + NewLine);
+                                       refs.Append ("    <Reference Include=\"" + reference + "\">" + NewLine);
                                        refs.Append ("      <SpecificVersion>False</SpecificVersion>" + NewLine);
-                                       refs.Append ("      <HintPath>" + r + "</HintPath>" + NewLine);
+                                       refs.Append ("      <HintPath>" + reference + "</HintPath>" + NewLine);
                                        refs.Append ("      <Private>False</Private>" + NewLine);
                                        refs.Append ("    </Reference>" + NewLine);
                                }
@@ -826,7 +869,7 @@ class MsbuildGenerator {
                                int index = r.IndexOf ('=');
                                string alias = r.Substring (0, index);
                                string assembly = r.Substring (index + 1);
-                               var match = GetMatchingCsproj (assembly, projects, explicitPath: true);
+                               var match = GetMatchingCsproj (library_output, assembly, projects, explicitPath: true);
                                if (match != null) {
                                        AddProjectReference (refs, Csproj, match, r, alias);
                                } else {
@@ -850,15 +893,6 @@ class MsbuildGenerator {
                        build_output_dir = Path.GetDirectoryName (LibraryOutput);
                else
                        build_output_dir = "bin\\Debug\\" + library;
-               
-
-               string postbuild_unix = string.Empty;
-               string postbuild_windows = string.Empty;
-
-               var postbuild =  
-                       "    <PostBuildEvent " + condition_unix + ">" + NewLine + postbuild_unix + NewLine + "    </PostBuildEvent>" + NewLine +
-                       "    <PostBuildEvent " + condition_windows + ">" + NewLine + postbuild_windows + NewLine + "    </PostBuildEvent>";
-                       
 
                bool basic_or_build = (library.Contains ("-basic") || library.Contains ("-build"));
 
@@ -878,6 +912,7 @@ class MsbuildGenerator {
                                "  </PropertyGroup>", StrongNameKeyFile, StrongNameDelaySign ? "    <DelaySign>true</DelaySign>" + NewLine : "");
                }
                Csproj.output = template.
+                       Replace ("@OUTPUTTYPE@", Target == Target.Library ? "Library" : "Exe").
                        Replace ("@SIGNATURE@", strongNameSection).
                        Replace ("@PROJECTGUID@", Csproj.projectGuid).
                        Replace ("@DEFINES@", defines.ToString ()).
@@ -889,12 +924,14 @@ class MsbuildGenerator {
                        Replace ("@FX_VERSION", fx_version).
                        Replace ("@ASSEMBLYNAME@", Path.GetFileNameWithoutExtension (output_name)).
                        Replace ("@OUTPUTDIR@", build_output_dir).
+                       Replace ("@OUTPUTSUFFIX@", Path.GetFileName (build_output_dir)).
                        Replace ("@DEFINECONSTANTS@", defines.ToString ()).
                        Replace ("@DEBUG@", want_debugging_support ? "true" : "false").
                        Replace ("@DEBUGTYPE@", want_debugging_support ? "full" : "pdbonly").
                        Replace ("@REFERENCES@", refs.ToString ()).
                        Replace ("@PREBUILD@", prebuild).
                        Replace ("@POSTBUILD@", postbuild).
+                       Replace ("@STARTUPOBJECT@", main == null ? "" : $"<StartupObject>{main}</StartupObject>").
                        //Replace ("@ADDITIONALLIBPATHS@", String.Format ("<AdditionalLibPaths>{0}</AdditionalLibPaths>", string.Join (",", libs.ToArray ()))).
                        Replace ("@ADDITIONALLIBPATHS@", String.Empty).
                        Replace ("@RESOURCES@", resources.ToString ()).
@@ -909,6 +946,34 @@ class MsbuildGenerator {
                return Csproj;
        }
 
+       string GenerateStep (string library, string suffix, string eventKey)
+       {
+               string target = Load (library + suffix);
+               string target_windows, target_unix;
+
+               int q = library.IndexOf ("-");
+               if (q != -1)
+                       target = target + Load (library.Substring (0, q) + suffix);
+
+               if (target.IndexOf ("@MONO@") != -1){
+                       target_unix = target.Replace ("@MONO@", "mono").Replace ("@CAT@", "cat");
+                       target_windows = target.Replace ("@MONO@", "").Replace ("@CAT@", "type");
+               } else {
+                       target_unix = target.Replace ("jay.exe", "jay");
+                       target_windows = target;
+               }
+               target_unix = target_unix.Replace ("@COPY@", "cp");
+               target_windows = target_unix.Replace ("@COPY@", "copy");
+
+               target_unix = target_unix.Replace ("\r", "");
+               const string condition_unix    = "Condition=\" '$(OS)' != 'Windows_NT' \"";
+               const string condition_windows = "Condition=\" '$(OS)' == 'Windows_NT' \"";
+               var result =
+                       $"    <{eventKey} {condition_unix}>\n{target_unix}\n    </{eventKey}>{NewLine}" +
+                       $"    <{eventKey} {condition_windows}>{NewLine}{target_windows}{NewLine}    </{eventKey}>";
+               return result;
+       }
+       
        void AddProjectReference (StringBuilder refs, VsCsproj result, MsbuildGenerator match, string r, string alias)
        {
                refs.AppendFormat ("    <ProjectReference Include=\"{0}\">{1}", GetRelativePath (result.csProjFilename, match.CsprojFilename), NewLine);
@@ -932,35 +997,41 @@ class MsbuildGenerator {
                return ret;
        }
 
-       MsbuildGenerator GetMatchingCsproj (string dllReferenceName, Dictionary<string,MsbuildGenerator> projects, bool explicitPath = false)
+       MsbuildGenerator GetMatchingCsproj (string library_output, string dllReferenceName, Dictionary<string,MsbuildGenerator> projects, bool explicitPath = false)
        {
                // libDir would be "./../../class/lib/net_4_x for example
                // project 
-               if (!dllReferenceName.EndsWith (".dll"))
+               if (!dllReferenceName.EndsWith (".dll") && !dllReferenceName.EndsWith (".exe"))
                        dllReferenceName += ".dll";
 
-               if (explicitPath){
-                       var probe = Path.GetFullPath (Path.Combine (base_dir, dllReferenceName));
-                       foreach (var project in projects){
-                               if (probe == project.Value.AbsoluteLibraryOutput)
-                                       return project.Value;
-                       }
-               } 
+               var probe = Path.GetFullPath (Path.Combine (base_dir, dllReferenceName));
+               foreach (var project in projects){
+                       if (probe == project.Value.AbsoluteLibraryOutput)
+                               return project.Value;
+               }
 
                // not explicit, search for the library in the lib path order specified
 
                foreach (var libDir in libs) {
                        var abs = Path.GetFullPath (Path.Combine (base_dir, libDir));
                        foreach (var project in projects){
-                               var probe = Path.Combine (abs, dllReferenceName);
+                               probe = Path.Combine (abs, dllReferenceName);
 
                                if (probe == project.Value.AbsoluteLibraryOutput)
                                        return project.Value;
                        }
                }
-               Console.WriteLine ("Did not find referenced {0} with libs={1}", dllReferenceName, String.Join (", ", libs));
+
+               // Last attempt, try to find the library in all the projects
+               foreach (var project in projects) {
+                       if (project.Value.AbsoluteLibraryOutput.EndsWith (dllReferenceName))
+                               return project.Value;
+
+               }
+               var ljoined = String.Join (", ", libs);
+               Console.WriteLine ($"{library_output}: did not find referenced {dllReferenceName} with libs={ljoined}");
                foreach (var p in projects) {
-                       Console.WriteLine ("    => {0}", p.Value.AbsoluteLibraryOutput);
+                       Console.WriteLine ("{0}", p.Value.AbsoluteLibraryOutput);
                }
                return null;
        }
@@ -977,12 +1048,13 @@ public class Driver {
                        string library = project.Attribute ("library").Value;
                        var profile = project.Element ("profile").Value;
 
+#if false
                        // Skip facades for now, the tool doesn't know how to deal with them yet.
                        if (dir.Contains ("Facades"))
                                continue;
 
                        // These are currently broken, skip until they're fixed.
-                       if (dir.StartsWith ("mcs") || dir.Contains ("Microsoft.Web.Infrastructure"))
+                       if (dir.StartsWith ("mcs") || dir.Contains ("apigen"))
                                continue;
 
                        //
@@ -996,7 +1068,7 @@ public class Driver {
                                        yield return project;
                                continue;
                        }
-                       
+#endif
                        //
                        // Do not do 2.1, it is not working yet
                        // Do not do basic, as there is no point (requires a system mcs to be installed).
@@ -1007,9 +1079,17 @@ public class Driver {
                        // The next ones are to make debugging easier for now
                        if (profile == "basic")
                                continue;
-                       if (profile != "net_4_x" || library.Contains ("tests"))
-                               continue;
 
+                       // For now -- problem is, our resolver currently only considers the assembly name, and we ahve
+                       // conflicing 2.0 and 2.4 versions so for now, we just skip the nunit20 versions
+                       if (dir.Contains ("nunit20"))
+                               continue;
+                       
+#if true
+                       if (profile != "net_4_x" || library.Contains ("tests")) 
+                               continue;
+#endif
+                       //Console.WriteLine ("Going to handle {0}", library);
                        yield return project;
                }
        }
@@ -1051,9 +1131,10 @@ public class Driver {
                }
                foreach (var project in GetProjects (makefileDeps)){
                        var library_output = project.Element ("library_output").Value;
+                       //Console.WriteLine ("=== {0} ===", library_output);
                        var gen = projects [library_output];
                        try {
-                               var csproj = gen.Generate (projects);
+                               var csproj = gen.Generate (library_output, projects);
                                var csprojFilename = csproj.csProjFilename;
                                if (!sln_gen.ContainsProjectIdentifier (csproj.library)) {
                                        sln_gen.Add (csproj);
@@ -1071,14 +1152,16 @@ public class Driver {
 
                FillSolution (four_five_sln_gen, MsbuildGenerator.profile_4_x, projects.Values, additionalFilter);
 
-               var sb = new StringBuilder ();
-               sb.AppendLine ("WARNING: Skipped some project references, apparent duplicates in order.xml:");
-               foreach (var item in duplicates) {
-                       sb.AppendLine (item);
+               if (duplicates.Count () > 0) {
+                       var sb = new StringBuilder ();
+                       sb.AppendLine ("WARNING: Skipped some project references, apparent duplicates in order.xml:");
+                       foreach (var item in duplicates) {
+                               sb.AppendLine (item);
+                       }
+                       Console.WriteLine (sb.ToString ());
                }
-               Console.WriteLine (sb.ToString ());
 
-               WriteSolution (four_five_sln_gen, MakeSolutionName (MsbuildGenerator.profile_4_x));
+               WriteSolution (four_five_sln_gen, Path.Combine ("..", "..", MakeSolutionName (MsbuildGenerator.profile_4_x)));
 
                if (makefileDeps){
                        const string classDirPrefix = "./../../";
@@ -1102,7 +1185,7 @@ public class Driver {
                
                // A few other optional solutions
                // Solutions with 'everything' and the most common libraries used in development may be of interest
-               //WriteSolution (sln_gen, "mcs_full.sln");
+               //WriteSolution (sln_gen, "./mcs_full.sln");
                //WriteSolution (small_full_sln_gen, "small_full.sln");
                // The following may be useful if lacking visual studio or MonoDevelop, to bootstrap mono compiler self-hosting
                //WriteSolution (basic_sln_gen, "mcs_basic.sln");
diff --git a/msvc/scripts/ilasm.pre b/msvc/scripts/ilasm.pre
new file mode 100644 (file)
index 0000000..fec25b7
--- /dev/null
@@ -0,0 +1,2 @@
+$(ProjectDir)\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\parser\ILParser.jay > $(ProjectDir)\ILParser.cs
+
index 0c19d3a7dc627f5bc4ff09e30aafa38670e73ff7..2126ebd7731d83ee32adb2f8868648e4874e7468 100644 (file)
@@ -1 +1,2 @@
 $(ProjectDir)\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\jay\skeleton.cs $(ProjectDir)\cs-parser.jay > $(ProjectDir)\cs-parser.cs\r
+\r
diff --git a/msvc/scripts/monodoc.pre b/msvc/scripts/monodoc.pre
new file mode 100644 (file)
index 0000000..f1b34e1
--- /dev/null
@@ -0,0 +1,2 @@
+$(ProjectDir)\..\..\jay\jay.exe -ct &lt; $(ProjectDir)\..\..\jay\skeleton.cs $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.jay > $(ProjectDir)\Monodoc.Ecma\EcmaUrlParser.cs
+
diff --git a/msvc/scripts/net_4_x.sln b/msvc/scripts/net_4_x.sln
deleted file mode 100644 (file)
index 71b8bfc..0000000
+++ /dev/null
@@ -1,884 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00\r
-# Visual Studio 2012
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "corlib-net_4_x", "..\..\mcs\class/corlib\corlib-net_4_x.csproj", "{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-net_4_x", "..\..\mcs\class/System\System-net_4_x.csproj", "{2762E921-91A8-4C87-91E9-BA628013F753}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Configuration-net_4_x", "..\..\mcs\class/System.Configuration\System.Configuration-net_4_x.csproj", "{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-secxml-net_4_x", "..\..\mcs\class/System\System-secxml-net_4_x.csproj", "{19954F80-065E-4D46-8FEF-62BA4D6CFDAD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml-bare-net_4_x", "..\..\mcs\class/System.XML\System.Xml-bare-net_4_x.csproj", "{A5216031-11A3-44DD-B2FF-A14AE63BD0C3}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-bare-net_4_x", "..\..\mcs\class/System\System-bare-net_4_x.csproj", "{483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security-net_4_x", "..\..\mcs\class/Mono.Security\Mono.Security-net_4_x.csproj", "{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Security-net_4_x", "..\..\mcs\class/System.Security\System.Security-net_4_x.csproj", "{3ED36717-A9D1-4289-8949-9B7F39766DEB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml-net_4_x", "..\..\mcs\class/System.XML\System.Xml-net_4_x.csproj", "{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CompilerServices.SymbolWriter-net_4_x", "..\..\mcs\class/Mono.CompilerServices.SymbolWriter\Mono.CompilerServices.SymbolWriter-net_4_x.csproj", "{88177C4B-894F-485D-B95A-44199C06BE9F}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Posix-net_4_x", "..\..\mcs\class/Mono.Posix\Mono.Posix-net_4_x.csproj", "{66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Core-net_4_x", "..\..\mcs\class/System.Core\System.Core-net_4_x.csproj", "{359142A1-D80F-401E-AA64-7167C9317649}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Core-plaincore-net_4_x", "..\..\mcs\class/System.Core\System.Core-plaincore-net_4_x.csproj", "{1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IO.Compression-net_4_x", "..\..\mcs\class/System.IO.Compression\System.IO.Compression-net_4_x.csproj", "{6187D26C-54C8-4298-829E-A99B0E6036B1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IO.Compression.FileSystem-net_4_x", "..\..\mcs\class/System.IO.Compression.FileSystem\System.IO.Compression.FileSystem-net_4_x.csproj", "{9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Drawing-net_4_x", "..\..\mcs\class/System.Drawing\System.Drawing-net_4_x.csproj", "{584A5E46-2958-4CB2-8DF9-188B420D0BB0}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Transactions-net_4_x", "..\..\mcs\class/System.Transactions\System.Transactions-net_4_x.csproj", "{3821C69F-220D-4231-992C-0FE05311A005}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.EnterpriseServices-net_4_x", "..\..\mcs\class/System.EnterpriseServices\System.EnterpriseServices-net_4_x.csproj", "{61E3D008-E273-4E12-860A-8ADA031098C2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Data.Tds-net_4_x", "..\..\mcs\class/Mono.Data.Tds\Mono.Data.Tds-net_4_x.csproj", "{39F59AE4-1381-4275-B14E-16D786F40B93}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Numerics-net_4_x", "..\..\mcs\class/System.Numerics\System.Numerics-net_4_x.csproj", "{BD2FFDDC-BD89-4041-82F5-A696C941C7BE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Numerics.Vectors-net_4_x", "..\..\mcs\class/System.Numerics.Vectors\System.Numerics.Vectors-net_4_x.csproj", "{B05362C2-C85F-43A5-93D7-49A45892438D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data-net_4_x", "..\..\mcs\class/System.Data\System.Data-net_4_x.csproj", "{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ComponentModel.DataAnnotations-net_4_x", "..\..\mcs\class/System.ComponentModel.DataAnnotations\System.ComponentModel.DataAnnotations-net_4_x.csproj", "{8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Accessibility-net_4_x", "..\..\mcs\class/Accessibility\Accessibility-net_4_x.csproj", "{E51283DC-7090-479E-B723-01C0953F18EA}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.WebBrowser-net_4_x", "..\..\mcs\class/Mono.WebBrowser\Mono.WebBrowser-net_4_x.csproj", "{B6DD737B-421C-4201-A852-8022328FE59D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Serialization.Formatters.Soap-net_4_x", "..\..\mcs\class/System.Runtime.Serialization.Formatters.Soap\System.Runtime.Serialization.Formatters.Soap-net_4_x.csproj", "{A157AD69-59D4-49DE-94B3-DB883B2BEAA5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows.Forms-net_4_x", "..\..\mcs\class/System.Windows.Forms\System.Windows.Forms-net_4_x.csproj", "{108227C7-8ED9-4483-949D-07BF0DA1A201}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Data.Sqlite-net_4_x", "..\..\mcs\class/Mono.Data.Sqlite\Mono.Data.Sqlite-net_4_x.csproj", "{371560EA-7BD3-4025-90CB-F1B112403CF2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.ApplicationServices-net_4_x", "..\..\mcs\class/System.Web.ApplicationServices\System.Web.ApplicationServices-net_4_x.csproj", "{928432BE-3518-4103-97F6-48B9658588A6}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Novell.Directory.Ldap-net_4_x", "..\..\mcs\class/Novell.Directory.Ldap\Novell.Directory.Ldap-net_4_x.csproj", "{B424FF7F-8F49-45F5-BFD5-6319F818816F}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.DirectoryServices-net_4_x", "..\..\mcs\class/System.DirectoryServices\System.DirectoryServices-net_4_x.csproj", "{CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web-net_4_x", "..\..\mcs\class/System.Web\System.Web-net_4_x.csproj", "{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Services-net_4_x", "..\..\mcs\class/System.Web.Services\System.Web.Services-net_4_x.csproj", "{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web-plainweb-net_4_x", "..\..\mcs\class/System.Web\System.Web-plainweb-net_4_x.csproj", "{DE51B021-D51C-4F26-99EE-B0729D97631E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Design-net_4_x", "..\..\mcs\class/System.Design\System.Design-net_4_x.csproj", "{EFEDC380-2CB0-4B40-9566-D2302867A4D9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Remoting-net_4_x", "..\..\mcs\class/System.Runtime.Remoting\System.Runtime.Remoting-net_4_x.csproj", "{F19F77AE-1A81-4676-BAB8-6C1DA243A961}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Configuration.Install-net_4_x", "..\..\mcs\class/System.Configuration.Install\System.Configuration.Install-net_4_x.csproj", "{B144ACD4-089D-4769-8605-583FBEDB5B7C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Management-net_4_x", "..\..\mcs\class/System.Management\System.Management-net_4_x.csproj", "{A81C8BB6-5799-49BC-849A-CB422D3F8DB9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.OracleClient-net_4_x", "..\..\mcs\class/System.Data.OracleClient\System.Data.OracleClient-net_4_x.csproj", "{0029417C-ED54-4162-8D8C-D935C760D89D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cscompmgd-net_4_x", "..\..\mcs\class/Cscompmgd\Cscompmgd-net_4_x.csproj", "{2AB43CEE-0BE1-46EF-971E-3678330BEA13}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Commons.Xml.Relaxng-net_4_x", "..\..\mcs\class/Commons.Xml.Relaxng\Commons.Xml.Relaxng-net_4_x.csproj", "{FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Messaging-net_4_x", "..\..\mcs\class/Mono.Messaging\Mono.Messaging-net_4_x.csproj", "{F89761CF-5915-45E5-8C9C-E4F883EC5FA5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Messaging-net_4_x", "..\..\mcs\class/System.Messaging\System.Messaging-net_4_x.csproj", "{4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceProcess-net_4_x", "..\..\mcs\class/System.ServiceProcess\System.ServiceProcess-net_4_x.csproj", "{CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Drawing.Design-net_4_x", "..\..\mcs\class/System.Drawing.Design\System.Drawing.Design-net_4_x.csproj", "{BAC9BBAE-661E-4B6E-97BC-4045D34E887E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpZipLib-net_4_x", "..\..\mcs\class/ICSharpCode.SharpZipLib\ICSharpCode.SharpZipLib-net_4_x.csproj", "{4903F98F-B4C9-467A-8FBA-39E7F91D9327}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IBM.Data.DB2-net_4_x", "..\..\mcs\class/IBM.Data.DB2\IBM.Data.DB2-net_4_x.csproj", "{83DC05C9-3C7E-44D9-8D56-5619CF832BC5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomMarshalers-net_4_x", "..\..\mcs\class/CustomMarshalers\CustomMarshalers-net_4_x.csproj", "{6D021ADB-0407-42C9-9CC9-6613D94C61AE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemWebTestShim-net_4_x", "..\..\mcs\class/SystemWebTestShim\SystemWebTestShim-net_4_x.csproj", "{F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Internals-net_4_x", "..\..\mcs\class/System.ServiceModel.Internals\System.ServiceModel.Internals-net_4_x.csproj", "{5769B536-7E8E-4C2A-8671-6B256D0F620B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SMDiagnostics-net_4_x", "..\..\mcs\class/SMDiagnostics\SMDiagnostics-net_4_x.csproj", "{8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Serialization-net_4_x", "..\..\mcs\class/System.Runtime.Serialization\System.Runtime.Serialization-net_4_x.csproj", "{D845AD9D-3CCB-49CB-9543-028678E94938}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml.Linq-net_4_x", "..\..\mcs\class/System.Xml.Linq\System.Xml.Linq-net_4_x.csproj", "{526286D5-38D9-4579-B001-471440D57752}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Linq-net_4_x", "..\..\mcs\class/System.Data.Linq\System.Data.Linq-net_4_x.csproj", "{E6EE9E9A-42BA-4202-8813-FCF40E9061BF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Abstractions-net_4_x", "..\..\mcs\class/System.Web.Abstractions\System.Web.Abstractions-net_4_x.csproj", "{79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Routing-net_4_x", "..\..\mcs\class/System.Web.Routing\System.Web.Routing-net_4_x.csproj", "{EBD67AE3-F249-4768-A143-6B2F9E56BC39}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.DurableInstancing-net_4_x", "..\..\mcs\class/System.Runtime.DurableInstancing\System.Runtime.DurableInstancing-net_4_x.csproj", "{67822258-3D1E-449F-ACDD-BE1918B44458}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IdentityModel-net_4_x", "..\..\mcs\class/System.IdentityModel\System.IdentityModel-net_4_x.csproj", "{FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IdentityModel.Selectors-net_4_x", "..\..\mcs\class/System.IdentityModel.Selectors\System.IdentityModel.Selectors-net_4_x.csproj", "{BBA32980-B28C-476D-AEB0-892F1B1DFB5E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel-net_4_x", "..\..\mcs\class/System.ServiceModel\System.ServiceModel-net_4_x.csproj", "{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Activation-net_4_x", "..\..\mcs\class/System.ServiceModel.Activation\System.ServiceModel.Activation-net_4_x.csproj", "{7A23227C-591B-4F80-9D62-4D0271073D82}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel-plainservice-net_4_x", "..\..\mcs\class/System.ServiceModel\System.ServiceModel-plainservice-net_4_x.csproj", "{88C258E1-F0AF-47DA-96C8-7FA6421067CD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Extensions-net_4_x", "..\..\mcs\class/System.Web.Extensions\System.Web.Extensions-net_4_x.csproj", "{EE582CE1-A692-47AC-B838-3A78955898BE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Extensions.Design-net_4_x", "..\..\mcs\class/System.Web.Extensions.Design\System.Web.Extensions.Design-net_4_x.csproj", "{288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.DynamicData-net_4_x", "..\..\mcs\class/System.Web.DynamicData\System.Web.DynamicData-net_4_x.csproj", "{E5E3F230-57CA-4685-B1C4-A164F0876755}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CSharp-net_4_x", "..\..\mcs\class/Mono.CSharp\Mono.CSharp-net_4_x.csproj", "{BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net-net_4_x", "..\..\mcs\class/System.Net\System.Net-net_4_x.csproj", "{A455F1BB-6273-4BAE-985C-563BED11D529}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Json-net_4_x", "..\..\mcs\class/System.Json\System.Json-net_4_x.csproj", "{D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.CSharp-net_4_x", "..\..\mcs\class/Microsoft.CSharp\Microsoft.CSharp-net_4_x.csproj", "{DABF9F75-63AD-4991-9D2B-9234E7032B32}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xaml-net_4_x", "..\..\mcs\class/System.Xaml\System.Xaml-net_4_x.csproj", "{4E79FA59-8344-4053-8E3B-B9619BA26513}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsBase-net_4_x", "..\..\mcs\class/WindowsBase\WindowsBase-net_4_x.csproj", "{A8F39368-ECD9-41A5-A562-CC7C82B3CC86}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Routing-net_4_x", "..\..\mcs\class/System.ServiceModel.Routing\System.ServiceModel.Routing-net_4_x.csproj", "{55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Discovery-net_4_x", "..\..\mcs\class/System.ServiceModel.Discovery\System.ServiceModel.Discovery-net_4_x.csproj", "{2D03C898-0B45-4CAA-A333-B2463B81C37B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Caching-net_4_x", "..\..\mcs\class/System.Runtime.Caching\System.Runtime.Caching-net_4_x.csproj", "{2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Web-net_4_x", "..\..\mcs\class/System.ServiceModel.Web\System.ServiceModel.Web-net_4_x.csproj", "{54F4FA23-5AF3-4312-9294-3DB109F644CC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http-net_4_x", "..\..\mcs\class/System.Net.Http\System.Net.Http-net_4_x.csproj", "{F1636C0A-FC68-4362-918F-9CCC789FED13}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http.WebRequest-net_4_x", "..\..\mcs\class/System.Net.Http.WebRequest\System.Net.Http.WebRequest-net_4_x.csproj", "{A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Razor-net_4_x", "..\..\mcs\class/System.Web.Razor\System.Web.Razor-net_4_x.csproj", "{11928A85-4C26-4258-AC86-2AFB0A69DED2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages.Deployment-net_4_x", "..\..\mcs\class/System.Web.WebPages.Deployment\System.Web.WebPages.Deployment-net_4_x.csproj", "{12C344E9-64D1-4F94-BAB6-1231B863EE6C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages-net_4_x", "..\..\mcs\class/System.Web.WebPages\System.Web.WebPages-net_4_x.csproj", "{D4EAC129-92AB-432C-941D-4B8481097060}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages.Razor-net_4_x", "..\..\mcs\class/System.Web.WebPages.Razor\System.Web.WebPages.Razor-net_4_x.csproj", "{55F0BCD6-4B0B-408C-BE98-4BFF82157048}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Mvc3-net_4_x", "..\..\mcs\class/System.Web.Mvc3\System.Web.Mvc3-net_4_x.csproj", "{14D0E9AA-AF30-4E40-983F-8BE66423E6AF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http.Formatting-net_4_x", "..\..\mcs\class/System.Net.Http.Formatting\System.Net.Http.Formatting-net_4_x.csproj", "{5883D056-B748-4D13-A7E3-2D2756CDC6BC}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http-net_4_x", "..\..\mcs\class/System.Web.Http\System.Web.Http-net_4_x.csproj", "{6DDAE502-A602-410C-B182-C18D5100DDB0}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http.SelfHost-net_4_x", "..\..\mcs\class/System.Web.Http.SelfHost\System.Web.Http.SelfHost-net_4_x.csproj", "{0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http.WebHost-net_4_x", "..\..\mcs\class/System.Web.Http.WebHost\System.Web.Http.WebHost-net_4_x.csproj", "{2AF7E697-07BA-439E-89BF-076AEE4AE04C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.NewSystemSource-net_4_x", "..\..\mcs\class/Mono.Security.Providers.NewSystemSource\Mono.Security.Providers.NewSystemSource-net_4_x.csproj", "{0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.NewTls-net_4_x", "..\..\mcs\class/Mono.Security.Providers.NewTls\Mono.Security.Providers.NewTls-net_4_x.csproj", "{C8B8E524-BB3A-44E2-8C22-E3313E9F477C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Framework-net_4_x", "..\..\mcs\class/Microsoft.Build.Framework\Microsoft.Build.Framework-net_4_x.csproj", "{5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Utilities-net_4_x", "..\..\mcs\class/Microsoft.Build.Utilities\Microsoft.Build.Utilities-net_4_x.csproj", "{8E5728E0-CEAF-431F-963E-EB1DEE15C506}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Engine-net_4_x", "..\..\mcs\class/Microsoft.Build.Engine\Microsoft.Build.Engine-net_4_x.csproj", "{75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.XBuild.Tasks-net_4_x", "..\..\mcs\class/Mono.XBuild.Tasks\Mono.XBuild.Tasks-net_4_x.csproj", "{3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Tasks-net_4_x", "..\..\mcs\class/Microsoft.Build.Tasks\Microsoft.Build.Tasks-net_4_x.csproj", "{979FCA08-E170-4BA6-969B-30213135BEA3}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build-net_4_x", "..\..\mcs\class/Microsoft.Build\Microsoft.Build-net_4_x.csproj", "{124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PEAPI-net_4_x", "..\..\mcs\class/PEAPI\PEAPI-net_4_x.csproj", "{34443C71-09F1-4F21-ABB4-82822376F74F}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N-net_4_x", "..\..\mcs\class/I18N/Common\I18N-net_4_x.csproj", "{E831A310-28EE-4433-B916-FF38A0FCDBE6}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.West-net_4_x", "..\..\mcs\class/I18N/West\I18N.West-net_4_x.csproj", "{3516F613-9194-4B95-B7B2-3F9B37A87B30}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.MidEast-net_4_x", "..\..\mcs\class/I18N/MidEast\I18N.MidEast-net_4_x.csproj", "{CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.Other-net_4_x", "..\..\mcs\class/I18N/Other\I18N.Other-net_4_x.csproj", "{990903B9-BEDF-472C-97B8-221F8AA0A731}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.Rare-net_4_x", "..\..\mcs\class/I18N/Rare\I18N.Rare-net_4_x.csproj", "{83227E53-5469-412F-B936-74AD08CDD9D9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.CJK-net_4_x", "..\..\mcs\class/I18N/CJK\I18N.CJK-net_4_x.csproj", "{4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Http-net_4_x", "..\..\mcs\class/Mono.Http\Mono.Http-net_4_x.csproj", "{11DD6F15-65AB-4CBD-9EFE-2C9626388C53}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cairo-net_4_x", "..\..\mcs\class/Mono.Cairo\Mono.Cairo-net_4_x.csproj", "{D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil-net_4_x", "..\..\mcs\class/Mono.Cecil\Mono.Cecil-net_4_x.csproj", "{2C0D558F-0B38-4691-967E-A910A1B995C1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil.Mdb-net_4_x", "..\..\mcs\class/Mono.Cecil.Mdb\Mono.Cecil.Mdb-net_4_x.csproj", "{CF14D34A-F69B-47FB-A99C-D25C77198F30}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Debugger.Soft-net_4_x", "..\..\mcs\class/Mono.Debugger.Soft\Mono.Debugger.Soft-net_4_x.csproj", "{57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.C5-net_4_x", "..\..\mcs\class/Mono.C5\Mono.C5-net_4_x.csproj", "{61B86230-B170-4B03-A8CA-D5AF77858D7E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Management-net_4_x", "..\..\mcs\class/Mono.Management\Mono.Management-net_4_x.csproj", "{1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Options-net_4_x", "..\..\mcs\class/Mono.Options\Mono.Options-net_4_x.csproj", "{115711B0-D1F2-4E50-83F9-63128E70CE05}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Simd-net_4_x", "..\..\mcs\class/Mono.Simd\Mono.Simd-net_4_x.csproj", "{9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Tasklets-net_4_x", "..\..\mcs\class/Mono.Tasklets\Mono.Tasklets-net_4_x.csproj", "{85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CodeContracts-net_4_x", "..\..\mcs\class/Mono.CodeContracts\Mono.CodeContracts-net_4_x.csproj", "{9BE8D62B-471D-4538-8287-691B4ECE3209}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Parallel-net_4_x", "..\..\mcs\class/Mono.Parallel\Mono.Parallel-net_4_x.csproj", "{18E55AE4-6B9B-44EF-94C9-1084D5472E63}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Win32-net_4_x", "..\..\mcs\class/Mono.Security.Win32\Mono.Security.Win32-net_4_x.csproj", "{994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RabbitMQ.Client.Apigen-net_4_x", "..\..\mcs\class/RabbitMQ.Client/src/apigen\RabbitMQ.Client.Apigen-net_4_x.csproj", "{D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RabbitMQ.Client-net_4_x", "..\..\mcs\class/RabbitMQ.Client/src/client\RabbitMQ.Client-net_4_x.csproj", "{8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Messaging.RabbitMQ-net_4_x", "..\..\mcs\class/Mono.Messaging.RabbitMQ\Mono.Messaging.RabbitMQ-net_4_x.csproj", "{FF19FF42-C95D-4BB7-A0D7-05A94C07276E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Dynamic-net_4_x", "..\..\mcs\class/System.Dynamic\System.Dynamic-net_4_x.csproj", "{5428F1E0-B0ED-46D6-B429-27D1A1C175C0}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows.Forms.DataVisualization-net_4_x", "..\..\mcs\class/System.Windows.Forms.DataVisualization\System.Windows.Forms.DataVisualization-net_4_x.csproj", "{C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Interfaces-net_4_x", "..\..\mcs\class/System.Reactive.Interfaces\System.Reactive.Interfaces-net_4_x.csproj", "{0DA7868F-C598-4E45-B33C-86FBB482DB76}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Core-net_4_x", "..\..\mcs\class/System.Reactive.Core\System.Reactive.Core-net_4_x.csproj", "{52F7F1BD-9D67-494E-A53A-C291FF5424B4}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Linq-net_4_x", "..\..\mcs\class/System.Reactive.Linq\System.Reactive.Linq-net_4_x.csproj", "{EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.PlatformServices-net_4_x", "..\..\mcs\class/System.Reactive.PlatformServices\System.Reactive.PlatformServices-net_4_x.csproj", "{00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Providers-net_4_x", "..\..\mcs\class/System.Reactive.Providers\System.Reactive.Providers-net_4_x.csproj", "{22187CB5-7451-45B4-B21B-337D956FF05D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Runtime.Remoting-net_4_x", "..\..\mcs\class/System.Reactive.Runtime.Remoting\System.Reactive.Runtime.Remoting-net_4_x.csproj", "{7675D4A6-F017-4D20-BFE3-295B86F166CD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Windows.Forms-net_4_x", "..\..\mcs\class/System.Reactive.Windows.Forms\System.Reactive.Windows.Forms-net_4_x.csproj", "{9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Windows.Threading-net_4_x", "..\..\mcs\class/System.Reactive.Windows.Threading\System.Reactive.Windows.Threading-net_4_x.csproj", "{52C2AE83-A947-42CC-ADEF-9F54042D85D5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Observable.Aliases-net_4_x", "..\..\mcs\class/System.Reactive.Observable.Aliases\System.Reactive.Observable.Aliases-net_4_x.csproj", "{7D16E76F-3B1D-415E-AD93-5D4D86B451A0}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Experimental-net_4_x", "..\..\mcs\class/System.Reactive.Experimental\System.Reactive.Experimental-net_4_x.csproj", "{20E6619C-E88D-442C-AFA8-2216A73CF8D2}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Debugger-net_4_x", "..\..\mcs\class/System.Reactive.Debugger\System.Reactive.Debugger-net_4_x.csproj", "{8EB36024-5DB5-4854-8425-8D95A8059F2D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Services.Client-net_4_x", "..\..\mcs\class/System.Data.Services.Client\System.Data.Services.Client-net_4_x.csproj", "{2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Services-net_4_x", "..\..\mcs\class/System.Data.Services\System.Data.Services-net_4_x.csproj", "{5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Entity-net_4_x", "..\..\mcs\class/System.Data.Entity\System.Data.Entity-net_4_x.csproj", "{A559EE60-2FE6-47DD-B4B8-0097BD242D86}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.DataSetExtensions-net_4_x", "..\..\mcs\class/System.Data.DataSetExtensions\System.Data.DataSetExtensions-net_4_x.csproj", "{64D286EF-32EA-4494-9DD6-36609597A11A}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Json.Microsoft-net_4_x", "..\..\mcs\class/System.Json.Microsoft\System.Json.Microsoft-net_4_x.csproj", "{E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Threading.Tasks.Dataflow-net_4_x", "..\..\mcs\class/System.Threading.Tasks.Dataflow\System.Threading.Tasks.Dataflow-net_4_x.csproj", "{70A422C5-17AF-48EE-8DD8-CF88D482606C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ComponentModel.Composition-net_4_x", "..\..\mcs\class/System.ComponentModel.Composition.4.5\System.ComponentModel.Composition-net_4_x.csproj", "{9091B5ED-8AFF-4B93-801A-9A33E0895A2B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows-net_4_x", "..\..\mcs\class/System.Windows\System.Windows-net_4_x.csproj", "{3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml.Serialization-net_4_x", "..\..\mcs\class/System.Xml.Serialization\System.Xml.Serialization-net_4_x.csproj", "{2210873E-99FC-48A2-A261-D650BAE33A1C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.DotNet-net_4_x", "..\..\mcs\class/Mono.Security.Providers.DotNet\Mono.Security.Providers.DotNet-net_4_x.csproj", "{391EDD2B-85AC-4FCA-B607-AAD6C51E6799}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.OldTls-net_4_x", "..\..\mcs\class/Mono.Security.Providers.OldTls\Mono.Security.Providers.OldTls-net_4_x.csproj", "{E485E885-59B1-4081-BC66-56AAAFD8771A}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.DirectoryServices.Protocols-net_4_x", "..\..\mcs\class/System.DirectoryServices.Protocols\System.DirectoryServices.Protocols-net_4_x.csproj", "{EF08F249-31A1-4E62-8391-ECBA5227B686}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualC-net_4_x", "..\..\mcs\class/Microsoft.VisualC\Microsoft.VisualC-net_4_x.csproj", "{ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebMatrix.Data-net_4_x", "..\..\mcs\class/WebMatrix.Data\WebMatrix.Data-net_4_x.csproj", "{25552E1C-6EE1-4D73-A309-A1ED7FA26E94}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "monodoc-net_4_x", "..\..\mcs\class/monodoc\monodoc-net_4_x.csproj", "{0248869F-8D3B-4AB2-B976-B2A9AF1319A9}"
-EndProject
-Global
-       GlobalSection(SolutionConfigurationPlatforms) = preSolution
-               Debug|Any CPU = Debug|Any CPU
-               Release|Any CPU = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(ProjectConfigurationPlatforms) = postSolution
-               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2762E921-91A8-4C87-91E9-BA628013F753}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2762E921-91A8-4C87-91E9-BA628013F753}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2762E921-91A8-4C87-91E9-BA628013F753}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2762E921-91A8-4C87-91E9-BA628013F753}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Release|Any CPU.Build.0 = Release|Any CPU
-               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Release|Any CPU.Build.0 = Release|Any CPU
-               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Release|Any CPU.Build.0 = Release|Any CPU
-               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Release|Any CPU.Build.0 = Release|Any CPU
-               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Release|Any CPU.Build.0 = Release|Any CPU
-               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {88177C4B-894F-485D-B95A-44199C06BE9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {88177C4B-894F-485D-B95A-44199C06BE9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {88177C4B-894F-485D-B95A-44199C06BE9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {88177C4B-894F-485D-B95A-44199C06BE9F}.Release|Any CPU.Build.0 = Release|Any CPU
-               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Release|Any CPU.Build.0 = Release|Any CPU
-               {359142A1-D80F-401E-AA64-7167C9317649}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {359142A1-D80F-401E-AA64-7167C9317649}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {359142A1-D80F-401E-AA64-7167C9317649}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {359142A1-D80F-401E-AA64-7167C9317649}.Release|Any CPU.Build.0 = Release|Any CPU
-               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Release|Any CPU.Build.0 = Release|Any CPU
-               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Release|Any CPU.Build.0 = Release|Any CPU
-               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Release|Any CPU.Build.0 = Release|Any CPU
-               {3821C69F-220D-4231-992C-0FE05311A005}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {3821C69F-220D-4231-992C-0FE05311A005}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {3821C69F-220D-4231-992C-0FE05311A005}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {3821C69F-220D-4231-992C-0FE05311A005}.Release|Any CPU.Build.0 = Release|Any CPU
-               {61E3D008-E273-4E12-860A-8ADA031098C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {61E3D008-E273-4E12-860A-8ADA031098C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {61E3D008-E273-4E12-860A-8ADA031098C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {61E3D008-E273-4E12-860A-8ADA031098C2}.Release|Any CPU.Build.0 = Release|Any CPU
-               {39F59AE4-1381-4275-B14E-16D786F40B93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {39F59AE4-1381-4275-B14E-16D786F40B93}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {39F59AE4-1381-4275-B14E-16D786F40B93}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {39F59AE4-1381-4275-B14E-16D786F40B93}.Release|Any CPU.Build.0 = Release|Any CPU
-               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {B05362C2-C85F-43A5-93D7-49A45892438D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {B05362C2-C85F-43A5-93D7-49A45892438D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {B05362C2-C85F-43A5-93D7-49A45892438D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {B05362C2-C85F-43A5-93D7-49A45892438D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E51283DC-7090-479E-B723-01C0953F18EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E51283DC-7090-479E-B723-01C0953F18EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E51283DC-7090-479E-B723-01C0953F18EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E51283DC-7090-479E-B723-01C0953F18EA}.Release|Any CPU.Build.0 = Release|Any CPU
-               {B6DD737B-421C-4201-A852-8022328FE59D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {B6DD737B-421C-4201-A852-8022328FE59D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {B6DD737B-421C-4201-A852-8022328FE59D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {B6DD737B-421C-4201-A852-8022328FE59D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Release|Any CPU.Build.0 = Release|Any CPU
-               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Release|Any CPU.Build.0 = Release|Any CPU
-               {928432BE-3518-4103-97F6-48B9658588A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {928432BE-3518-4103-97F6-48B9658588A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {928432BE-3518-4103-97F6-48B9658588A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {928432BE-3518-4103-97F6-48B9658588A6}.Release|Any CPU.Build.0 = Release|Any CPU
-               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Release|Any CPU.Build.0 = Release|Any CPU
-               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Release|Any CPU.Build.0 = Release|Any CPU
-               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Release|Any CPU.Build.0 = Release|Any CPU
-               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Release|Any CPU.Build.0 = Release|Any CPU
-               {0029417C-ED54-4162-8D8C-D935C760D89D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {0029417C-ED54-4162-8D8C-D935C760D89D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {0029417C-ED54-4162-8D8C-D935C760D89D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {0029417C-ED54-4162-8D8C-D935C760D89D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Release|Any CPU.Build.0 = Release|Any CPU
-               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Release|Any CPU.Build.0 = Release|Any CPU
-               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Release|Any CPU.Build.0 = Release|Any CPU
-               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Release|Any CPU.Build.0 = Release|Any CPU
-               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Release|Any CPU.Build.0 = Release|Any CPU
-               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Release|Any CPU.Build.0 = Release|Any CPU
-               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D845AD9D-3CCB-49CB-9543-028678E94938}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D845AD9D-3CCB-49CB-9543-028678E94938}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D845AD9D-3CCB-49CB-9543-028678E94938}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D845AD9D-3CCB-49CB-9543-028678E94938}.Release|Any CPU.Build.0 = Release|Any CPU
-               {526286D5-38D9-4579-B001-471440D57752}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {526286D5-38D9-4579-B001-471440D57752}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {526286D5-38D9-4579-B001-471440D57752}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {526286D5-38D9-4579-B001-471440D57752}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Release|Any CPU.Build.0 = Release|Any CPU
-               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Release|Any CPU.Build.0 = Release|Any CPU
-               {67822258-3D1E-449F-ACDD-BE1918B44458}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {67822258-3D1E-449F-ACDD-BE1918B44458}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {67822258-3D1E-449F-ACDD-BE1918B44458}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {67822258-3D1E-449F-ACDD-BE1918B44458}.Release|Any CPU.Build.0 = Release|Any CPU
-               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Release|Any CPU.Build.0 = Release|Any CPU
-               {7A23227C-591B-4F80-9D62-4D0271073D82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {7A23227C-591B-4F80-9D62-4D0271073D82}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {7A23227C-591B-4F80-9D62-4D0271073D82}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {7A23227C-591B-4F80-9D62-4D0271073D82}.Release|Any CPU.Build.0 = Release|Any CPU
-               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EE582CE1-A692-47AC-B838-3A78955898BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EE582CE1-A692-47AC-B838-3A78955898BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EE582CE1-A692-47AC-B838-3A78955898BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EE582CE1-A692-47AC-B838-3A78955898BE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Release|Any CPU.Build.0 = Release|Any CPU
-               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A455F1BB-6273-4BAE-985C-563BED11D529}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A455F1BB-6273-4BAE-985C-563BED11D529}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A455F1BB-6273-4BAE-985C-563BED11D529}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A455F1BB-6273-4BAE-985C-563BED11D529}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Release|Any CPU.Build.0 = Release|Any CPU
-               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Release|Any CPU.Build.0 = Release|Any CPU
-               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Release|Any CPU.Build.0 = Release|Any CPU
-               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Release|Any CPU.Build.0 = Release|Any CPU
-               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Release|Any CPU.Build.0 = Release|Any CPU
-               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Release|Any CPU.Build.0 = Release|Any CPU
-               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D4EAC129-92AB-432C-941D-4B8481097060}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D4EAC129-92AB-432C-941D-4B8481097060}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D4EAC129-92AB-432C-941D-4B8481097060}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D4EAC129-92AB-432C-941D-4B8481097060}.Release|Any CPU.Build.0 = Release|Any CPU
-               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Release|Any CPU.Build.0 = Release|Any CPU
-               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Release|Any CPU.Build.0 = Release|Any CPU
-               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Release|Any CPU.Build.0 = Release|Any CPU
-               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Release|Any CPU.Build.0 = Release|Any CPU
-               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Release|Any CPU.Build.0 = Release|Any CPU
-               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Release|Any CPU.Build.0 = Release|Any CPU
-               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {979FCA08-E170-4BA6-969B-30213135BEA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {979FCA08-E170-4BA6-969B-30213135BEA3}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {979FCA08-E170-4BA6-969B-30213135BEA3}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {979FCA08-E170-4BA6-969B-30213135BEA3}.Release|Any CPU.Build.0 = Release|Any CPU
-               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Release|Any CPU.Build.0 = Release|Any CPU
-               {34443C71-09F1-4F21-ABB4-82822376F74F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {34443C71-09F1-4F21-ABB4-82822376F74F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {34443C71-09F1-4F21-ABB4-82822376F74F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {34443C71-09F1-4F21-ABB4-82822376F74F}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Release|Any CPU.Build.0 = Release|Any CPU
-               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Release|Any CPU.Build.0 = Release|Any CPU
-               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Release|Any CPU.Build.0 = Release|Any CPU
-               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Release|Any CPU.Build.0 = Release|Any CPU
-               {83227E53-5469-412F-B936-74AD08CDD9D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {83227E53-5469-412F-B936-74AD08CDD9D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {83227E53-5469-412F-B936-74AD08CDD9D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {83227E53-5469-412F-B936-74AD08CDD9D9}.Release|Any CPU.Build.0 = Release|Any CPU
-               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Release|Any CPU.Build.0 = Release|Any CPU
-               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Release|Any CPU.Build.0 = Release|Any CPU
-               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Release|Any CPU.Build.0 = Release|Any CPU
-               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Release|Any CPU.Build.0 = Release|Any CPU
-               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Release|Any CPU.Build.0 = Release|Any CPU
-               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Release|Any CPU.Build.0 = Release|Any CPU
-               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Release|Any CPU.Build.0 = Release|Any CPU
-               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Release|Any CPU.Build.0 = Release|Any CPU
-               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Release|Any CPU.Build.0 = Release|Any CPU
-               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Release|Any CPU.Build.0 = Release|Any CPU
-               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Release|Any CPU.Build.0 = Release|Any CPU
-               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Release|Any CPU.Build.0 = Release|Any CPU
-               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Release|Any CPU.Build.0 = Release|Any CPU
-               {22187CB5-7451-45B4-B21B-337D956FF05D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {22187CB5-7451-45B4-B21B-337D956FF05D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {22187CB5-7451-45B4-B21B-337D956FF05D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {22187CB5-7451-45B4-B21B-337D956FF05D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Release|Any CPU.Build.0 = Release|Any CPU
-               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Release|Any CPU.Build.0 = Release|Any CPU
-               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Release|Any CPU.Build.0 = Release|Any CPU
-               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Release|Any CPU.Build.0 = Release|Any CPU
-               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Release|Any CPU.Build.0 = Release|Any CPU
-               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Release|Any CPU.Build.0 = Release|Any CPU
-               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Release|Any CPU.Build.0 = Release|Any CPU
-               {64D286EF-32EA-4494-9DD6-36609597A11A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {64D286EF-32EA-4494-9DD6-36609597A11A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {64D286EF-32EA-4494-9DD6-36609597A11A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {64D286EF-32EA-4494-9DD6-36609597A11A}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Release|Any CPU.Build.0 = Release|Any CPU
-               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Release|Any CPU.Build.0 = Release|Any CPU
-               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Release|Any CPU.Build.0 = Release|Any CPU
-               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Release|Any CPU.Build.0 = Release|Any CPU
-               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Release|Any CPU.Build.0 = Release|Any CPU
-               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Release|Any CPU.Build.0 = Release|Any CPU
-               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Release|Any CPU.Build.0 = Release|Any CPU
-               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Release|Any CPU.Build.0 = Release|Any CPU
-               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Release|Any CPU.Build.0 = Release|Any CPU
-               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
-               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
-               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Release|Any CPU.Build.0 = Release|Any CPU
-       EndGlobalSection
-       GlobalSection(SolutionProperties) = preSolution
-               HideSolutionNode = FALSE
-       EndGlobalSection
-EndGlobal
index 09d652d968f1cde4b036a93ff6b3819416a775b4..d0473063375ecd968f0ab6fa27cda916d46b5be3 100644 (file)
 <root>
     <project dir="mcs" library="basic-basic">
       <boot></boot>
-      <flags>/codepage:65001 -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../class/lib/basic -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -debug -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../class/lib/basic -optimize /noconfig</flags>
       <output>basic.exe</output>
-      <built_sources></built_sources>
+      <built_sources>cs-parser.cs</built_sources>
       <library_output>./../class/lib/basic/basic.exe</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
+      <resources></resources>
       <response>mcs.exe.sources</response>
     </project>
     <project dir="class/corlib" library="corlib-basic">
       <boot>true</boot>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/mscorlib.dll</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
+      <resources></resources>
       <response>corlib.dll.sources</response>
     </project>
-    <project dir="class/System" library="System-basic">
-      <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/basic/secxml/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
-      <output>System.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/basic/System.dll</library_output>
-      <fx_version>4.0</fx_version>
-      <profile>basic</profile>
-      <response>./../../build/deps/basic_System.dll.sources</response>
-    </project>
-    <project dir="class/System.XML" library="System.Xml-basic">
+    <project dir="class/Mono.Security" library="Mono.Security-basic">
       <boot>true</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/basic/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System</flags>
-      <output>System.Xml.dll</output>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -unsafe -nowarn:1030,3009 -r:./../../class/lib/basic/bare/System.dll</flags>
+      <output>Mono.Security.dll</output>
       <built_sources></built_sources>
-      <library_output>./../../class/lib/basic/System.Xml.dll</library_output>
+      <library_output>./../../class/lib/basic/Mono.Security.dll</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
-      <response>System.Xml.dll.sources</response>
+      <resources></resources>
+      <response>Mono.Security.dll.sources</response>
     </project>
     <project dir="class/System" library="System-basic">
       <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/basic/secxml/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -d:MONO_SECURITY_ALIAS -d:CONFIGURATION_DEP -r:./../../class/lib/basic/System.Xml.dll -r:./../../class/lib/basic/System.Configuration.dll -r:MonoSecurity=./../../class/lib/basic/Mono.Security.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/System.dll</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
+      <resources></resources>
       <response>./../../build/deps/basic_System.dll.sources</response>
     </project>
-    <project dir="class/Mono.Security" library="Mono.Security-basic">
+    <project dir="class/System.XML" library="System.Xml-basic">
       <boot>true</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/basic/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -unsafe -nowarn:1030,3009 -r:System</flags>
-      <output>Mono.Security.dll</output>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -nowarn:219,414,649,1717 -unsafe -d:ASYNC -d:CONFIGURATION_DEP -r:./../../class/lib/basic/secxml/System.dll -r:./../../class/lib/basic/System.Configuration.dll</flags>
+      <output>System.Xml.dll</output>
       <built_sources></built_sources>
-      <library_output>./../../class/lib/basic/Mono.Security.dll</library_output>
+      <library_output>./../../class/lib/basic/System.Xml.dll</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
-      <response>Mono.Security.dll.sources</response>
+      <resources></resources>
+      <response>System.Xml.dll.sources</response>
     </project>
     <project dir="class/System.Core" library="System.Core-basic">
       <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -d:DISABLE_CAS_USE -lib:./../../class/lib/basic -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/basic/System.dll</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/basic/System.Core.dll</library_output>
       <fx_version>4.0</fx_version>
       <profile>basic</profile>
+      <resources></resources>
       <response>./../../build/deps/basic_System.Core.dll.sources</response>
     </project>
     <project dir="class/corlib" library="corlib-build">
       <boot>true</boot>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/mscorlib.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>corlib.dll.sources</response>
     </project>
+    <project dir="class/Mono.Security" library="Mono.Security-build">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -unsafe -nowarn:1030,3009 -r:./../../class/lib/build/bare/System.dll</flags>
+      <output>Mono.Security.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/build/Mono.Security.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>build</profile>
+      <resources></resources>
+      <response>Mono.Security.dll.sources</response>
+    </project>
     <project dir="class/System" library="System-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/build/secxml/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -d:MONO_SECURITY_ALIAS -d:CONFIGURATION_DEP -r:./../../class/lib/build/System.Xml.dll -r:./../../class/lib/build/System.Configuration.dll -r:MonoSecurity=./../../class/lib/build/Mono.Security.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System" library="System-bare-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/bare/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System" library="System-secxml-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/build/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/build/bare/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -d:MONO_SECURITY_ALIAS -r:./../../class/lib/build/bare/System.Xml.dll -r:MonoSecurity=./../../class/lib/build/Mono.Security.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/secxml/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/build/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -nowarn:219,414,649,1717 -unsafe -d:ASYNC -d:CONFIGURATION_DEP -r:./../../class/lib/build/secxml/System.dll -r:./../../class/lib/build/System.Configuration.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/System.Xml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>System.Xml.dll.sources</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-bare-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/build/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:./../../class/lib/build/bare/System.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/bare/System.Xml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>System.Xml.dll.sources</response>
     </project>
-    <project dir="class/System" library="System-build">
-      <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/build/secxml/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
-      <output>System.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/build/System.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>build</profile>
-      <response>System.dll.sources</response>
-    </project>
-    <project dir="class/System" library="System-bare-build">
-      <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav</flags>
-      <output>System.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/build/bare/System.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>build</profile>
-      <response>System.dll.sources</response>
-    </project>
-    <project dir="class/System" library="System-secxml-build">
-      <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/build/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/build/bare/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
-      <output>System.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/build/secxml/System.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>build</profile>
-      <response>System.dll.sources</response>
-    </project>
-    <project dir="class/Mono.Security" library="Mono.Security-build">
-      <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/build/bare -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -unsafe -nowarn:1030,3009 -r:System</flags>
-      <output>Mono.Security.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/build/Mono.Security.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>build</profile>
-      <response>Mono.Security.dll.sources</response>
-    </project>
     <project dir="class/Mono.Posix" library="Mono.Posix-build">
       <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig /unsafe /r:mscorlib.dll /nowarn:0618,612 -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig /unsafe /nowarn:0618,612 -r:./../../class/lib/build/System.dll</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/Mono.Posix.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>Mono.Posix.dll.sources</response>
     </project>
     <project dir="class/System.Core" library="System.Core-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/build/System.dll -r:./../../class/lib/build/Mono.Posix.dll</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/System.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>./../../build/deps/build_System.Core.dll.sources</response>
     </project>
     <project dir="class/System.Core" library="System.Core-plaincore-build">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/build/System.dll -r:./../../class/lib/build/Mono.Posix.dll</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/plaincore/System.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>./../../build/deps/build_System.Core.dll.sources</response>
     </project>
+    <project dir="class/Mono.Cecil" library="Mono.Cecil-build">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -keyfile:../mono.snk -d:NET_3_5 /publicsign -r:./../../class/lib/build/System.Core.dll</flags>
+      <output>Mono.Cecil.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/build/Mono.Cecil.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>build</profile>
+      <resources></resources>
+      <response>Mono.Cecil.dll.sources</response>
+    </project>
+    <project dir="class/Mono.Cecil.Mdb" library="Mono.Cecil.Mdb-build">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig /d:CECIL -keyfile:../mono.snk -publicsign -r:./../../class/lib/build/System.dll -r:./../../class/lib/build/Mono.Cecil.dll</flags>
+      <output>Mono.Cecil.Mdb.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/build/Mono.Cecil.Mdb.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>build</profile>
+      <resources></resources>
+      <response>Mono.Cecil.Mdb.dll.sources</response>
+    </project>
     <project dir="mcs" library="mcs-build">
       <boot></boot>
-      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../class/lib/build -r:mscorlib.dll -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -debug -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../class/lib/build/mscorlib.dll -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
       <output>mcs.exe</output>
-      <built_sources></built_sources>
+      <built_sources>cs-parser.cs</built_sources>
       <library_output>mcs.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>mcs.exe.sources</response>
     </project>
     <project dir="tools/gacutil" library="gacutil-build">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.Security.dll -unsafe -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig</flags>
+      <flags>/codepage:65001 -unsafe -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -r:Mono.Security</flags>
       <output>gacutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/gacutil.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>gacutil.exe.sources</response>
     </project>
     <project dir="tools/culevel" library="culevel-build">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/build -r:mscorlib.dll -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -r:System -r:System.Xml</flags>
       <output>culevel.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/build/culevel.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>build</profile>
+      <resources></resources>
       <response>culevel.exe.sources</response>
     </project>
+    <project dir="tools/cil-stringreplacer" library="cil-stringreplacer-build">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig -r:System -r:Mono.Cecil</flags>
+      <output>cil-stringreplacer.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/build/cil-stringreplacer.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>build</profile>
+      <resources></resources>
+      <response>cil-stringreplacer.exe.sources</response>
+    </project>
+    <project dir="tools/commoncryptogenerator" library="commoncryptogenerator-build">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/build/mscorlib.dll -optimize /noconfig</flags>
+      <output>commoncryptogenerator.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/build/commoncryptogenerator.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>build</profile>
+      <resources></resources>
+      <response>commoncryptogenerator.exe.sources</response>
+    </project>
     <project dir="mcs" library="mcs-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -lib:./../class/lib/build -debug -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -debug -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_PROCESS_START -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
       <output>mcs.exe</output>
-      <built_sources></built_sources>
+      <built_sources>cs-parser.cs</built_sources>
       <library_output>mcs.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mcs.exe.sources</response>
     </project>
     <project dir="class/corlib" library="corlib-net_4_x">
       <boot>true</boot>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -debug -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -debug -optimize /noconfig -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -resource:resources/charinfo.nlp -resource:resources/collation.core.bin -resource:resources/collation.tailoring.bin -resource:resources/collation.cjkCHS.bin -resource:resources/collation.cjkCHT.bin -resource:resources/collation.cjkJA.bin -resource:resources/collation.cjkKO.bin -resource:resources/collation.cjkKOlv2.bin --runtime:v4</flags>
       <output>mscorlib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mscorlib.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_corlib.dll.sources</response>
     </project>
     <project dir="class/corlib" library="corlib-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -debug -optimize -r:./../../class/lib/net_4_x/mscorlib.dll -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -debug -nowarn:168,219,618,672 -unsafe -r:Mono.Posix.dll -r:System.Core.dll -r:System.dll -define:MONO_DATACONVERTER_STATIC_METHODS -resource:Test/resources/Resources.resources</flags>
+      <flags>/codepage:65001 -unsafe -nostdlib -nowarn:612,618,1635 -d:INSIDE_CORLIB,MONO_CULTURE_DATA -d:LIBC -d:FEATURE_PAL,GENERICS_WORK,FEATURE_LIST_PREDICATES,FEATURE_SERIALIZATION,FEATURE_ASCII,FEATURE_LATIN1,FEATURE_UTF7,FEATURE_UTF32,MONO_HYBRID_ENCODING_SUPPORT,FEATURE_ASYNC_IO,NEW_EXPERIMENTAL_ASYNC_IO,FEATURE_UTF32,FEATURE_EXCEPTIONDISPATCHINFO,FEATURE_CORRUPTING_EXCEPTIONS,FEATURE_EXCEPTION_NOTIFICATIONS,FEATURE_STRONGNAME_MIGRATION,FEATURE_USE_LCID,FEATURE_FUSION,FEATURE_CRYPTO,FEATURE_X509_SECURESTRINGS,FEATURE_SYNCHRONIZATIONCONTEXT,FEATURE_SYNCHRONIZATIONCONTEXT_WAIT -d:FEATURE_MACL -d:FEATURE_REMOTING,MONO_COM,FEATURE_COMINTEROP,FEATURE_ROLE_BASED_SECURITY -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -debug -optimize -r:./../../class/lib/net_4_x/mscorlib.dll -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -debug -nowarn:168,219,618,672 -unsafe -define:MONO_DATACONVERTER_STATIC_METHODS -resource:Test/resources/Resources.resources</flags>
       <output>net_4_x_corlib_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_corlib_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_corlib_test.dll.response</response>
     </project>
+    <project dir="class/Mono.Security" library="Mono.Security-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030,3009 -r:./../../class/lib/net_4_x/bare/System.dll</flags>
+      <output>Mono.Security.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/Mono.Security.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>Mono.Security.dll.sources</response>
+    </project>
+    <project dir="class/Mono.Security" library="Mono.Security-tests-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Security.dll -unsafe -nowarn:1030,3009 -r:./../../class/lib/net_4_x/bare/System.dll -nowarn:169,219,618,672</flags>
+      <output>net_4_x_Mono.Security_test.dll</output>
+      <built_sources></built_sources>
+      <library_output>net_4_x_Mono.Security_test.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>./../../build/deps/net_4_x_Mono.Security_test.dll.response</response>
+    </project>
     <project dir="class/System" library="System-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/net_4_x/secxml/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -d:MONO_SECURITY_ALIAS -d:CONFIGURATION_DEP -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:MonoSecurity=./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System" library="System-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -r:System.Configuration -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS</flags>
       <output>net_4_x_System_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System_test.dll.response</response>
     </project>
     <project dir="class/System" library="System-bare-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/bare/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System" library="System-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -r:System.Configuration -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS</flags>
       <output>net_4_x_System_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System_test.dll.response</response>
     </project>
     <project dir="class/System" library="System-secxml-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -r:PrebuiltSystem=./../../class/lib/net_4_x/bare/System.dll -d:MONO_SECURITY_ALIAS -d:MONO_X509_ALIAS -r:System.Xml -r:MonoSecurity=Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:CONFIGURATION_2_0 -d:FEATURE_PAL,SYSTEM_NAMESPACE,MONO,PLATFORM_UNIX -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -unsafe -resource:resources/Asterisk.wav -resource:resources/Beep.wav -resource:resources/Exclamation.wav -resource:resources/Hand.wav -resource:resources/Question.wav -d:SECURITY_DEP -d:XML_DEP -d:MONO_SECURITY_ALIAS -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:MonoSecurity=./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>System.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/secxml/System.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.dll.sources</response>
     </project>
     <project dir="class/System" library="System-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -r:System.Drawing.dll -r:Mono.Security.dll -r:System.Data -r:System.Xml.dll -r:System.Core.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -r:System.Configuration -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/secxml/System.dll -nowarn:618,672,219,67,169,612 -resource:Test/System/test-uri-props.txt,test-uri-props.txt -resource:Test/System/test-uri-props-manual.txt,test-uri-props-manual.txt -resource:Test/System/test-uri-relative-props.txt,test-uri-relative-props.txt -d:MONO_FEATURE_PROCESS_START -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME -d:MONO_FEATURE_MULTIPLE_APPDOMAINS</flags>
       <output>net_4_x_System_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System_test.dll.response</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System.Configuration.dll -d:CONFIGURATION_DEP -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:219,414,649,1717 -unsafe -d:ASYNC -d:CONFIGURATION_DEP -r:./../../class/lib/net_4_x/secxml/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Xml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.dll.sources</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/bare/System.Xml.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:./../../class/lib/net_4_x/bare/System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Xml_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Xml_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Xml_test.dll.response</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-bare-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:./../../class/lib/net_4_x/bare/System.dll</flags>
       <output>System.Xml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/bare/System.Xml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.dll.sources</response>
     </project>
     <project dir="class/System.XML" library="System.Xml-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:mscorlib.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:System -nowarn:0618 -nowarn:219 -nowarn:169 -r:System.Data.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/bare/System.Xml.dll -nowarn:219,414,649,1717 -unsafe -d:ASYNC -r:./../../class/lib/net_4_x/bare/System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Xml_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Xml_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Xml_test.dll.response</response>
     </project>
     <project dir="class/Mono.CompilerServices.SymbolWriter" library="Mono.CompilerServices.SymbolWriter-net_4_x">
       <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -lib:./../../class/lib/net_4_x/bare -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.CompilerServices.SymbolWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.CompilerServices.SymbolWriter.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.CompilerServices.SymbolWriter.dll.sources</response>
     </project>
     <project dir="class/Mono.Posix" library="Mono.Posix-net_4_x">
       <boot>true</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll /nowarn:0618,612 -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe /nowarn:0618,612 -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.Posix.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Posix.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Posix.dll.sources</response>
     </project>
     <project dir="class/Mono.Posix" library="Mono.Posix-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Posix.dll /unsafe /r:Mono.Posix.dll /r:System.dll /nowarn:0219,0618</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Posix.dll /unsafe /nowarn:0219,0618</flags>
       <output>net_4_x_Mono.Posix_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Posix_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Posix_test.dll.response</response>
     </project>
     <project dir="class/System.Core" library="System.Core-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Core.dll.sources</response>
     </project>
     <project dir="class/System.Core" library="System.Core-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaincore/System.Core.dll -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaincore/System.Core.dll -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll</flags>
       <output>net_4_x_System.Core_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Core_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Core_test.dll.response</response>
     </project>
     <project dir="class/System.Core" library="System.Core-plaincore-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll</flags>
       <output>System.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/plaincore/System.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Core.dll.sources</response>
     </project>
     <project dir="class/System.Core" library="System.Core-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaincore/System.Core.dll -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaincore/System.Core.dll -d:FEATURE_PAL,PFX_LEGACY_3_5,FEATURE_NETCORE -d:INSIDE_SYSCORE -d:LIBC -unsafe -d:NET_3_5 -nowarn:1720 -d:FEATURE_CORE_DLR,FEATURE_REFEMIT,FEATURE_PDBEMIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll</flags>
       <output>net_4_x_System.Core_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Core_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Core_test.dll.response</response>
     </project>
-    <project dir="class/Mono.Security" library="Mono.Security-net_4_x">
-      <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030,3009 -r:System</flags>
-      <output>Mono.Security.dll</output>
-      <built_sources></built_sources>
-      <library_output>./../../class/lib/net_4_x/Mono.Security.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>net_4_x</profile>
-      <response>Mono.Security.dll.sources</response>
-    </project>
-    <project dir="class/Mono.Security" library="Mono.Security-tests-net_4_x">
-      <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Security.dll -unsafe -nowarn:1030,3009 -r:System -nowarn:169,219,618,672</flags>
-      <output>net_4_x_Mono.Security_test.dll</output>
-      <built_sources></built_sources>
-      <library_output>net_4_x_Mono.Security_test.dll</library_output>
-      <fx_version>4.5</fx_version>
-      <profile>net_4_x</profile>
-      <response>./../../build/deps/net_4_x_Mono.Security_test.dll.response</response>
-    </project>
     <project dir="class/System.Security" library="System.Security-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/secxml -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:SECURITY_DEP -r:mscorlib.dll -nowarn:414 -r:System -r:System.Xml -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -d:SECURITY_DEP -nowarn:414 -r:./../../class/lib/net_4_x/secxml/System.dll -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>System.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Security.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.dll.sources</response>
     </project>
     <project dir="class/System.Security" library="System.Security-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/secxml -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Security.dll -nowarn:618 -d:SECURITY_DEP -r:mscorlib.dll -nowarn:414 -r:System -r:System.Xml -r:Mono.Security -nowarn:168,169,183,219,414</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Security.dll -nowarn:618 -d:SECURITY_DEP -nowarn:414 -r:./../../class/lib/net_4_x/secxml/System.dll -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -nowarn:168,169,183,219,414</flags>
       <output>net_4_x_System.Security_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Security_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Security_test.dll.response</response>
     </project>
     <project dir="class/System.Configuration" library="System.Configuration-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/secxml -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -nowarn:618 -r:System -r:System.Xml -r:System.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:./../../class/lib/net_4_x/secxml/System.dll -r:./../../class/lib/net_4_x/bare/System.Xml.dll -r:./../../class/lib/net_4_x/System.Security.dll</flags>
       <output>System.Configuration.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Configuration.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Configuration.dll.sources</response>
     </project>
     <project dir="class/System.Configuration" library="System.Configuration-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/secxml -lib:./../../class/lib/net_4_x/bare -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Configuration.dll -r:mscorlib.dll -nowarn:618 -r:System -r:System.Xml -r:System.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>net_4_x_System.Configuration_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Configuration_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Configuration_test.dll.response</response>
     </project>
     <project dir="tools/resgen" library="resgen-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Core</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/resgen.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>resgen.exe.sources</response>
     </project>
     <project dir="class/System.IO.Compression" library="System.IO.Compression-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.IO.Compression.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.IO.Compression.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.Compression.dll.sources</response>
     </project>
     <project dir="class/System.IO.Compression" library="System.IO.Compression-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IO.Compression.dll /r:System /r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IO.Compression.dll</flags>
       <output>net_4_x_System.IO.Compression_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.IO.Compression_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.IO.Compression_test.dll.response</response>
     </project>
     <project dir="class/System.IO.Compression.FileSystem" library="System.IO.Compression.FileSystem-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.IO.Compression</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.IO.Compression.dll</flags>
       <output>System.IO.Compression.FileSystem.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.IO.Compression.FileSystem.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.Compression.FileSystem.dll.sources</response>
     </project>
     <project dir="class/System.IO.Compression.FileSystem" library="System.IO.Compression.FileSystem-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IO.Compression.FileSystem.dll /r:System /r:System.Core /r:System.IO.Compression.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IO.Compression.FileSystem.dll</flags>
       <output>net_4_x_System.IO.Compression.FileSystem_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.IO.Compression.FileSystem_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.IO.Compression.FileSystem_test.dll.response</response>
     </project>
     <project dir="class/System.Drawing" library="System.Drawing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Drawing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Drawing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Drawing.dll.sources</response>
     </project>
     <project dir="class/System.Drawing" library="System.Drawing-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Drawing.dll /unsafe /r:mscorlib.dll -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico -r:System -define:TEST -resource:Test/resources/indexed.png,indexed.png -r:System.Drawing.dll -r:System.Runtime.Serialization.Formatters.Soap.dll -r:System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Drawing.dll /unsafe -resource:Assembly/Mono.ico,Mono.ico -resource:Assembly/Information.ico,Information.ico -resource:Assembly/Error.ico,Error.ico -resource:Assembly/Warning.ico,Warning.ico -resource:Assembly/Question.ico,Question.ico -resource:Assembly/Shield.ico,Shield.ico -r:./../../class/lib/net_4_x/System.dll -define:TEST -resource:Test/resources/indexed.png,indexed.png -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Drawing_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Drawing_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Drawing_test.dll.response</response>
     </project>
     <project dir="class/System.Transactions" library="System.Transactions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Transactions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Transactions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Transactions.dll.sources</response>
     </project>
     <project dir="class/System.Transactions" library="System.Transactions-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Transactions.dll /r:mscorlib.dll -r:System -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>net_4_x_System.Transactions_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Transactions_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Transactions_test.dll.response</response>
     </project>
     <project dir="class/System.EnterpriseServices" library="System.EnterpriseServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /nowarn:0168 /nowarn:0162 /r:mscorlib.dll -r:System.Transactions</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /nowarn:0168 /nowarn:0162 -r:./../../class/lib/net_4_x/System.Transactions.dll</flags>
       <output>System.EnterpriseServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.EnterpriseServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.EnterpriseServices.dll.sources</response>
     </project>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Xml -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Mono.Data.Tds.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Data.Tds.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Data.Tds.dll.sources</response>
     </project>
     <project dir="class/Mono.Data.Tds" library="Mono.Data.Tds-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Data.Tds.dll /r:System.dll /r:System.Net.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Data.Tds.dll</flags>
       <output>net_4_x_Mono.Data.Tds_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Data.Tds_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Data.Tds_test.dll.response</response>
     </project>
     <project dir="class/System.Numerics" library="System.Numerics-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe -d:MONO -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -d:MONO -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Numerics.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Numerics.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Numerics.dll.sources</response>
     </project>
     <project dir="class/System.Numerics" library="System.Numerics-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Numerics.dll /unsafe -d:MONO -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Numerics.dll /unsafe -d:MONO -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>net_4_x_System.Numerics_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Numerics_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Numerics_test.dll.response</response>
     </project>
     <project dir="class/System.Numerics.Vectors" library="System.Numerics.Vectors-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Numerics.Vectors.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Numerics.Vectors.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Numerics.Vectors.dll.sources</response>
     </project>
     <project dir="class/System.Data" library="System.Data-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:169,219,414,649 -d:PLATFORM_UNIX -d:USEOFFSET -d:MONO_PARTIAL_DATA_IMPORT -unsafe -r:System -r:System.Xml -r:System.Core -r:System.Numerics -r:System.EnterpriseServices -r:Mono.Data.Tds -r:System.Configuration -r:System.Transactions</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:169,219,414,649 -d:PLATFORM_UNIX -d:USEOFFSET -d:MONO_PARTIAL_DATA_IMPORT -unsafe -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Numerics.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/Mono.Data.Tds.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Transactions.dll</flags>
       <output>System.Data.dll</output>
       <built_sources>gen_OdbcConnection.cs gen_OleDbConnection.cs gen_OdbcParameter.cs gen_OleDbParameter.cs gen_OdbcParameterCollection.cs gen_OleDbParameterCollection.cs</built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data.dll.sources</response>
     </project>
     <project dir="class/System.Data" library="System.Data-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.dll -nowarn:169,219,414,649 -d:PLATFORM_UNIX -d:USEOFFSET -d:MONO_PARTIAL_DATA_IMPORT -unsafe -r:System -r:System.Xml -r:System.Core -r:System.Numerics -r:System.EnterpriseServices -r:Mono.Data.Tds -r:System.Configuration -r:System.Transactions -r:System.Core.dll -r:Mono.Data.Sqlite.dll -nowarn:618,169,612,219,168</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.dll -nowarn:169,219,414,649 -d:PLATFORM_UNIX -d:USEOFFSET -d:MONO_PARTIAL_DATA_IMPORT -unsafe -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Numerics.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/Mono.Data.Tds.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -nowarn:618,169,612,219,168</flags>
       <output>net_4_x_System.Data_test.dll</output>
       <built_sources>gen_OdbcConnection.cs gen_OleDbConnection.cs gen_OdbcParameter.cs gen_OleDbParameter.cs gen_OdbcParameterCollection.cs gen_OleDbParameterCollection.cs</built_sources>
       <library_output>net_4_x_System.Data_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data_test.dll.response</response>
     </project>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:414 -r:System -r:System.Core -r:System.Data -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:414 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.ComponentModel.DataAnnotations.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.DataAnnotations.dll.sources</response>
     </project>
     <project dir="class/System.ComponentModel.DataAnnotations" library="System.ComponentModel.DataAnnotations-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -nowarn:414 -r:System -r:System.Core -r:System.Data -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -nowarn:414 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>net_4_x_System.ComponentModel.DataAnnotations_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ComponentModel.DataAnnotations_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ComponentModel.DataAnnotations_test.dll.response</response>
     </project>
     <project dir="class/Accessibility" library="Accessibility-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Accessibility.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Accessibility.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Accessibility.dll.sources</response>
     </project>
     <project dir="class/Mono.WebBrowser" library="Mono.WebBrowser-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -warn:1 -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -warn:1 -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.WebBrowser.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.WebBrowser.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.WebBrowser.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Runtime.Serialization.Formatters.Soap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Serialization.Formatters.Soap.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Serialization.Formatters.Soap" library="System.Runtime.Serialization.Formatters.Soap-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll /r:mscorlib.dll -r:System.Xml -r:System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Runtime.Serialization.Formatters.Soap_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Runtime.Serialization.Formatters.Soap_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.Serialization.Formatters.Soap_test.dll.response</response>
     </project>
     <project dir="class/System.Windows.Forms" library="System.Windows.Forms-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll @System.Windows.Forms.dll.resources -nowarn:618,612,809 -r:System -r:System.Xml -r:System.Drawing -r:Accessibility -r:System.Data -r:Mono.Posix -r:Mono.WebBrowser -r:System.Configuration -r:System.Runtime.Serialization.Formatters.Soap</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe @System.Windows.Forms.dll.resources -nowarn:618,612,809 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/Accessibility.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll -r:./../../class/lib/net_4_x/Mono.WebBrowser.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll</flags>
       <output>System.Windows.Forms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Windows.Forms.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Windows.Forms.dll.sources</response>
     </project>
     <project dir="class/System.Windows.Forms" library="System.Windows.Forms-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Windows.Forms.dll /r:System.Data.dll /r:System.Drawing.dll /r:Accessibility.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Serialization.Formatters.Soap -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -resource:Test/resources/a.cur,a.cur -resource:Test/resources/32x32.ico,32x32.ico -nowarn:618,612</flags>
       <output>net_4_x_System.Windows.Forms_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Windows.Forms_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Windows.Forms_test.dll.response</response>
     </project>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD -r:System -r:System.Data -r:System.Transactions -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>Mono.Data.Sqlite.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Data.Sqlite.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Data.Sqlite.dll.sources</response>
     </project>
     <project dir="class/Mono.Data.Sqlite" library="Mono.Data.Sqlite-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll /unsafe -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD -r:System -r:System.Data -r:System.Transactions -r:System.Xml /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll /unsafe -resource:resources/SR.resources -resource:resources/SQLiteCommand.bmp -resource:resources/SQLiteConnection.bmp -resource:resources/SQLiteDataAdapter.bmp -d:SQLITE_STANDARD -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Xml.dll /nowarn:618</flags>
       <output>net_4_x_Mono.Data.Sqlite_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Data.Sqlite_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Data.Sqlite_test.dll.response</response>
     </project>
     <project dir="class/System.Web.ApplicationServices" library="System.Web.ApplicationServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:SYSTEM_WEB_APPLICATIONSERVICES -r:System -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:SYSTEM_WEB_APPLICATIONSERVICES -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Web.ApplicationServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.ApplicationServices.dll.sources</response>
     </project>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -warn:1 -nowarn:612 -r:mscorlib.dll -r:System.dll -r:Mono.Security.dll /res:Novell.Directory.Ldap.Utilclass/ResultCodeMessages.resources -r:System -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -warn:1 -nowarn:612 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Novell.Directory.Ldap.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Novell.Directory.Ldap.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>ResultCodeMessages,Novell.Directory.Ldap.Utilclass/ResultCodeMessages.txt</resources>
       <response>Novell.Directory.Ldap.dll.sources</response>
     </project>
     <project dir="class/Novell.Directory.Ldap" library="Novell.Directory.Ldap-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Novell.Directory.Ldap.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Novell.Directory.Ldap.dll</flags>
       <output>net_4_x_Novell.Directory.Ldap_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Novell.Directory.Ldap_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Novell.Directory.Ldap_test.dll.response</response>
     </project>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:Novell.Directory.Ldap</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Novell.Directory.Ldap.dll</flags>
       <output>System.DirectoryServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.DirectoryServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.DirectoryServices.dll.sources</response>
     </project>
     <project dir="class/System.DirectoryServices" library="System.DirectoryServices-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.DirectoryServices.dll /r:mscorlib.dll -r:System -r:Novell.Directory.Ldap -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.DirectoryServices.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Novell.Directory.Ldap.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.DirectoryServices_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.DirectoryServices_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.DirectoryServices_test.dll.response</response>
     </project>
     <project dir="class/System.Web" library="System.Web-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -lib:./../../class/lib/net_4_x/plaindesign -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Xml -r:System.EnterpriseServices -r:System.Runtime.Serialization.Formatters.Soap -r:System.ComponentModel.DataAnnotations -r:System.Web.Services -r:System.Design</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -d:INSIDE_SYSTEM_WEB -nowarn:618 /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -define:WEBSERVICES_DEP -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/plaindesign/System.Design.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>TranslationResources,resources/TranslationResources.resx</resources>
       <response>System.Web.dll.sources</response>
     </project>
     <project dir="class/System.Web" library="System.Web-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Xml -r:System.EnterpriseServices -r:System.Runtime.Serialization.Formatters.Soap -r:System.ComponentModel.DataAnnotations -doc:net_4_x_System.Web_test.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -unsafe -nowarn:612,618 -d:INSIDE_SYSTEM_WEB -nowarn:618 /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll -doc:net_4_x_System.Web_test.xml -nowarn:219,169,1591 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>net_4_x_System.Web_test.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>net_4_x_System.Web_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web_test.dll.response</response>
     </project>
     <project dir="class/System.Web" library="System.Web-plainweb-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -r:mscorlib.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Xml -r:System.EnterpriseServices -r:System.Runtime.Serialization.Formatters.Soap -r:System.ComponentModel.DataAnnotations</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:612,618 -d:INSIDE_SYSTEM_WEB -nowarn:618 /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll</flags>
       <output>System.Web.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>./../../class/lib/net_4_x/plainweb/System.Web.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>TranslationResources,resources/TranslationResources.resx</resources>
       <response>System.Web.dll.sources</response>
     </project>
     <project dir="class/System.Web" library="System.Web-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -unsafe -nowarn:612,618 -r:mscorlib.dll -d:INSIDE_SYSTEM_WEB -nowarn:618 -r:System.Configuration.dll -r:Mono.Data.Sqlite.dll -r:System.Web.ApplicationServices.dll /resource:resources/TranslationResources.resources /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Xml -r:System.EnterpriseServices -r:System.Runtime.Serialization.Formatters.Soap -r:System.ComponentModel.DataAnnotations -doc:net_4_x_System.Web_test.xml -nowarn:219,169,1591 -r:SystemWebTestShim.dll /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -unsafe -nowarn:612,618 -d:INSIDE_SYSTEM_WEB -nowarn:618 /resource:resources/WebUIValidation.js /resource:resources/folder.gif /resource:resources/file.gif /resource:resources/computer.gif /resource:resources/arrow_minus.gif /resource:resources/arrow_noexpand.gif /resource:resources/arrow_plus.gif /resource:resources/arrow_up.gif /resource:resources/arrow_down.gif /resource:resources/box_full.gif /resource:resources/box_empty.gif /resource:resources/box_minus.gif /resource:resources/box_noexpand.gif /resource:resources/box_plus.gif /resource:resources/contact.gif /resource:resources/dot_empty.gif /resource:resources/dot_full.gif /resource:resources/dots.gif /resource:resources/inbox.gif /resource:resources/star_empty.gif /resource:resources/star_full.gif /resource:resources/warning.gif /resource:resources/TreeView_noexpand.gif /resource:resources/TreeView_dash.gif /resource:resources/TreeView_dashminus.gif /resource:resources/TreeView_dashplus.gif /resource:resources/TreeView_i.gif /resource:resources/TreeView_l.gif /resource:resources/TreeView_lminus.gif /resource:resources/TreeView_lplus.gif /resource:resources/TreeView_minus.gif /resource:resources/TreeView_plus.gif /resource:resources/TreeView_r.gif /resource:resources/TreeView_rminus.gif /resource:resources/TreeView_rplus.gif /resource:resources/TreeView_t.gif /resource:resources/TreeView_tminus.gif /resource:resources/TreeView_tplus.gif /resource:resources/transparent.gif /resource:resources/webform.js /resource:resources/WebUIValidation_2.0.js /resource:resources/ErrorTemplateCommon_Top.html /resource:resources/DefaultErrorTemplate_CustomErrorDefault.html /resource:resources/ErrorTemplateCommon_Bottom.html /resource:resources/DefaultErrorTemplate_StandardPage.html /resource:resources/HtmlizedExceptionPage_Top.html /resource:resources/HtmlizedExceptionPage_FileLongSource.html /resource:resources/HtmlizedExceptionPage_FileShortSource.html /resource:resources/HtmlizedExceptionPage_CompilerOutput.html /resource:System.Web.UI.WebControls/GridView.js /resource:System.Web.UI.WebControls/DetailsView.js /resource:System.Web.UI.WebControls/TreeView.js /resource:System.Web.UI.WebControls/Menu.js /resource:System.Web.UI.WebControls/MenuModern.js -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Data.Sqlite.dll -doc:net_4_x_System.Web_test.xml -nowarn:219,169,1591 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/Web.mono.config.4.0 /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/sub_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_01.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_02.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_03.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_04.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_05.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_06.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_07.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_08.sitemap /resource:Test/mainsoft/NunitWeb/NunitWeb/Resources/test_map_09.sitemap /resource:Test/mainsoft/NunitWebResources/menuclass.aspx /resource:Test/mainsoft/NunitWebResources/FormView.aspx /resource:Test/mainsoft/NunitWebResources/PostBackMenuTest.aspx /resource:Test/mainsoft/NunitWebResources/PageWithStyleSheet.aspx /resource:Test/mainsoft/NunitWebResources/PageWithTheme.aspx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.ascx /resource:Test/mainsoft/NunitWebResources/ResolveUrl.aspx /resource:Test/mainsoft/NunitWebResources/RunTimeSetTheme.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyBind.aspx /resource:Test/mainsoft/NunitWebResources/ReadOnlyPropertyControl.ascx /resource:Test/mainsoft/NunitWebResources/Theme1.skin /resource:Test/mainsoft/NunitWebResources/Theme2.skin /resource:Test/mainsoft/NunitWebResources/UrlProperty.aspx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx /resource:Test/mainsoft/NunitWebResources/UrlProperty.ascx.cs /resource:Test/mainsoft/NunitWebResources/Web.sitemap /resource:Test/mainsoft/NunitWebResources/WizardTest.skin /resource:Test/mainsoft/NunitWebResources/FooterTemplateTest.aspx /resource:Test/mainsoft/NunitWebResources/DataGrid.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_2.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewTemplates_3.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewDataActions.aspx /resource:Test/mainsoft/NunitWebResources/DetailsViewProperties1.aspx /resource:Test/mainsoft/NunitWebResources/Bluehills.jpg /resource:Test/mainsoft/NunitWebResources/FormViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_2.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_3.aspx /resource:Test/mainsoft/NunitWebResources/FormViewTest1_4.aspx /resource:Test/mainsoft/NunitWebResources/FormViewInsertEditDelete.aspx /resource:Test/mainsoft/NunitWebResources/GridViewUpdate.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xml /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest.xsl /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest1.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest2.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest3.aspx /resource:Test/mainsoft/NunitWebResources/XMLDataSourceTest4.aspx /resource:Test/mainsoft/NunitWebResources/LoginViewTest1.aspx /resource:Test/mainsoft/NunitWebResources/WebControl.config /resource:Test/mainsoft/NunitWebResources/WebLogin.config /resource:Test/mainsoft/NunitWebResources/CallbackTest1.aspx /resource:Test/mainsoft/NunitWebResources/CallbackTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest2.aspx /resource:Test/mainsoft/NunitWebResources/EventValidationTest1.aspx /resource:Test/mainsoft/NunitWebResources/ClientScript.js /resource:Test/mainsoft/NunitWebResources/EvalTest.aspx /resource:Test/mainsoft/NunitWebResources/TemplateUserControl.ascx /resource:Test/mainsoft/NunitWebResources/WebMapping.config /resource:Test/mainsoft/NunitWebResources/Mapping.aspx /resource:Test/mainsoft/NunitWebResources/Mapping1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting1.aspx /resource:Test/mainsoft/NunitWebResources/CrossPagePosting2.aspx /resource:Test/mainsoft/NunitWebResources/MyDerived.master /resource:Test/mainsoft/NunitWebResources/MyPageWithDerivedMaster.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest1.aspx /resource:Test/mainsoft/NunitWebResources/MasterTypeTest2.aspx /resource:Test/mainsoft/NunitWebResources/PageLifecycleTest.aspx /resource:Test/mainsoft/NunitWebResources/PageValidationTest.aspx /resource:Test/mainsoft/NunitWebResources/AsyncPage.aspx /resource:Test/mainsoft/NunitWebResources/PageCultureTest.aspx /resource:Test/mainsoft/NunitWebResources/adapters.browser /resource:Test/mainsoft/NunitWebResources/NoEventValidation.aspx /resource:Test/mainsoft/NunitWebResources/ListControlPage.aspx /resource:Test/mainsoft/NunitWebResources/TextBoxTestlPage.aspx /resource:Test/mainsoft/NunitWebResources/ClearErrorOnError.aspx /resource:Test/mainsoft/NunitWebResources/RedirectOnError.aspx /resource:Test/mainsoft/NunitWebResources/TestCapability.browser /resource:Test/mainsoft/NunitWebResources/PageWithAdapter.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/InvalidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind1.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind2.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind3.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind4.aspx /resource:Test/mainsoft/NunitWebResources/ValidPropertyBind5.aspx /resource:Test/mainsoft/NunitWebResources/ReadWritePropertyControl.ascx /resource:Test/mainsoft/MainsoftWebTest/nunitweb_config.xml /resource:Test/mainsoft/NunitWebResources/TemplateControlParsingTest.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.aspx /resource:Test/mainsoft/NunitWebResources/ContentPlaceHolderInTemplate.master /resource:Test/mainsoft/NunitWebResources/MissingMasterFile.aspx /resource:Test/mainsoft/NunitWebResources/CustomSectionEmptyCollection.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx /resource:Test/mainsoft/NunitWebResources/NoDoubleOnInitOnRemoveAdd.aspx.cs /resource:Test/mainsoft/NunitWebResources/LoginDisplayRememberMe.aspx /resource:Test/mainsoft/NunitWebResources/NoBindForMethodsWithBindInName.aspx /resource:Test/mainsoft/NunitWebResources/LinkInHeadWithEmbeddedExpression.aspx /resource:Test/mainsoft/NunitWebResources/ExpressionInListControl.aspx /resource:Test/mainsoft/NunitWebResources/ServerSideControlsInScriptBlock.aspx /resource:Test/mainsoft/NunitWebResources/ServerControlInClientSideComment.aspx /resource:Test/mainsoft/NunitWebResources/PreprocessorDirectivesInMarkup.aspx /resource:Test/mainsoft/NunitWebResources/UnquotedAngleBrackets.aspx /resource:Test/mainsoft/NunitWebResources/FullTagsInText.aspx /resource:Test/mainsoft/NunitWebResources/TagsExpressionsAndCommentsInText.aspx /resource:Test/mainsoft/NunitWebResources/NewlineInCodeExpression.aspx /resource:Test/mainsoft/NunitWebResources/DuplicateControlsInClientComment.aspx /resource:Test/mainsoft/NunitWebResources/TagsNestedInClientTag.aspx /resource:Test/mainsoft/NunitWebResources/ConditionalClientComments.aspx /resource:Test/mainsoft/NunitWebResources/OneLetterIdentifierInCodeRender.aspx /resource:Test/mainsoft/NunitWebResources/GlobalResourcesLocalization.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx /resource:Test/mainsoft/NunitWebResources/TableSections_Bug551666.aspx.cs /resource:Test/mainsoft/NunitWebResources/NestedParserFileText.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx /resource:Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs /resource:Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx /resource:Test/mainsoft/NunitWebResources/TagWithExpressionWithinAttribute.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug377703_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug578770.aspx /resource:Test/mainsoft/NunitWebResources/EnumConverter_Bug578586.aspx /resource:Test/mainsoft/NunitWebResources/ButtonColor_Bug325489.aspx /resource:Test/mainsoft/NunitWebResources/SqlDataSource_OnInit_Bug572781.aspx /resource:Test/mainsoft/NunitWebResources/FormViewPagerVisibility.aspx /resource:Test/mainsoft/NunitWebResources/OverridenControlsPropertyAndPostBack_Bug594238.aspx /resource:Test/mainsoft/NunitWebResources/GlobalizationEncodingName.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_0.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_1.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_2.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_5.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_6.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxField_Bug595568_7.aspx /resource:Test/mainsoft/NunitWebResources/GridView_Bug595567.aspx /resource:Test/mainsoft/NunitWebResources/CheckBoxList_Bug600415.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx /resource:Test/mainsoft/NunitWebResources/BoundField_Bug646505.aspx.cs /resource:Test/mainsoft/NunitWebResources/HtmlTitleCodeRender_Bug662918.aspx /resource:Test/mainsoft/NunitWebResources/App_Code/EnumConverterControl.cs,App_Code/EnumConverterControl.cs /resource:Test/mainsoft/NunitWebResources/App_Code/MyContainer.cs,App_Code/MyContainer.cs /resource:Test/mainsoft/NunitWebResources/App_Code/CustomCheckBoxColumn.cs,App_Code/CustomCheckBoxColumn.cs /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.resx,App_GlobalResources/Common.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Common.fr-FR.resx,App_GlobalResources/Common.fr-FR.resx /resource:Test/mainsoft/NunitWebResources/App_GlobalResources/Resource1.resx,App_GlobalResources/Resource1.resx</flags>
       <output>net_4_x_System.Web_test.dll</output>
       <built_sources>System.Web/UplevelHelper.cs</built_sources>
       <library_output>net_4_x_System.Web_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web_test.dll.response</response>
     </project>
     <project dir="class/System.Web.Services" library="System.Web.Services-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/plainweb -lib:./../../class/lib/net_4_x/plaindesign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:168,169,219,414,612,649 -d:MONO_BROKEN_CONFIGURATION_DLL -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -r:System -r:System.EnterpriseServices -r:System.Xml -r:System.Data -r:System.Web -r:System.Design -r:System.DirectoryServices -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:168,169,219,414,612,649 -d:MONO_BROKEN_CONFIGURATION_DLL -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -r:./../../class/lib/net_4_x/plaindesign/System.Design.dll -r:./../../class/lib/net_4_x/System.DirectoryServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Web.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Services.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.Services.dll.sources</response>
     </project>
     <project dir="class/System.Web.Services" library="System.Web.Services-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/plainweb -lib:./../../class/lib/net_4_x/plaindesign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Services.dll -nowarn:168,169,219,414,612,649 -d:MONO_BROKEN_CONFIGURATION_DLL -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -r:System -r:System.EnterpriseServices -r:System.Xml -r:System.Data -r:System.Web -r:System.Design -r:System.DirectoryServices -r:System.Configuration -nowarn:618 -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Services.dll -nowarn:168,169,219,414,612,649 -d:MONO_BROKEN_CONFIGURATION_DLL -resource:System.Web.Services.Description/wsdl-1.1.xsd,wsdl-1.1.xsd -resource:System.Web.Services.Description/wsdl-1.1-soap.xsd,wsdl-1.1-soap.xsd -resource:System.Web.Services.Description/web-reference.xsd,web-reference.xsd -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -r:./../../class/lib/net_4_x/plaindesign/System.Design.dll -r:./../../class/lib/net_4_x/System.DirectoryServices.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -nowarn:618 -d:MONO_FEATURE_THREAD_ABORT -d:MONO_FEATURE_THREAD_SUSPEND_RESUME</flags>
       <output>net_4_x_System.Web.Services_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Web.Services_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web.Services_test.dll.response</response>
     </project>
     <project dir="class/System.Design" library="System.Design-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/plainweb -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System -r:System.Xml -r:System.Web -r:System.Windows.Forms -r:System.Drawing -r:Accessibility -r:System.Data -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/Accessibility.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Design.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Design.dll.sources</response>
     </project>
     <project dir="class/System.Design" library="System.Design-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/plainweb -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Design.dll /r:System.dll -r:System.Drawing.dll -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaindesign/System.Design.dll</flags>
       <output>net_4_x_System.Design_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Design_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
+      <response>./../../build/deps/net_4_x_System.Design_test.dll.response</response>
+    </project>
+    <project dir="class/System.Design" library="System.Design-plaindesign-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/plainweb/System.Web.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/Accessibility.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
+      <output>System.Design.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/plaindesign/System.Design.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Design.dll.sources</response>
+    </project>
+    <project dir="class/System.Design" library="System.Design-tests-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plaindesign/System.Design.dll</flags>
+      <output>net_4_x_System.Design_test.dll</output>
+      <built_sources></built_sources>
+      <library_output>net_4_x_System.Design_test.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Design_test.dll.response</response>
     </project>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Web -r:System.Xml -r:System.Runtime.Serialization.Formatters.Soap</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.Formatters.Soap.dll -r:./../../class/lib/net_4_x/System.Web.dll</flags>
       <output>System.Runtime.Remoting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Runtime.Remoting.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Remoting.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Remoting" library="System.Runtime.Remoting-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Remoting.dll /r:mscorlib.dll -r:System -r:System.Web -r:System.Xml -r:System.Runtime.Serialization.Formatters.Soap -nowarn:618 /r:System.Runtime.Remoting.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Remoting.dll -nowarn:618</flags>
       <output>net_4_x_System.Runtime.Remoting_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Runtime.Remoting_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.Remoting_test.dll.response</response>
     </project>
     <project dir="class/System.Configuration.Install" library="System.Configuration.Install-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Configuration.Install.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Configuration.Install.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Configuration.Install.dll.sources</response>
     </project>
     <project dir="class/System.Management" library="System.Management-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Configuration.Install</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.Install.dll</flags>
       <output>System.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Management.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Management.dll.sources</response>
     </project>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Xml -r:System.Data -r:System.EnterpriseServices -r:System.Drawing</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Drawing.dll</flags>
       <output>System.Data.OracleClient.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.OracleClient.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.OracleClient.dll.sources</response>
     </project>
     <project dir="class/System.Data.OracleClient" library="System.Data.OracleClient-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.OracleClient.dll /r:mscorlib.dll -r:System -r:System.Xml -r:System.Data -r:System.EnterpriseServices -r:System.Drawing /nowarn:618</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.OracleClient.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.Drawing.dll /nowarn:618</flags>
       <output>net_4_x_System.Data.OracleClient_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Data.OracleClient_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data.OracleClient_test.dll.response</response>
     </project>
     <project dir="class/Cscompmgd" library="Cscompmgd-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>cscompmgd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/cscompmgd.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Cscompmgd.dll.sources</response>
     </project>
     <project dir="class/Cscompmgd" library="Cscompmgd-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/cscompmgd.dll /r:mscorlib.dll -r:System -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/cscompmgd.dll -r:./../../class/lib/net_4_x/System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_Cscompmgd_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Cscompmgd_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Cscompmgd_test.dll.response</response>
     </project>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /resource:resources/relaxng.rng,relaxng.rng -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /resource:resources/relaxng.rng,relaxng.rng -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>Commons.Xml.Relaxng.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>./../../class/lib/net_4_x/Commons.Xml.Relaxng.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Commons.Xml.Relaxng.dll.sources</response>
     </project>
     <project dir="class/Commons.Xml.Relaxng" library="Commons.Xml.Relaxng-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Commons.Xml.Relaxng.dll /r:mscorlib.dll /resource:resources/relaxng.rng,relaxng.rng -r:System -r:System.Xml -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Commons.Xml.Relaxng.dll /resource:resources/relaxng.rng,relaxng.rng -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_Commons.Xml.Relaxng_test.dll</output>
       <built_sources>Commons.Xml.Relaxng.Rnc/RncParser.cs</built_sources>
       <library_output>net_4_x_Commons.Xml.Relaxng_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Commons.Xml.Relaxng_test.dll.response</response>
     </project>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>Mono.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Messaging.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Messaging.dll.sources</response>
     </project>
     <project dir="class/Mono.Messaging" library="Mono.Messaging-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:System -r:System.Configuration -nowarn:0618 -nowarn:219 -nowarn:169 /r:System.Messaging.dll /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_Mono.Messaging_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Messaging_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Messaging_test.dll.response</response>
     </project>
     <project dir="class/System.Messaging" library="System.Messaging-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /resource:System.Messaging/MessageQueue.resx -r:System -r:System.Xml -r:Mono.Messaging -r:System.Configuration.Install -r:System.Drawing -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /resource:System.Messaging/MessageQueue.resx -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:./../../class/lib/net_4_x/System.Configuration.Install.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>System.Messaging.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Messaging.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Messaging.dll.sources</response>
     </project>
     <project dir="class/System.Messaging" library="System.Messaging-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx -r:System -r:System.Xml -r:Mono.Messaging -r:System.Configuration.Install -r:System.Drawing -r:System.Windows.Forms -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Messaging.dll /resource:System.Messaging/MessageQueue.resx -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:./../../class/lib/net_4_x/System.Configuration.Install.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Messaging_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Messaging_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Messaging_test.dll.response</response>
     </project>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /nowarn:0618 -r:System -r:System.Configuration.Install -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /nowarn:0618 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.Install.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>System.ServiceProcess.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceProcess.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceProcess.dll.sources</response>
     </project>
     <project dir="class/System.ServiceProcess" library="System.ServiceProcess-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceProcess.dll /nowarn:0618 -r:System -r:System.Configuration.Install -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceProcess.dll /nowarn:0618 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.Install.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>net_4_x_System.ServiceProcess_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ServiceProcess_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ServiceProcess_test.dll.response</response>
     </project>
     <project dir="class/System.Drawing.Design" library="System.Drawing.Design-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:System.Drawing -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>System.Drawing.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Drawing.Design.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Drawing.Design.dll.sources</response>
     </project>
     <project dir="class/ICSharpCode.SharpZipLib" library="ICSharpCode.SharpZipLib-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -warn:1 -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -warn:1 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>ICSharpCode.SharpZipLib.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/ICSharpCode.SharpZipLib.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>ICSharpCode.SharpZipLib.dll.sources</response>
     </project>
     <project dir="class/IBM.Data.DB2" library="IBM.Data.DB2-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe /r:mscorlib.dll -warn:1 -r:System -r:System.Xml -r:System.Data</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -warn:1 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll</flags>
       <output>IBM.Data.DB2.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/IBM.Data.DB2.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>IBM.Data.DB2.dll.sources</response>
     </project>
     <project dir="class/CustomMarshalers" library="CustomMarshalers-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>CustomMarshalers.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/CustomMarshalers.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>CustomMarshalers.dll.sources</response>
     </project>
     <project dir="class/SystemWebTestShim" library="SystemWebTestShim-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Web -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>SystemWebTestShim.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/SystemWebTestShim.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>SystemWebTestShim.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Internals" library="System.ServiceModel.Internals-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -r:System -r:System.Core -r:System.Xml -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -d:MONO_FEATURE_MULTIPLE_APPDOMAINS -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.ServiceModel.Internals.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.Internals.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Internals.dll.sources</response>
     </project>
     <project dir="class/SMDiagnostics" library="SMDiagnostics-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml -r:System.ServiceModel.Internals -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Internals.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>SMDiagnostics.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/SMDiagnostics.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>SMDiagnostics.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -d:NO_DYNAMIC_CODEGEN /nowarn:168,169,219,414 /d:NET_3_0 -r:System -r:System.Xml -r:System.Core -r:System.ServiceModel.Internals -r:SMDiagnostics -r:System.Data -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -d:NO_DYNAMIC_CODEGEN /nowarn:168,169,219,414 /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Internals.dll -r:./../../class/lib/net_4_x/SMDiagnostics.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Runtime.Serialization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Runtime.Serialization.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.Serialization.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Serialization" library="System.Runtime.Serialization-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -unsafe -d:NO_DYNAMIC_CODEGEN /nowarn:168,169,219,414 /d:NET_3_0 -r:System -r:System.Xml -r:System.Core -r:System.ServiceModel.Internals -r:SMDiagnostics -r:System.Data -r:System.Configuration /r:System.ServiceModel.dll /r:System.Web.Services.dll /resource:Test/Resources/WSDL/collections.wsdl /resource:Test/Resources/WSDL/custom-collections.wsdl</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -unsafe -d:NO_DYNAMIC_CODEGEN /nowarn:168,169,219,414 /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Internals.dll -r:./../../class/lib/net_4_x/SMDiagnostics.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll /resource:Test/Resources/WSDL/collections.wsdl /resource:Test/Resources/WSDL/custom-collections.wsdl</flags>
       <output>net_4_x_System.Runtime.Serialization_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Runtime.Serialization_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.Serialization_test.dll.response</response>
     </project>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:FEATURE_SERIALIZATION -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>System.Xml.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Xml.Linq.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.Linq.dll.sources</response>
     </project>
     <project dir="class/System.Xml.Linq" library="System.Xml.Linq-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:System -r:System.Core -r:System.Xml -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -d:FEATURE_SERIALIZATION -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>net_4_x_System.Xml.Linq_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Xml.Linq_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Xml.Linq_test.dll.response</response>
     </project>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -r:System -r:System.Core -r:System.Xml -r:System.Data -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>System.Data.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.Linq.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.Linq.dll.sources</response>
     </project>
     <project dir="class/System.Data.Linq" library="System.Data.Linq-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.Linq.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -r:System -r:System.Core -r:System.Xml -r:System.Data -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.Linq.dll /resource:./src/DbLinq/Schema/Dbml/DbmlSchema.xsd,DbLinq.Schema.Dbml.DbmlSchema.xsd /d:MONO_STRICT /d:MONO_DEPLOY -warn:1 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>net_4_x_System.Data.Linq_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Data.Linq_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data.Linq_test.dll.response</response>
     </project>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Web</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Web.dll</flags>
       <output>System.Web.Abstractions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Abstractions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.Abstractions.dll.sources</response>
     </project>
     <project dir="class/System.Web.Abstractions" library="System.Web.Abstractions-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll -r:System -r:System.Core -r:System.Web</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Web.dll</flags>
       <output>net_4_x_System.Web.Abstractions_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Web.Abstractions_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web.Abstractions_test.dll.response</response>
     </project>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Web -r:System.Web.Abstractions</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll</flags>
       <output>System.Web.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Routing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.Routing.dll.sources</response>
     </project>
     <project dir="class/System.Web.Routing" library="System.Web.Routing-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:System -r:System.Core -r:System.Web -r:System.Web.Abstractions</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll</flags>
       <output>net_4_x_System.Web.Routing_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Web.Routing_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web.Routing_test.dll.response</response>
     </project>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Core -r:System.Xml.Linq -r:System.Transactions -r:System.ServiceModel.Internals -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Internals.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>System.Runtime.DurableInstancing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Runtime.DurableInstancing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.DurableInstancing.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.DurableInstancing" library="System.Runtime.DurableInstancing-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.DurableInstancing.dll -r:System -r:System.Xml -r:System.Core -r:System.Xml.Linq -r:System.Transactions -r:System.ServiceModel.Internals -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.DurableInstancing.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Internals.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>net_4_x_System.Runtime.DurableInstancing_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Runtime.DurableInstancing_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.DurableInstancing_test.dll.response</response>
     </project>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 -r:System.Web.ApplicationServices.dll -r:System -r:System.Xml -r:System.Security -r:System.Configuration -r:Mono.Security -r:System.Runtime.Serialization -r:System.Web</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>System.IdentityModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.IdentityModel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IdentityModel.dll.sources</response>
     </project>
     <project dir="class/System.IdentityModel" library="System.IdentityModel-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IdentityModel.dll /d:NET_3_0 -r:System.Web.ApplicationServices.dll -r:System -r:System.Xml -r:System.Security -r:System.Configuration -r:Mono.Security -r:System.Runtime.Serialization -r:System.Web</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.IdentityModel.dll /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>net_4_x_System.IdentityModel_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.IdentityModel_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.IdentityModel_test.dll.response</response>
     </project>
     <project dir="class/System.IdentityModel.Selectors" library="System.IdentityModel.Selectors-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 -r:System -r:System.Xml -r:System.Security -r:System.Runtime.Serialization -r:System.IdentityModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll</flags>
       <output>System.IdentityModel.Selectors.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.IdentityModel.Selectors.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IdentityModel.Selectors.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -define:HAS_ACTIVATION -r:System.ServiceModel.Activation.dll -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:System.Configuration -r:System.Data -r:System.Security -r:System.IdentityModel -r:System.IdentityModel.Selectors -r:System.Transactions -r:System.Messaging -r:System.Web.Services -r:Mono.Security -r:System.Web -r:System.Web.ApplicationServices</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -define:HAS_ACTIVATION -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.Selectors.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Activation.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:System.Configuration -r:System.Data -r:System.Security -r:System.IdentityModel -r:System.IdentityModel.Selectors -r:System.Transactions -r:System.Messaging -r:System.Web.Services -r:Mono.Security -r:System.Web -r:System.Web.ApplicationServices</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.Selectors.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>net_4_x_System.ServiceModel_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ServiceModel_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ServiceModel_test.dll.response</response>
     </project>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-plainservice-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:System.Configuration -r:System.Data -r:System.Security -r:System.IdentityModel -r:System.IdentityModel.Selectors -r:System.Transactions -r:System.Messaging -r:System.Web.Services -r:Mono.Security -r:System.Web -r:System.Web.ApplicationServices</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.Selectors.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>System.ServiceModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel" library="System.ServiceModel-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:System.Configuration -r:System.Data -r:System.Security -r:System.IdentityModel -r:System.IdentityModel.Selectors -r:System.Transactions -r:System.Messaging -r:System.Web.Services -r:Mono.Security -r:System.Web -r:System.Web.ApplicationServices</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll /nowarn:414,169,67,3005,436,219,618 /unsafe /d:TRACE /resource:resources/WS-Addressing.schema /resource:resources/ws-addr.xsd /d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Security.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.Selectors.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>net_4_x_System.ServiceModel_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ServiceModel_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ServiceModel_test.dll.response</response>
     </project>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Data.Linq -r:System.Xml -r:System.Web -r:System.Web.Services -r:System.Configuration -r:System.EnterpriseServices -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>System.Web.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.Extensions.dll.sources</response>
     </project>
     <project dir="class/System.Web.Extensions" library="System.Web.Extensions-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS -r:mscorlib.dll -r:System.Web.ApplicationServices.dll /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -r:System -r:System.Core -r:System.Drawing -r:System.Data -r:System.Data.Linq -r:System.Xml -r:System.Web -r:System.Web.Services -r:System.Configuration -r:System.EnterpriseServices -r:System.ServiceModel -doc:net_4_x_System.Web.Extensions_test.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.x /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master -r:SystemWebTestShim.dll -define:SYSTEM_WEB_EXTENSIONS</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -unsafe -define:NET_3_5 -define:SYSTEM_WEB_EXTENSIONS /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjax.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxTimer.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.debug.js /resource:../MicrosoftAjaxLibrary/System.Web.Extensions/3.5.0.0/3.5.21022.8/MicrosoftAjaxWebForms.js -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Services.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.EnterpriseServices.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll -doc:net_4_x_System.Web.Extensions_test.xml -nowarn:219,169,1591 /resource:Test/resources/Web.mono.config /resource:Test/resources/profile.config.4.x /resource:Test/resources/ListViewSort.aspx /resource:Test/resources/ListViewTest.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_1.aspx /resource:Test/resources/ListViewTotalRowCount_Bug535701_2.aspx /resource:Test/resources/ListViewTotalRowCount_Bug604053.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx.cs /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/Global.asax /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.ashx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPage.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithDerivedMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMaster.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyPageWithMasterInvalidPlaceHolder.aspx /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/My.master /resource:../System.Web/Test/mainsoft/NunitWeb/NunitWeb/Resources/MyDerived.master -define:SYSTEM_WEB_EXTENSIONS</flags>
       <output>net_4_x_System.Web.Extensions_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Web.Extensions_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web.Extensions_test.dll.response</response>
     </project>
     <project dir="class/System.Web.Extensions.Design" library="System.Web.Extensions.Design-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -define:NET_3_5 -r:System -r:System.Design -r:System.Drawing -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -define:NET_3_5 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Design.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>System.Web.Extensions.Design.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Extensions.Design.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.Extensions.Design.dll.sources</response>
     </project>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.ComponentModel.DataAnnotations -r:System.Data -r:System.Data.Linq -r:System.Drawing -r:System.Web -r:System.Web.Extensions -r:System.Web.Abstractions -r:System.Web.Routing -r:System.Web.ApplicationServices</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll</flags>
       <output>System.Web.DynamicData.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.DynamicData.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Web.DynamicData.dll.sources</response>
     </project>
     <project dir="class/System.Web.DynamicData" library="System.Web.DynamicData-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.DynamicData.dll -r:System -r:System.Core -r:System.ComponentModel.DataAnnotations -r:System.Data -r:System.Data.Linq -r:System.Drawing -r:System.Web -r:System.Web.Extensions -r:System.Web.Abstractions -r:System.Web.Routing -r:System.Web.ApplicationServices -r:System.ComponentModel.DataAnnotations.dll -r:System.Configuration.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.4.x,MonoTests.WebPages.web.config.4.x -r:SystemWebTestShim.dll -r:System.Xml.dll -r:System.Web.ApplicationServices.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Web.DynamicData.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:./../../class/lib/net_4_x/System.Web.ApplicationServices.dll /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx /resource:Test/WebPages/DynamicData/Content/FilterUserControl.ascx.cs,MonoTests.WebPages.DynamicData.Content.FilterUserControl.ascx.cs /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx /resource:Test/WebPages/DynamicData/Content/GridViewPager.ascx.cs,MonoTests.WebPages.DynamicData.Content.GridViewPager.ascx.cs /resource:Test/WebPages/DynamicData/Content/Images/Back.gif,MonoTests.WebPages.DynamicData.Content.Images.Back.gif /resource:Test/WebPages/DynamicData/Content/Images/header_back.gif,MonoTests.WebPages.DynamicData.Content.Images.header_back.gif /resource:Test/WebPages/DynamicData/Content/Images/PgFirst.gif,MonoTests.WebPages.DynamicData.Content.Images.PgFirst.gif /resource:Test/WebPages/DynamicData/Content/Images/PgLast.gif,MonoTests.WebPages.DynamicData.Content.Images.PgLast.gif /resource:Test/WebPages/DynamicData/Content/Images/PgNext.gif,MonoTests.WebPages.DynamicData.Content.Images.PgNext.gif /resource:Test/WebPages/DynamicData/Content/Images/PgPrev.gif,MonoTests.WebPages.DynamicData.Content.Images.PgPrev.gif /resource:Test/WebPages/DynamicData/Content/Images/plus.gif,MonoTests.WebPages.DynamicData.Content.Images.plus.gif /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Boolean_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Boolean_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Children.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Children.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomColor.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomColor.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/CustomFieldTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.CustomFieldTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/DateTime_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.DateTime_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Decimal_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Decimal_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/ForeignKey_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.ForeignKey_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Integer_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Integer_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MultilineText_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MultilineText_Edit.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/MyCustomUIHintTemplate_Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.MyCustomUIHintTemplate_Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/MonoTests.Common.FooEmpty.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.MonoTests.Common.FooEmpty.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Boolean.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Boolean.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Byte[].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Byte[].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Char.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Char.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.Generic.List`1[System.String].ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.Generic.List`1[System.String].ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Collections.ICollection.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Collections.ICollection.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Int64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Int64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.Object.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.Object.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.SByte.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.SByte.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.String.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.String.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/System.UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.System.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt16.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt16.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt32.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt32.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx /resource:Test/WebPages/DynamicData/FieldTemplates_NonDefault/UInt64.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates_NonDefault.UInt64.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/PlainControlTemplate.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.PlainControlTemplate.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text.ascx.cs /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx /resource:Test/WebPages/DynamicData/FieldTemplates/Text_Edit.ascx.cs,MonoTests.WebPages.DynamicData.FieldTemplates.Text_Edit.ascx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Details.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Details.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Edit.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Edit.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx /resource:Test/WebPages/DynamicData/PageTemplates/Insert.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.Insert.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx /resource:Test/WebPages/DynamicData/PageTemplates/List.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.List.aspx.cs /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx /resource:Test/WebPages/DynamicData/PageTemplates/ListDetails.aspx.cs,MonoTests.WebPages.DynamicData.PageTemplates.ListDetails.aspx.cs /resource:Test/WebPages/DynamicData/web.config,MonoTests.WebPages.DynamicData.web.config /resource:Test/WebPages/Global.asax,MonoTests.WebPages.Global.asax /resource:Test/WebPages/ListView_DynamicControl_01.aspx,MonoTests.WebPages.ListView_DynamicControl_01.aspx /resource:Test/WebPages/ListView_DynamicControl_01.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_01.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_02.aspx,MonoTests.WebPages.ListView_DynamicControl_02.aspx /resource:Test/WebPages/ListView_DynamicControl_02.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_02.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_03.aspx,MonoTests.WebPages.ListView_DynamicControl_03.aspx /resource:Test/WebPages/ListView_DynamicControl_03.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_03.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_04.aspx,MonoTests.WebPages.ListView_DynamicControl_04.aspx /resource:Test/WebPages/ListView_DynamicControl_04.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_04.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_05.aspx,MonoTests.WebPages.ListView_DynamicControl_05.aspx /resource:Test/WebPages/ListView_DynamicControl_05.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_05.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_06.aspx,MonoTests.WebPages.ListView_DynamicControl_06.aspx /resource:Test/WebPages/ListView_DynamicControl_06.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_06.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_07.aspx,MonoTests.WebPages.ListView_DynamicControl_07.aspx /resource:Test/WebPages/ListView_DynamicControl_07.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_07.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_08.aspx,MonoTests.WebPages.ListView_DynamicControl_08.aspx /resource:Test/WebPages/ListView_DynamicControl_08.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_08.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_09.aspx,MonoTests.WebPages.ListView_DynamicControl_09.aspx /resource:Test/WebPages/ListView_DynamicControl_09.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_09.aspx.cs /resource:Test/WebPages/ListView_DynamicControl_10.aspx,MonoTests.WebPages.ListView_DynamicControl_10.aspx /resource:Test/WebPages/ListView_DynamicControl_10.aspx.cs,MonoTests.WebPages.ListView_DynamicControl_10.aspx.cs /resource:Test/WebPages/DynamicValidator_01.aspx,MonoTests.WebPages.DynamicValidator_01.aspx /resource:Test/WebPages/DynamicValidator_01.aspx.cs,MonoTests.WebPages.DynamicValidator_01.aspx.cs /resource:Test/WebPages/DynamicValidator_02.aspx,MonoTests.WebPages.DynamicValidator_02.aspx /resource:Test/WebPages/DynamicValidator_02.aspx.cs,MonoTests.WebPages.DynamicValidator_02.aspx.cs /resource:Test/WebPages/Site.css,MonoTests.WebPages.Site.css /resource:Test/WebPages/Site.master,MonoTests.WebPages.Site.master /resource:Test/WebPages/Site.master.cs,MonoTests.WebPages.Site.master.cs /resource:Test/WebPages/web.config.4.x,MonoTests.WebPages.web.config.4.x</flags>
       <output>net_4_x_System.Web.DynamicData_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Web.DynamicData_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Web.DynamicData_test.dll.response</response>
     </project>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:MONO_FEATURE_THREAD_ABORT -r:System.Core -r:System.Xml -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:MONO_FEATURE_THREAD_ABORT -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.CSharp.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.CSharp.dll.sources</response>
     </project>
     <project dir="class/Mono.CSharp" library="Mono.CSharp-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.CSharp.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.CSharp.dll</flags>
       <output>net_4_x_Mono.CSharp_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.CSharp_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.CSharp_test.dll.response</response>
     </project>
     <project dir="class/System.Net" library="System.Net-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -d:NET_3_5 -nowarn:1720 -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -d:NET_3_5 -nowarn:1720 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Net.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Net.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.dll.sources</response>
     </project>
     <project dir="class/System.Json" library="System.Json-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Json.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Json.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Json.dll.sources</response>
     </project>
     <project dir="class/System.Json" library="System.Json-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Json.dll -r:System -r:System.Xml -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Json.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>net_4_x_System.Json_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Json_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Json_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.CSharp" library="Microsoft.CSharp-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:Mono.CSharp</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/Mono.CSharp.dll</flags>
       <output>Microsoft.CSharp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.CSharp.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.CSharp.dll.sources</response>
     </project>
     <project dir="class/System.Xaml" library="System.Xaml-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Xaml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Xaml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xaml.dll.sources</response>
     </project>
     <project dir="class/System.Xaml" library="System.Xaml-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Xaml.dll -r:System -r:System.Xml -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Xaml.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>net_4_x_System.Xaml_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Xaml_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Xaml_test.dll.response</response>
     </project>
     <project dir="class/WindowsBase" library="WindowsBase-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -r:System -r:System.Xml -r:System.Xaml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Xaml.dll</flags>
       <output>WindowsBase.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/WindowsBase.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>WindowsBase.dll.sources</response>
     </project>
     <project dir="class/WindowsBase" library="WindowsBase-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/WindowsBase.dll -unsafe -r:WindowsBase.dll -r:System.dll -r:System.Xml.dll -r:System.Core.dll -r:System.Xaml.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/WindowsBase.dll -unsafe</flags>
       <output>net_4_x_WindowsBase_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_WindowsBase_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_WindowsBase_test.dll.response</response>
     </project>
     <project dir="class/System.ServiceModel.Activation" library="System.ServiceModel.Activation-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -lib:./../../class/lib/net_4_x/plainservice -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/plainservice/System.ServiceModel.dll</flags>
       <output>System.ServiceModel.Activation.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.Activation.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Activation.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Routing" library="System.ServiceModel.Routing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System -r:System.Xml -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Core -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.ServiceModel.Routing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.Routing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Routing.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System -r:System.Xml -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Core -r:System.Xml.Linq -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.ServiceModel.Discovery.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.Discovery.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Discovery.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Discovery" library="System.ServiceModel.Discovery-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceModel.Discovery.dll -d:NET_3_5 -d:NET_3_0 -r:System.Configuration.dll -r:System -r:System.Xml -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Core -r:System.Xml.Linq -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceModel.Discovery.dll -d:NET_3_5 -d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>net_4_x_System.ServiceModel.Discovery_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ServiceModel.Discovery_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ServiceModel.Discovery_test.dll.response</response>
     </project>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:414 -r:System -r:System.Data -r:System.Configuration -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:414 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Runtime.Caching.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Runtime.Caching.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Caching.dll.sources</response>
     </project>
     <project dir="class/System.Runtime.Caching" library="System.Runtime.Caching-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Caching.dll -nowarn:414 -r:System -r:System.Data -r:System.Configuration -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Runtime.Caching.dll -nowarn:414 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>net_4_x_System.Runtime.Caching_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Runtime.Caching_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Runtime.Caching_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Web.Infrastructure" library="Microsoft.Web.Infrastructure-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Configuration -r:System.Web</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Web.dll</flags>
       <output>Microsoft.Web.Infrastructure.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Web.Infrastructure.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Web.Infrastructure.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:System -r:System.Xml -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Core -r:System.Configuration -r:System.Web.Extensions -r:System.ServiceModel.Activation</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Activation.dll</flags>
       <output>System.ServiceModel.Web.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ServiceModel.Web.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Web.dll.sources</response>
     </project>
     <project dir="class/System.ServiceModel.Web" library="System.ServiceModel.Web-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceModel.Web.dll -d:NET_3_5 -d:NET_3_0 -r:System -r:System.Xml -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Core -r:System.Configuration -r:System.Web.Extensions -r:System.ServiceModel.Activation</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.ServiceModel.Web.dll -d:NET_3_5 -d:NET_3_0 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Activation.dll</flags>
       <output>net_4_x_System.ServiceModel.Web_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.ServiceModel.Web_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.ServiceModel.Web_test.dll.response</response>
     </project>
     <project dir="class/System.Net.Http" library="System.Net.Http-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Net.Http.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Http.dll.sources</response>
     </project>
     <project dir="class/System.Net.Http" library="System.Net.Http-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:System.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Net.Http.dll</flags>
       <output>net_4_x_System.Net.Http_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Net.Http_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Net.Http_test.dll.response</response>
     </project>
     <project dir="class/System.Net.Http.WebRequest" library="System.Net.Http.WebRequest-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Net.Http -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Http.WebRequest.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Net.Http.WebRequest.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Http.WebRequest.dll.sources</response>
     </project>
     <project dir="class/System.Web.Razor" library="System.Web.Razor-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /d:ASPNETWEBPAGES /resource:System.Web.Razor.Resources.RazorResources.resources /resource:System.Web.Razor.Common.CommonResources.resources -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /d:ASPNETWEBPAGES -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Web.Razor.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Razor.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.Razor.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx System.Web.Razor.Resources.RazorResources,../../../external/aspnetwebstack/src/System.Web.Razor/Resources/RazorResources.resx</resources>
       <response>System.Web.Razor.dll.sources</response>
     </project>
     <project dir="class/System.Web.WebPages.Deployment" library="System.Web.WebPages.Deployment-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Deployment.Common.CommonResources.resources /resource:System.Web.WebPages.Deployment.Resources.ConfigurationResources.resources -r:System -r:System.Core -r:System.Configuration -r:System.Web -r:Microsoft.Web.Infrastructure</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub -delaysign /d:ASPNETWEBPAGES -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/Microsoft.Web.Infrastructure.dll</flags>
       <output>System.Web.WebPages.Deployment.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.WebPages.Deployment.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.WebPages.Deployment.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx System.Web.WebPages.Deployment.Resources.ConfigurationResources,../../../external/aspnetwebstack/src/System.Web.WebPages.Deployment/Resources/ConfigurationResources.resx</resources>
       <response>System.Web.WebPages.Deployment.dll.sources</response>
     </project>
     <project dir="class/System.Web.WebPages" library="System.Web.WebPages-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Resources.WebPageResources.resources /resource:System.Web.WebPages.Common.CommonResources.resources -r:Microsoft.CSharp -r:Microsoft.Web.Infrastructure -r:System -r:System.ComponentModel.DataAnnotations -r:System.Configuration -r:System.Core -r:System.Data.Linq -r:System.Web -r:System.Web.WebPages.Deployment -r:System.Web.Razor -r:System.Xml -r:System.Xml.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /d:ASPNETWEBPAGES -r:./../../class/lib/net_4_x/Microsoft.CSharp.dll -r:./../../class/lib/net_4_x/Microsoft.Web.Infrastructure.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.WebPages.Deployment.dll -r:./../../class/lib/net_4_x/System.Web.Razor.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll</flags>
       <output>System.Web.WebPages.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.WebPages.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.WebPages.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx System.Web.WebPages.Resources.WebPageResources,../../../external/aspnetwebstack/src/System.Web.WebPages/Resources/WebPageResources.resx</resources>
       <response>System.Web.WebPages.dll.sources</response>
     </project>
     <project dir="class/System.Web.WebPages.Razor" library="System.Web.WebPages.Razor-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /d:ASPNETWEBPAGES /resource:System.Web.WebPages.Razor.Resources.RazorWebResources.resources /resource:System.Web.WebPages.Razor.Common.CommonResources.resources -r:System -r:System.Core -r:System.Configuration -r:System.Web -r:System.Web.WebPages -r:System.Web.Razor</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /delaysign /d:ASPNETWEBPAGES -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.WebPages.dll -r:./../../class/lib/net_4_x/System.Web.Razor.dll</flags>
       <output>System.Web.WebPages.Razor.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.WebPages.Razor.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.WebPages.Razor.Common.CommonResources,../../../external/aspnetwebstack/src/CommonResources.resx System.Web.WebPages.Razor.Resources.RazorWebResources,../../../external/aspnetwebstack/src/System.Web.WebPages.Razor/Resources/RazorWebResources.resx</resources>
       <response>System.Web.WebPages.Razor.dll.sources</response>
     </project>
     <project dir="class/System.Web.Mvc3" library="System.Web.Mvc3-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /d:MONO /delaysign /resource:Mvc/Resources/MvcResources.resources,System.Web.Mvc.Resources.MvcResources.resources -r:Microsoft.Web.Infrastructure -r:System -r:System.Core -r:System.Configuration -r:System.Data -r:System.Xml -r:System.Web -r:System.Web.Abstractions -r:System.Web.Routing -r:System.Web.Extensions -r:System.ComponentModel.DataAnnotations -r:System.Data.Linq -r:System.Runtime.Caching -r:System.Web.Razor -r:System.Web.WebPages.Razor -r:System.Web.WebPages</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /warn:1 /keyfile:../winfx.pub /d:MONO /delaysign -r:./../../class/lib/net_4_x/Microsoft.Web.Infrastructure.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/System.Web.Abstractions.dll -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:./../../class/lib/net_4_x/System.Web.Extensions.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll -r:./../../class/lib/net_4_x/System.Runtime.Caching.dll -r:./../../class/lib/net_4_x/System.Web.Razor.dll -r:./../../class/lib/net_4_x/System.Web.WebPages.Razor.dll -r:./../../class/lib/net_4_x/System.Web.WebPages.dll</flags>
       <output>System.Web.Mvc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Mvc.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.Mvc.Resources.MvcResources,Mvc/Resources/MvcResources.resx</resources>
       <response>System.Web.Mvc3.dll.sources</response>
     </project>
     <project dir="class/System.Net.Http.Formatting" library="System.Net.Http.Formatting-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -resource:System.Net.Http.Properties.CommonWebApiResources.resources -resource:System.Net.Http.Properties.Resources.resources -r:System.Core -r:System -r:System.Net.Http -r:System.Xml -r:System.Runtime.Serialization -r:System.Xml.Linq -r:System.Data -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Net.Http.Formatting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Net.Http.Formatting.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Net.Http.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx System.Net.Http.Properties.Resources,../../../external/aspnetwebstack/src/System.Net.Http.Formatting/Properties/Resources.resx</resources>
       <response>System.Net.Http.Formatting.dll.sources</response>
     </project>
     <project dir="class/System.Web.Http" library="System.Web.Http-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -resource:System.Web.Http.Properties.CommonWebApiResources.resources -resource:System.Web.Http.Properties.SRResources.resources -r:System.Core -r:System -r:System.Xml -r:System.Net.Http -r:System.ComponentModel.DataAnnotations -r:System.Net.Http.Formatting -r:System.Runtime.Caching -r:System.Runtime.Serialization -r:System.Data.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Net.Http.Formatting.dll -r:./../../class/lib/net_4_x/System.Runtime.Caching.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.Data.Linq.dll</flags>
       <output>System.Web.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Http.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.Http.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx System.Web.Http.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http/Properties/SRResources.resx</resources>
       <response>System.Web.Http.dll.sources</response>
     </project>
     <project dir="class/System.Web.Http.SelfHost" library="System.Web.Http.SelfHost-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:System.Core -r:System -r:System.Xml -r:System.Configuration -r:System.Net.Http -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.IdentityModel -r:System.Web.Http -r:System.Net.Http.Formatting</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.Web.Http.dll -r:./../../class/lib/net_4_x/System.Net.Http.Formatting.dll</flags>
       <output>System.Web.Http.SelfHost.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Http.SelfHost.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.Http.SelfHost.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx System.Web.Http.SelfHost.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http.SelfHost/Properties/SRResources.resx</resources>
       <response>System.Web.Http.SelfHost.dll.sources</response>
     </project>
     <project dir="class/System.Web.Http.WebHost" library="System.Web.Http.WebHost-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:System.Core -r:System -r:System.Xml -r:System.Configuration -r:System.Net.Http -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.IdentityModel -r:System.Web.Http -r:System.Net.Http.Formatting -r:System.Web.Routing -r:System.Web -r:Microsoft.Web.Infrastructure</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:ASPNETMVC -keyfile:../winfx.pub -delaysign -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Configuration.dll -r:./../../class/lib/net_4_x/System.Net.Http.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.IdentityModel.dll -r:./../../class/lib/net_4_x/System.Web.Http.dll -r:./../../class/lib/net_4_x/System.Net.Http.Formatting.dll -r:./../../class/lib/net_4_x/System.Web.Routing.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/Microsoft.Web.Infrastructure.dll</flags>
       <output>System.Web.Http.WebHost.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Web.Http.WebHost.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Web.Http.WebHost.Properties.CommonWebApiResources,../../../external/aspnetwebstack/src/Common/CommonWebApiResources.resx System.Web.Http.WebHost.Properties.SRResources,../../../external/aspnetwebstack/src/System.Web.Http.WebHost/Properties/SRResources.resx</resources>
       <response>System.Web.Http.WebHost.dll.sources</response>
     </project>
     <project dir="class/Mono.Security.Providers.NewSystemSource" library="Mono.Security.Providers.NewSystemSource-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:SECURITY_DEP -d:MONO_SECURITY_ALIAS -r:MonoSecurity=Mono.Security -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -d:MONO -d:FEATURE_PAL -d:MONO_FEATURE_NEW_TLS -d:MONO_FEATURE_NEW_SYSTEM_SOURCE -d:DISABLE_CAS_USE -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:SECURITY_DEP -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -d:MONO -d:FEATURE_PAL -d:MONO_FEATURE_NEW_TLS -d:MONO_FEATURE_NEW_SYSTEM_SOURCE -d:DISABLE_CAS_USE -d:MONO_SECURITY_ALIAS -r:./../../class/lib/net_4_x/System.dll -r:MonoSecurity=./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Mono.Security.Providers.NewSystemSource.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Security.Providers.NewSystemSource.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Security.Providers.NewSystemSource.dll.sources</response>
     </project>
     <project dir="class/Mono.Security.Providers.NewTls" library="Mono.Security.Providers.NewTls-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -r:System.dll -r:NewSystemSource=Mono.Security.Providers.NewSystemSource.dll -r:Mono.Security.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Security.dll -r:NewSystemSource=./../../class/lib/net_4_x/Mono.Security.Providers.NewSystemSource.dll</flags>
       <output>Mono.Security.Providers.NewTls.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Security.Providers.NewTls.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Security.Providers.NewTls.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Build.Framework.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</flags>
       <output>net_4_x_Microsoft.Build.Framework_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Microsoft.Build.Framework_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Microsoft.Build.Framework_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Build.Utilities.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll -r:System.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll -resource:Test/Microsoft.Build.Utilities/Strings.resources</flags>
       <output>net_4_x_Microsoft.Build.Utilities_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Microsoft.Build.Utilities_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Microsoft.Build.Utilities_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Build.Engine.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Build.Engine.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll</flags>
       <output>net_4_x_Microsoft.Build.Engine_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Microsoft.Build.Engine_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Microsoft.Build.Engine_test.dll.response</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>Mono.XBuild.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.XBuild.Tasks.dll.sources</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll</flags>
       <output>net_4_x_Mono.XBuild.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.XBuild.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.XBuild.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll /r:./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll -r:System -r:System.Core -r:System.Xml -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll -r:./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll</flags>
       <output>Microsoft.Build.Tasks.v4.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Build.Tasks.v4.0.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Build.Tasks.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Tasks.v4.0.dll /r:System.Xml.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll /r:./../../class/lib/net_4_x/Mono.XBuild.Tasks.dll /r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll /r:System.Core.dll /r:Microsoft.Build.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.Tasks.v4.0.dll</flags>
       <output>net_4_x_Microsoft.Build.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Microsoft.Build.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Microsoft.Build.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.Build.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Build.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.dll /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework /r:Microsoft.Build.Utilities.v4.0.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Microsoft.Build.dll /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll</flags>
       <output>net_4_x_Microsoft.Build_test.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>net_4_x_Microsoft.Build_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Microsoft.Build_test.dll.response</response>
     </project>
     <project dir="class/PEAPI" library="PEAPI-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -nowarn:414,618 -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:414,618 -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>PEAPI.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/PEAPI.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>PEAPI.dll.sources</response>
     </project>
     <project dir="class/I18N/Common" library="I18N-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /unsafe /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>I18N.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.dll.sources</response>
     </project>
     <project dir="class/I18N/West" library="I18N.West-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/I18N.dll</flags>
       <output>I18N.West.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.West.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.West.dll.sources</response>
     </project>
     <project dir="class/I18N/West" library="I18N.West-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.West.dll</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.West.dll</flags>
       <output>net_4_x_I18N.West_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_I18N.West_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../../build/deps/net_4_x_I18N.West_test.dll.response</response>
     </project>
     <project dir="class/I18N/MidEast" library="I18N.MidEast-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/I18N.dll</flags>
       <output>I18N.MidEast.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.MidEast.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.MidEast.dll.sources</response>
     </project>
     <project dir="class/I18N/MidEast" library="I18N.MidEast-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.MidEast.dll</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.MidEast.dll</flags>
       <output>net_4_x_I18N.MidEast_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_I18N.MidEast_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../../build/deps/net_4_x_I18N.MidEast_test.dll.response</response>
     </project>
     <project dir="class/I18N/Other" library="I18N.Other-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/I18N.dll</flags>
       <output>I18N.Other.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.Other.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.Other.dll.sources</response>
     </project>
     <project dir="class/I18N/Rare" library="I18N.Rare-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /r:mscorlib.dll /r:I18N.dll /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/I18N.dll</flags>
       <output>I18N.Rare.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.Rare.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.Rare.dll.sources</response>
     </project>
     <project dir="class/I18N/CJK" library="I18N.CJK-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/I18N.dll</flags>
       <output>I18N.CJK.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/I18N.CJK.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>I18N.CJK.dll.sources</response>
     </project>
     <project dir="class/I18N/CJK" library="I18N.CJK-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /r:mscorlib.dll /r:I18N.dll /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.CJK.dll</flags>
+      <flags>/codepage:65001 /unsafe /resource:big5.table /resource:gb2312.table /resource:jis.table /resource:ks.table /resource:gb18030.table /define:DISABLE_UNSAFE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../../class/lib/net_4_x/I18N.CJK.dll</flags>
       <output>net_4_x_I18N.CJK_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_I18N.CJK_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../../build/deps/net_4_x_I18N.CJK_test.dll.response</response>
     </project>
     <project dir="class/Mono.Http" library="Mono.Http-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -nowarn:618 -r:System -r:System.Xml -r:System.Web -r:ICSharpCode.SharpZipLib -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Web.dll -r:./../../class/lib/net_4_x/ICSharpCode.SharpZipLib.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Mono.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Http.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Http.dll.sources</response>
     </project>
     <project dir="class/Mono.Cairo" library="Mono.Cairo-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Cairo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Cairo.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Cairo.dll.sources</response>
     </project>
     <project dir="class/Mono.Cecil" library="Mono.Cecil-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -keyfile:../mono.snk -d:NET_3_5 -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -keyfile:../mono.snk -d:NET_3_5 /publicsign -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>Mono.Cecil.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Cecil.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Cecil.dll.sources</response>
     </project>
     <project dir="class/Mono.Cecil.Mdb" library="Mono.Cecil.Mdb-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /d:CECIL -keyfile:../mono.snk -r:System -r:Mono.Cecil</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:CECIL -keyfile:../mono.snk -publicsign -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Cecil.dll</flags>
       <output>Mono.Cecil.Mdb.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Cecil.Mdb.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Cecil.Mdb.dll.sources</response>
     </project>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk -r:System -r:Mono.Cecil -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -D:MONO_DATACONVERTER_STATIC_METHODS -keyfile:../mono.snk /publicsign -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Cecil.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>Mono.Debugger.Soft.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Debugger.Soft.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Debugger.Soft.dll.sources</response>
     </project>
     <project dir="class/Mono.Debugger.Soft" library="Mono.Debugger.Soft-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Debugger.Soft.dll /r:Mono.Cecil.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Debugger.Soft.dll</flags>
       <output>net_4_x_Mono.Debugger.Soft_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Debugger.Soft_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Debugger.Soft_test.dll.response</response>
     </project>
     <project dir="class/Mono.C5" library="Mono.C5-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -nowarn:169,219,414,1030,3001,3005,3006 -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:169,219,414,1030,3001,3005,3006 -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.C5.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.C5.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.C5.dll.sources</response>
     </project>
     <project dir="class/Mono.C5" library="Mono.C5-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.C5.dll /r:mscorlib.dll -nowarn:169,219,414,1030,3001,3005,3006 -r:System -nowarn:0618 -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.C5.dll -nowarn:169,219,414,1030,3001,3005,3006 -r:./../../class/lib/net_4_x/System.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_Mono.C5_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.C5_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.C5_test.dll.response</response>
     </project>
     <project dir="class/Mono.Management" library="Mono.Management-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System -r:Mono.Posix</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll</flags>
       <output>Mono.Management.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Management.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Management.dll.sources</response>
     </project>
     <project dir="class/Mono.Options" library="Mono.Options-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Mono.Options.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Options.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Options.dll.sources</response>
     </project>
     <project dir="class/Mono.Options" library="Mono.Options-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Options.dll /r:Mono.Posix.dll /r:System.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Options.dll</flags>
       <output>net_4_x_Mono.Options_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Options_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Options_test.dll.response</response>
     </project>
     <project dir="class/Mono.Simd" library="Mono.Simd-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll /unsafe -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>Mono.Simd.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Simd.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Simd.dll.sources</response>
     </project>
     <project dir="class/Mono.Tasklets" library="Mono.Tasklets-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>Mono.Tasklets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Tasklets.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Tasklets.dll.sources</response>
     </project>
     <project dir="class/Mono.CodeContracts" library="Mono.CodeContracts-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:Mono.Cecil -r:Mono.Cecil.Mdb</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/Mono.Cecil.dll -r:./../../class/lib/net_4_x/Mono.Cecil.Mdb.dll</flags>
       <output>Mono.CodeContracts.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.CodeContracts.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.CodeContracts.dll.sources</response>
     </project>
     <project dir="class/Mono.CodeContracts" library="Mono.CodeContracts-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.CodeContracts.dll -r:System.Core.dll -debug</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.CodeContracts.dll</flags>
       <output>net_4_x_Mono.CodeContracts_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.CodeContracts_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.CodeContracts_test.dll.response</response>
     </project>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System -d:INSIDE_MONO_PARALLEL -r:mscorlib.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -d:INSIDE_MONO_PARALLEL</flags>
       <output>Mono.Parallel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Parallel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Parallel.dll.sources</response>
     </project>
     <project dir="class/Mono.Parallel" library="Mono.Parallel-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Parallel.dll /r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Parallel.dll</flags>
       <output>net_4_x_Mono.Parallel_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Parallel_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Parallel_test.dll.response</response>
     </project>
     <project dir="class/Mono.Security.Win32" library="Mono.Security.Win32-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe</flags>
       <output>Mono.Security.Win32.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Security.Win32.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Security.Win32.dll.sources</response>
     </project>
     <project dir="class/RabbitMQ.Client/src/apigen" library="RabbitMQ.Client.Apigen-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:System.dll /r:System.Xml.dll /main:RabbitMQ.Client.Apigen.Apigen -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /main:RabbitMQ.Client.Apigen.Apigen -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml</flags>
       <output>RabbitMQ.Client.Apigen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../../class/lib/net_4_x/RabbitMQ.Client.Apigen.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>RabbitMQ.Client.Apigen.exe.sources</response>
     </project>
     <project dir="class/RabbitMQ.Client/src/client" library="RabbitMQ.Client-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:./../../../../class/lib/net_4_x/System.dll -r:./../../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>RabbitMQ.Client.dll</output>
       <built_sources>../../docs/specs/net_4_x-api-0-9.cs ../../docs/specs/net_4_x-api-0-8.cs ../../docs/specs/net_4_x-api-qpid-0-8.cs</built_sources>
       <library_output>./../../../../class/lib/net_4_x/RabbitMQ.Client.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>RabbitMQ.Client.dll.sources</response>
     </project>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:System -r:System.Messaging -r:Mono.Messaging -r:RabbitMQ.Client</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -nowarn:618 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:./../../class/lib/net_4_x/RabbitMQ.Client.dll</flags>
       <output>Mono.Messaging.RabbitMQ.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Messaging.RabbitMQ.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Messaging.RabbitMQ.dll.sources</response>
     </project>
     <project dir="class/Mono.Messaging.RabbitMQ" library="Mono.Messaging.RabbitMQ-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Messaging.RabbitMQ.dll -nowarn:618 -r:System -r:System.Messaging -r:Mono.Messaging -r:RabbitMQ.Client -nowarn:0618 -nowarn:219 -nowarn:169 /r:nunit.mocks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/Mono.Messaging.RabbitMQ.dll -nowarn:618 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Messaging.dll -r:./../../class/lib/net_4_x/Mono.Messaging.dll -r:./../../class/lib/net_4_x/RabbitMQ.Client.dll -nowarn:0618 -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_Mono.Messaging.RabbitMQ_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_Mono.Messaging.RabbitMQ_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_Mono.Messaging.RabbitMQ_test.dll.response</response>
     </project>
     <project dir="class/System.Dynamic" library="System.Dynamic-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -d:CODEPLEX_40 -nowarn:414,169 -r:System.Core -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -d:CODEPLEX_40 -nowarn:414,169 -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Dynamic.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Dynamic.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Dynamic.dll.sources</response>
     </project>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core -r:System.Data -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Windows.Forms.DataVisualization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Windows.Forms.DataVisualization.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Windows.Forms.DataVisualization.dll.sources</response>
     </project>
     <project dir="class/System.Windows.Forms.DataVisualization" library="System.Windows.Forms.DataVisualization-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Windows.Forms.DataVisualization.dll -r:System -r:System.Drawing -r:System.Windows.Forms -r:System.Core -r:System.Data -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Windows.Forms.DataVisualization.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Drawing.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>net_4_x_System.Windows.Forms.DataVisualization_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Windows.Forms.DataVisualization_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Windows.Forms.DataVisualization_test.dll.response</response>
     </project>
     <project dir="class/System.Reactive.Interfaces" library="System.Reactive.Interfaces-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Reactive.Interfaces.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Interfaces.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Interfaces.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Core" library="System.Reactive.Core-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Interfaces.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll</flags>
       <output>System.Reactive.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Core.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Linq" library="System.Reactive.Linq-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Core.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll</flags>
       <output>System.Reactive.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Linq.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Linq.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.PlatformServices" library="System.Reactive.PlatformServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Linq.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll</flags>
       <output>System.Reactive.PlatformServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.PlatformServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.PlatformServices.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Providers" library="System.Reactive.Providers-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Linq.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll</flags>
       <output>System.Reactive.Providers.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Providers.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Providers.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Runtime.Remoting" library="System.Reactive.Runtime.Remoting-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Linq.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll</flags>
       <output>System.Reactive.Runtime.Remoting.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Runtime.Remoting.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Runtime.Remoting.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Windows.Forms" library="System.Reactive.Windows.Forms-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Windows.Forms.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll -r:./../../class/lib/net_4_x/System.Windows.Forms.dll</flags>
       <output>System.Reactive.Windows.Forms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Windows.Forms.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Windows.Forms.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Windows.Threading" library="System.Reactive.Windows.Threading-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:WindowsBase.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq -r:WindowsBase</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll -r:./../../class/lib/net_4_x/WindowsBase.dll</flags>
       <output>System.Reactive.Windows.Threading.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Windows.Threading.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Windows.Threading.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Observable.Aliases" library="System.Reactive.Observable.Aliases-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -r:System.Reactive.Providers.dll -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq -r:System.Reactive.Providers</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll -r:./../../class/lib/net_4_x/System.Reactive.Providers.dll</flags>
       <output>System.Reactive.Observable.Aliases.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Observable.Aliases.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Observable.Aliases.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Experimental" library="System.Reactive.Experimental-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll</flags>
       <output>System.Reactive.Experimental.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Experimental.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Experimental.dll.sources</response>
     </project>
     <project dir="class/System.Reactive.Debugger" library="System.Reactive.Debugger-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:System -r:System.Core -r:System.Reactive.Interfaces -r:System.Reactive.Core -r:System.Reactive.Linq</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig @more_build_args -d:HAS_EDI -d:PREFERASYNC -d:PREFER_ASYNC -d:HAS_AWAIT -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Interfaces.dll -r:./../../class/lib/net_4_x/System.Reactive.Core.dll -r:./../../class/lib/net_4_x/System.Reactive.Linq.dll</flags>
       <output>System.Reactive.Debugger.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Reactive.Debugger.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reactive.Debugger.dll.sources</response>
     </project>
     <project dir="class/System.Data.Services.Client" library="System.Data.Services.Client-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -resource:Client/System.Data.Services.Client.resources -warn:2 -r:System -r:System.Core -r:System.Xml.Linq -r:System.Data -r:System.Xml -r:WindowsBase</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -warn:2 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/WindowsBase.dll</flags>
       <output>System.Data.Services.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.Services.Client.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Data.Services.Client,Client/System.Data.Services.Client.txt</resources>
       <response>System.Data.Services.Client.dll.sources</response>
     </project>
     <project dir="class/System.Data.Services" library="System.Data.Services-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:System -r:System.Core -r:System.ServiceModel -r:System.ServiceModel.Web -r:System.Data.Services.Client -r:System.ServiceModel.Activation</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:NET_3_5 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Web.dll -r:./../../class/lib/net_4_x/System.Data.Services.Client.dll -r:./../../class/lib/net_4_x/System.ServiceModel.Activation.dll</flags>
       <output>System.Data.Services.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.Services.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.Services.dll.sources</response>
     </project>
     <project dir="class/System.Data.Services" library="System.Data.Services-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.Services.dll -r:System.ServiceModel.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.Services.dll</flags>
       <output>net_4_x_System.Data.Services_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Data.Services_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data.Services_test.dll.response</response>
     </project>
     <project dir="class/System.Data.Entity" library="System.Data.Entity-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -warn:2 -r:System -r:System.Core -r:System.Data -r:System.Xml -r:System.Xml.Linq -r:System.Transactions -r:System.Runtime.Serialization -r:System.ComponentModel.DataAnnotations -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -warn:2 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Transactions.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>System.Data.Entity.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.Entity.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.Entity.dll.sources</response>
     </project>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System -r:System.Data -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Data.DataSetExtensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Data.DataSetExtensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.DataSetExtensions.dll.sources</response>
     </project>
     <project dir="class/System.Data.DataSetExtensions" library="System.Data.DataSetExtensions-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.DataSetExtensions.dll -r:System.Core -r:System -r:System.Data -r:System.Xml -doc:net_4_x_System.Data.DataSetExtensions_test.xml -nowarn:219 -nowarn:169</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Data.DataSetExtensions.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Xml.dll -doc:net_4_x_System.Data.DataSetExtensions_test.xml -nowarn:219 -nowarn:169</flags>
       <output>net_4_x_System.Data.DataSetExtensions_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Data.DataSetExtensions_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Data.DataSetExtensions_test.dll.response</response>
     </project>
     <project dir="class/System.Json.Microsoft" library="System.Json.Microsoft-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /resource:System.Json.Properties.Resources.resources -d:FEATURE_DYNAMIC -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:Microsoft.CSharp</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:ASPNETMVC -keyfile:../winfx.pub -delaysign -d:FEATURE_DYNAMIC -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/Microsoft.CSharp.dll</flags>
       <output>System.Json.Microsoft.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Json.Microsoft.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>System.Json.Properties.Resources,System.Json/Properties/Resources.resx</resources>
       <response>System.Json.Microsoft.dll.sources</response>
     </project>
     <project dir="class/System.Json.Microsoft" library="System.Json.Microsoft-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Json.Microsoft.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign /resource:System.Json.Properties.Resources.resources -d:FEATURE_DYNAMIC -r:System -r:System.Xml -r:System.Core -r:System.Runtime.Serialization -r:Microsoft.CSharp</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Json.Microsoft.dll /d:ASPNETMVC -keyfile:../winfx.pub -delaysign -d:FEATURE_DYNAMIC -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../class/lib/net_4_x/Microsoft.CSharp.dll</flags>
       <output>net_4_x_System.Json.Microsoft_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Json.Microsoft_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Json.Microsoft_test.dll.response</response>
     </project>
     <project dir="class/System.Threading.Tasks.Dataflow" library="System.Threading.Tasks.Dataflow-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System -r:mscorlib.dll -d:CONCURRENT_COLLECTIONS</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.dll -d:CONCURRENT_COLLECTIONS</flags>
       <output>System.Threading.Tasks.Dataflow.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Threading.Tasks.Dataflow.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Tasks.Dataflow.dll.sources</response>
     </project>
     <project dir="class/System.Threading.Tasks.Dataflow" library="System.Threading.Tasks.Dataflow-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Threading.Tasks.Dataflow.dll -r:System.Core.dll -r:System.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/System.Threading.Tasks.Dataflow.dll</flags>
       <output>net_4_x_System.Threading.Tasks.Dataflow_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_System.Threading.Tasks.Dataflow_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_System.Threading.Tasks.Dataflow_test.dll.response</response>
     </project>
     <project dir="class/System.ComponentModel.Composition.4.5" library="System.ComponentModel.Composition-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -d:CLR40 -resource:Microsoft.Internal.Strings.resources -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414 -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -d:CLR40 -d:USE_ECMA_KEY,FEATURE_REFLECTIONCONTEXT,FEATURE_REFLECTIONFILEIO,FEATURE_SERIALIZATION,FEATURE_SLIMLOCK -nowarn:219,414 -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.ComponentModel.Composition.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.ComponentModel.Composition.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources>Microsoft.Internal.Strings,src/ComponentModel/Strings.resx</resources>
       <response>System.ComponentModel.Composition.dll.sources</response>
     </project>
     <project dir="class/System.Windows" library="System.Windows-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>System.Windows.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Windows.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Windows.dll.sources</response>
     </project>
     <project dir="class/System.Xml.Serialization" library="System.Xml.Serialization-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig -r:System.Xml -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.ServiceModel.dll</flags>
       <output>System.Xml.Serialization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.Xml.Serialization.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.Serialization.dll.sources</response>
     </project>
     <project dir="class/Mono.Security.Providers.DotNet" library="Mono.Security.Providers.DotNet-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -r:System -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Mono.Security.Providers.DotNet.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Security.Providers.DotNet.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Security.Providers.DotNet.dll.sources</response>
     </project>
     <project dir="class/Mono.Security.Providers.OldTls" library="Mono.Security.Providers.OldTls-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -d:SECURITY_DEP -r:System -r:Mono.Security</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -unsafe -nowarn:1030 -keyfile:../mono.pub -delaysign -d:SECURITY_DEP -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/Mono.Security.dll</flags>
       <output>Mono.Security.Providers.OldTls.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Security.Providers.OldTls.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Security.Providers.OldTls.dll.sources</response>
     </project>
     <project dir="class/System.DirectoryServices.Protocols" library="System.DirectoryServices.Protocols-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:System -r:System.DirectoryServices -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.DirectoryServices.dll -r:./../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.DirectoryServices.Protocols.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/System.DirectoryServices.Protocols.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.DirectoryServices.Protocols.dll.sources</response>
     </project>
     <project dir="class/Microsoft.VisualC" library="Microsoft.VisualC-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:mscorlib.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll</flags>
       <output>Microsoft.VisualC.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Microsoft.VisualC.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.VisualC.dll.sources</response>
     </project>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -r:mscorlib.dll -r:System -r:System.Data -r:System.Core -r:System.Configuration</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Data.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>WebMatrix.Data.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/WebMatrix.Data.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>WebMatrix.Data.dll.sources</response>
     </project>
     <project dir="class/WebMatrix.Data" library="WebMatrix.Data-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/WebMatrix.Data.dll -r:System.dll -r:System.Core.dll -r:System.Data.dll -r:Mono.Data.Sqlite.dll -r:Microsoft.CSharp.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/WebMatrix.Data.dll</flags>
       <output>net_4_x_WebMatrix.Data_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_WebMatrix.Data_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_WebMatrix.Data_test.dll.response</response>
     </project>
     <project dir="class/monodoc" library="monodoc-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /nowarn:618,612,672,809 /define:LEGACY_MODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /unsafe /codepage:utf8 /nowarn:169,164,162,168,219,618,612 /resource:../../docs/monodoc.xml,monodoc.xml /resource:Resources/base.css,base.css /resource:Resources/ecmaspec-html-css.xsl,ecmaspec-html-css.xsl /resource:Resources/ecmaspec-html.xsl,ecmaspec-html.xsl /resource:Resources/ecmaspec.css,ecmaspec.css /resource:Resources/helper.js,helper.js /resource:Resources/home.html,home.html /resource:Resources/Lminus.gif,Lminus.gif /resource:Resources/Lplus.gif,Lplus.gif /resource:Resources/creativecommons.png,creativecommons.png /resource:Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:Resources/mdoc-sections.xsl,mdoc-sections.xsl /resource:Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/mono-ecma-impl.xsl,mono-ecma-impl.xsl /resource:Resources/mono-ecma.css,mono-ecma.css /resource:Resources/mono-ecma.xsl,mono-ecma.xsl /resource:Resources/toc-html.xsl,toc-html.xsl /resource:Resources/images/bc_bg.png,bc_bg.png /resource:Resources/images/bc_separator.png,bc_separator.png /resource:Resources/images/error.png,error.png /resource:Resources/images/hatch.png,hatch.png /resource:Resources/images/headerbg.png,headerbg.png /resource:Resources/images/help.png,help.png /resource:Resources/images/house.png,house.png /resource:Resources/images/members.png,members.png /resource:Resources/images/namespace.png,namespace.png /resource:Resources/images/privclass.png,privclass.png /resource:Resources/images/privdelegate.png,privdelegate.png /resource:Resources/images/privenumeration.png,privenumeration.png /resource:Resources/images/privevent.png,privevent.png /resource:Resources/images/privextension.png,privextension.png /resource:Resources/images/privfield.png,privfield.png /resource:Resources/images/privinterface.png,privinterface.png /resource:Resources/images/privmethod.png,privmethod.png /resource:Resources/images/privproperty.png,privproperty.png /resource:Resources/images/privstructure.png,privstructure.png /resource:Resources/images/protclass.png,protclass.png /resource:Resources/images/protdelegate.png,protdelegate.png /resource:Resources/images/protenumeration.png,protenumeration.png /resource:Resources/images/protevent.png,protevent.png /resource:Resources/images/protextension.png,protextension.png /resource:Resources/images/protfield.png,protfield.png /resource:Resources/images/protinterface.png,protinterface.png /resource:Resources/images/protmethod.png,protmethod.png /resource:Resources/images/protproperty.png,protproperty.png /resource:Resources/images/protstructure.png,protstructure.png /resource:Resources/images/pubclass.png,pubclass.png /resource:Resources/images/pubdelegate.png,pubdelegate.png /resource:Resources/images/pubenumeration.png,pubenumeration.png /resource:Resources/images/pubevent.png,pubevent.png /resource:Resources/images/pubextension.png,pubextension.png /resource:Resources/images/pubfield.png,pubfield.png /resource:Resources/images/pubinterface.png,pubinterface.png /resource:Resources/images/pubmethod.png,pubmethod.png /resource:Resources/images/pubproperty.png,pubproperty.png /resource:Resources/images/pubstructure.png,pubstructure.png /resource:Resources/images/reference.png,reference.png /resource:Resources/images/treebg.png,treebg.png /r:mscorlib.dll -r:ICSharpCode.SharpZipLib -r:System -r:System.Core -r:System.Xml -r:System.Xml.Linq -r:System.Configuration</flags>
+      <flags>/codepage:65001 /nowarn:618,612,672,809 /define:LEGACY_MODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /unsafe /nowarn:169,164,162,168,219,618,612 /resource:../../docs/monodoc.xml,monodoc.xml /resource:Resources/base.css,base.css /resource:Resources/ecmaspec-html-css.xsl,ecmaspec-html-css.xsl /resource:Resources/ecmaspec-html.xsl,ecmaspec-html.xsl /resource:Resources/ecmaspec.css,ecmaspec.css /resource:Resources/helper.js,helper.js /resource:Resources/home.html,home.html /resource:Resources/Lminus.gif,Lminus.gif /resource:Resources/Lplus.gif,Lplus.gif /resource:Resources/creativecommons.png,creativecommons.png /resource:Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:Resources/mdoc-sections.xsl,mdoc-sections.xsl /resource:Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/mono-ecma-impl.xsl,mono-ecma-impl.xsl /resource:Resources/mono-ecma.css,mono-ecma.css /resource:Resources/mono-ecma.xsl,mono-ecma.xsl /resource:Resources/toc-html.xsl,toc-html.xsl /resource:Resources/images/bc_bg.png,bc_bg.png /resource:Resources/images/bc_separator.png,bc_separator.png /resource:Resources/images/error.png,error.png /resource:Resources/images/hatch.png,hatch.png /resource:Resources/images/headerbg.png,headerbg.png /resource:Resources/images/help.png,help.png /resource:Resources/images/house.png,house.png /resource:Resources/images/members.png,members.png /resource:Resources/images/namespace.png,namespace.png /resource:Resources/images/privclass.png,privclass.png /resource:Resources/images/privdelegate.png,privdelegate.png /resource:Resources/images/privenumeration.png,privenumeration.png /resource:Resources/images/privevent.png,privevent.png /resource:Resources/images/privextension.png,privextension.png /resource:Resources/images/privfield.png,privfield.png /resource:Resources/images/privinterface.png,privinterface.png /resource:Resources/images/privmethod.png,privmethod.png /resource:Resources/images/privproperty.png,privproperty.png /resource:Resources/images/privstructure.png,privstructure.png /resource:Resources/images/protclass.png,protclass.png /resource:Resources/images/protdelegate.png,protdelegate.png /resource:Resources/images/protenumeration.png,protenumeration.png /resource:Resources/images/protevent.png,protevent.png /resource:Resources/images/protextension.png,protextension.png /resource:Resources/images/protfield.png,protfield.png /resource:Resources/images/protinterface.png,protinterface.png /resource:Resources/images/protmethod.png,protmethod.png /resource:Resources/images/protproperty.png,protproperty.png /resource:Resources/images/protstructure.png,protstructure.png /resource:Resources/images/pubclass.png,pubclass.png /resource:Resources/images/pubdelegate.png,pubdelegate.png /resource:Resources/images/pubenumeration.png,pubenumeration.png /resource:Resources/images/pubevent.png,pubevent.png /resource:Resources/images/pubextension.png,pubextension.png /resource:Resources/images/pubfield.png,pubfield.png /resource:Resources/images/pubinterface.png,pubinterface.png /resource:Resources/images/pubmethod.png,pubmethod.png /resource:Resources/images/pubproperty.png,pubproperty.png /resource:Resources/images/pubstructure.png,pubstructure.png /resource:Resources/images/reference.png,reference.png /resource:Resources/images/treebg.png,treebg.png /publicsign -r:./../../class/lib/net_4_x/ICSharpCode.SharpZipLib.dll -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../class/lib/net_4_x/System.Configuration.dll</flags>
       <output>monodoc.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/monodoc.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>monodoc.dll.sources</response>
     </project>
     <project dir="class/monodoc" library="monodoc-tests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /nowarn:618,612,672,809 /define:LEGACY_MODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/monodoc.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 /nowarn:618,612,672,809 /define:LEGACY_MODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize -r:./../../class/lib/net_4_x/monodoc.dll</flags>
       <output>net_4_x_monodoc_test.dll</output>
       <built_sources></built_sources>
       <library_output>net_4_x_monodoc_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>./../../build/deps/net_4_x_monodoc_test.dll.response</response>
     </project>
+    <project dir="class/System.Deployment" library="System.Deployment-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../msfinal.pub</flags>
+      <output>System.Deployment.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Deployment.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Deployment.dll.sources</response>
+    </project>
+    <project dir="class/System.Web.Mobile" library="System.Web.Mobile-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../msfinal.pub</flags>
+      <output>System.Web.Mobile.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Web.Mobile.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Web.Mobile.dll.sources</response>
+    </project>
+    <project dir="class/System.Web.RegularExpressions" library="System.Web.RegularExpressions-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../msfinal.pub</flags>
+      <output>System.Web.RegularExpressions.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Web.RegularExpressions.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Web.RegularExpressions.dll.sources</response>
+    </project>
+    <project dir="class/System.Workflow.Activities" library="System.Workflow.Activities-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../winfx.pub</flags>
+      <output>System.Workflow.Activities.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Workflow.Activities.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Workflow.Activities.dll.sources</response>
+    </project>
+    <project dir="class/System.Workflow.ComponentModel" library="System.Workflow.ComponentModel-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../winfx.pub</flags>
+      <output>System.Workflow.ComponentModel.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Workflow.ComponentModel.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Workflow.ComponentModel.dll.sources</response>
+    </project>
+    <project dir="class/System.Workflow.Runtime" library="System.Workflow.Runtime-net_4_x">
+      <boot>false</boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -delaysign -keyfile:../winfx.pub</flags>
+      <output>System.Workflow.Runtime.dll</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/System.Workflow.Runtime.dll</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>System.Workflow.Runtime.dll.sources</response>
+    </project>
     <project dir="class/Facades/System.Collections.Concurrent" library="Facades_System.Collections.Concurrent-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Collections.Concurrent.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Collections.Concurrent.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Collections.Concurrent.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Collections" library="Facades_System.Collections-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Collections.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Collections.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Collections.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ComponentModel.Annotations" library="Facades_System.ComponentModel.Annotations-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ComponentModel.DataAnnotations</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ComponentModel.DataAnnotations.dll</flags>
       <output>System.ComponentModel.Annotations.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ComponentModel.Annotations.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.Annotations.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ComponentModel.EventBasedAsync" library="Facades_System.ComponentModel.EventBasedAsync-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.ComponentModel.EventBasedAsync.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ComponentModel.EventBasedAsync.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.EventBasedAsync.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ComponentModel" library="Facades_System.ComponentModel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.ComponentModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ComponentModel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.Contracts" library="Facades_System.Diagnostics.Contracts-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Diagnostics.Contracts.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.Contracts.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.Contracts.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.Debug" library="Facades_System.Diagnostics.Debug-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.Debug.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.Debug.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.Debug.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.Tracing" library="Facades_System.Diagnostics.Tracing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Diagnostics.Tracing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.Tracing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.Tracing.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.Tools" library="Facades_System.Diagnostics.Tools-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.Tools.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.Tools.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.Tools.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Dynamic.Runtime" library="Facades_System.Dynamic.Runtime-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Dynamic.Runtime.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Dynamic.Runtime.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Dynamic.Runtime.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Globalization" library="Facades_System.Globalization-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Globalization.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Globalization.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Globalization.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO" library="Facades_System.IO-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Linq.Expressions" library="Facades_System.Linq.Expressions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Linq.Expressions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Linq.Expressions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Linq.Expressions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Linq.Parallel" library="Facades_System.Linq.Parallel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Linq.Parallel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Linq.Parallel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Linq.Parallel.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Linq.Queryable" library="Facades_System.Linq.Queryable-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Linq.Queryable.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Linq.Queryable.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Linq.Queryable.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Linq" library="Facades_System.Linq-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Linq.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Linq.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Linq.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.NetworkInformation" library="Facades_System.Net.NetworkInformation-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.NetworkInformation.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.NetworkInformation.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.NetworkInformation.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Primitives" library="Facades_System.Net.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Requests" library="Facades_System.Net.Requests-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Requests.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Requests.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Requests.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ObjectModel" library="Facades_System.ObjectModel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.ObjectModel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ObjectModel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ObjectModel.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.Extensions" library="Facades_System.Reflection.Extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.Extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.Extensions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.Primitives" library="Facades_System.Reflection.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection" library="Facades_System.Reflection-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Resources.ResourceManager" library="Facades_System.Resources.ResourceManager-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Resources.ResourceManager.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Resources.ResourceManager.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Resources.ResourceManager.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Extensions" library="Facades_System.Runtime.Extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Runtime.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Extensions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.InteropServices" library="Facades_System.Runtime.InteropServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Runtime.InteropServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.InteropServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.InteropServices.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.InteropServices.WindowsRuntime" library="Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Runtime.InteropServices.WindowsRuntime.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.InteropServices.WindowsRuntime.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.InteropServices.WindowsRuntime.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Numerics" library="Facades_System.Runtime.Numerics-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Numerics</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Numerics.dll</flags>
       <output>System.Runtime.Numerics.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Numerics.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Numerics.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Serialization.Json" library="Facades_System.Runtime.Serialization.Json-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>System.Runtime.Serialization.Json.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Serialization.Json.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Serialization.Json.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Serialization.Primitives" library="Facades_System.Runtime.Serialization.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Runtime.Serialization</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Runtime.Serialization.dll</flags>
       <output>System.Runtime.Serialization.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Serialization.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Serialization.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Serialization.Xml" library="Facades_System.Runtime.Serialization.Xml-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Runtime.Serialization -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Runtime.Serialization.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Runtime.Serialization.Xml.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Serialization.Xml.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Serialization.Xml.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime" library="Facades_System.Runtime-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.ComponentModel.Composition -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.ComponentModel.Composition.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Runtime.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Principal" library="Facades_System.Security.Principal-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Security.Principal.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Principal.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Principal.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceModel.Http" library="Facades_System.ServiceModel.Http-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ServiceModel.dll</flags>
       <output>System.ServiceModel.Http.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceModel.Http.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Http.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceModel.Primitives" library="Facades_System.ServiceModel.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ServiceModel -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ServiceModel.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.ServiceModel.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceModel.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceModel.Security" library="Facades_System.ServiceModel.Security-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ServiceModel.dll</flags>
       <output>System.ServiceModel.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceModel.Security.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Security.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Text.Encoding.Extensions" library="Facades_System.Text.Encoding.Extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Text.Encoding.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Text.Encoding.Extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Text.Encoding.Extensions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Text.Encoding" library="Facades_System.Text.Encoding-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Text.Encoding.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Text.Encoding.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Text.Encoding.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Text.RegularExpressions" library="Facades_System.Text.RegularExpressions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Text.RegularExpressions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Text.RegularExpressions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Text.RegularExpressions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.Tasks.Parallel" library="Facades_System.Threading.Tasks.Parallel-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Threading.Tasks.Parallel.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.Tasks.Parallel.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Tasks.Parallel.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.Tasks" library="Facades_System.Threading.Tasks-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Threading.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.Tasks.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Tasks.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.Timer" library="Facades_System.Threading.Timer-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Threading.Timer.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.Timer.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Timer.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading" library="Facades_System.Threading-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Threading.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.ReaderWriter" library="Facades_System.Xml.ReaderWriter-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.ReaderWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.ReaderWriter.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.ReaderWriter.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.XDocument" library="Facades_System.Xml.XDocument-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Xml.Linq -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Xml.Linq.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.XDocument.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.XDocument.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.XDocument.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.XmlSerializer" library="Facades_System.Xml.XmlSerializer-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.XmlSerializer.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.XmlSerializer.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.XmlSerializer.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.Handles" library="Facades_System.Runtime.Handles-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System -r:System.Core</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Runtime.Handles.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.Handles.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.Handles.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceModel.Duplex" library="Facades_System.ServiceModel.Duplex-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ServiceModel.dll</flags>
       <output>System.ServiceModel.Duplex.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceModel.Duplex.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.Duplex.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceModel.NetTcp" library="Facades_System.ServiceModel.NetTcp-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System.ServiceModel</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.ServiceModel.dll</flags>
       <output>System.ServiceModel.NetTcp.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceModel.NetTcp.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceModel.NetTcp.dll.sources</response>
     </project>
     <project dir="class/Facades/Microsoft.Win32.Primitives" library="Facades_Microsoft.Win32.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>Microsoft.Win32.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/Microsoft.Win32.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Win32.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/Microsoft.Win32.Registry" library="Facades_Microsoft.Win32.Registry-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>Microsoft.Win32.Registry.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/Microsoft.Win32.Registry.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Win32.Registry.dll.sources</response>
     </project>
     <project dir="class/Facades/System.AppContext" library="Facades_System.AppContext-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.AppContext.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.AppContext.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.AppContext.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Collections.NonGeneric" library="Facades_System.Collections.NonGeneric-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Collections.NonGeneric.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Collections.NonGeneric.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Collections.NonGeneric.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Collections.Specialized" library="Facades_System.Collections.Specialized-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Collections.Specialized.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Collections.Specialized.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Collections.Specialized.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ComponentModel.Primitives" library="Facades_System.ComponentModel.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.ComponentModel.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ComponentModel.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ComponentModel.TypeConverter" library="Facades_System.ComponentModel.TypeConverter-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.ComponentModel.TypeConverter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ComponentModel.TypeConverter.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ComponentModel.TypeConverter.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Console" library="Facades_System.Console-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Console.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Console.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Console.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Data.Common" library="Facades_System.Data.Common-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Data.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Data.dll</flags>
       <output>System.Data.Common.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Data.Common.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.Common.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Data.SqlClient" library="Facades_System.Data.SqlClient-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Data.dll /r:System.Xml.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Data.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Data.SqlClient.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Data.SqlClient.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Data.SqlClient.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.FileVersionInfo" library="Facades_System.Diagnostics.FileVersionInfo-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.FileVersionInfo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.FileVersionInfo.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.FileVersionInfo.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.Process" library="Facades_System.Diagnostics.Process-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.Process.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.Process.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.Process.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.TextWriterTraceListener" library="Facades_System.Diagnostics.TextWriterTraceListener-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.TextWriterTraceListener.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.TextWriterTraceListener.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.TextWriterTraceListener.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.TraceEvent" library="Facades_System.Diagnostics.TraceEvent-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.TraceEvent.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.TraceEvent.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.TraceEvent.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.TraceSource" library="Facades_System.Diagnostics.TraceSource-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.TraceSource.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.TraceSource.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.TraceSource.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Globalization.Calendars" library="Facades_System.Globalization.Calendars-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Globalization.Calendars.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Globalization.Calendars.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Globalization.Calendars.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.Compression.ZipFile" library="Facades_System.IO.Compression.ZipFile-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.IO.Compression.FileSystem.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.IO.Compression.FileSystem.dll</flags>
       <output>System.IO.Compression.ZipFile.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.Compression.ZipFile.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.Compression.ZipFile.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.FileSystem" library="Facades_System.IO.FileSystem-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.FileSystem.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.FileSystem.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.FileSystem.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.FileSystem.DriveInfo" library="Facades_System.IO.FileSystem.DriveInfo-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.FileSystem.DriveInfo.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.FileSystem.DriveInfo.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.FileSystem.DriveInfo.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.FileSystem.Primitives" library="Facades_System.IO.FileSystem.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.FileSystem.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.FileSystem.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.FileSystem.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.IsolatedStorage" library="Facades_System.IO.IsolatedStorage-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.IsolatedStorage.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.IsolatedStorage.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.IsolatedStorage.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.MemoryMappedFiles" library="Facades_System.IO.MemoryMappedFiles-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Core.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.IO.MemoryMappedFiles.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.MemoryMappedFiles.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.MemoryMappedFiles.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.UnmanagedMemoryStream" library="Facades_System.IO.UnmanagedMemoryStream-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.UnmanagedMemoryStream.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.UnmanagedMemoryStream.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.UnmanagedMemoryStream.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.AuthenticationManager" library="Facades_System.Net.AuthenticationManager-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.AuthenticationManager.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.AuthenticationManager.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.AuthenticationManager.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Cache" library="Facades_System.Net.Cache-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Cache.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Cache.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Cache.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.HttpListener" library="Facades_System.Net.HttpListener-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.HttpListener.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.HttpListener.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.HttpListener.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Mail" library="Facades_System.Net.Mail-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Mail.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Mail.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Mail.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.NameResolution" library="Facades_System.Net.NameResolution-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.NameResolution.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.NameResolution.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.NameResolution.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Security" library="Facades_System.Net.Security-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Security.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Security.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Security.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.ServicePoint" library="Facades_System.Net.ServicePoint-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.ServicePoint.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.ServicePoint.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.ServicePoint.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Sockets" library="Facades_System.Net.Sockets-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Sockets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Sockets.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Sockets.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Utilities" library="Facades_System.Net.Utilities-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.Utilities.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Utilities.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Utilities.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.WebHeaderCollection" library="Facades_System.Net.WebHeaderCollection-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.WebHeaderCollection.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.WebHeaderCollection.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.WebHeaderCollection.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.WebSockets" library="Facades_System.Net.WebSockets-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.WebSockets.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.WebSockets.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.WebSockets.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.WebSockets.Client" library="Facades_System.Net.WebSockets.Client-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Net.WebSockets.Client.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.WebSockets.Client.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.WebSockets.Client.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Resources.ReaderWriter" library="Facades_System.Resources.ReaderWriter-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Resources.ReaderWriter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Resources.ReaderWriter.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Resources.ReaderWriter.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Runtime.CompilerServices.VisualC" library="Facades_System.Runtime.CompilerServices.VisualC-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Runtime.CompilerServices.VisualC.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Runtime.CompilerServices.VisualC.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Runtime.CompilerServices.VisualC.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.AccessControl" library="Facades_System.Security.AccessControl-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.AccessControl.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.AccessControl.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.AccessControl.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Claims" library="Facades_System.Security.Claims-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Claims.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Claims.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Claims.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.DeriveBytes" library="Facades_System.Security.Cryptography.DeriveBytes-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.DeriveBytes.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.DeriveBytes.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.DeriveBytes.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Encoding" library="Facades_System.Security.Cryptography.Encoding-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.Encoding.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Encoding.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Encoding.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Encryption" library="Facades_System.Security.Cryptography.Encryption-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.Encryption.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Encryption.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Encryption.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Encryption.Aes" library="Facades_System.Security.Cryptography.Encryption.Aes-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.Encryption.Aes.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Encryption.Aes.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Encryption.Aes.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman" library="Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Core.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Security.Cryptography.Encryption.ECDiffieHellman.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Encryption.ECDiffieHellman.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Encryption.ECDsa" library="Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Core.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.Security.Cryptography.Encryption.ECDsa.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Encryption.ECDsa.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Encryption.ECDsa.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Hashing" library="Facades_System.Security.Cryptography.Hashing-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.Hashing.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Hashing.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Hashing.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.Hashing.Algorithms" library="Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.Hashing.Algorithms.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.Hashing.Algorithms.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.Hashing.Algorithms.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.RSA" library="Facades_System.Security.Cryptography.RSA-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.RSA.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.RSA.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.RSA.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.RandomNumberGenerator" library="Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.RandomNumberGenerator.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.RandomNumberGenerator.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.RandomNumberGenerator.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.X509Certificates" library="Facades_System.Security.Cryptography.X509Certificates-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Cryptography.X509Certificates.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.X509Certificates.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.X509Certificates.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Principal.Windows" library="Facades_System.Security.Principal.Windows-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.Principal.Windows.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Principal.Windows.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Principal.Windows.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.Thread" library="Facades_System.Threading.Thread-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Threading.Thread.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.Thread.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Thread.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.ThreadPool" library="Facades_System.Threading.ThreadPool-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Threading.ThreadPool.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.ThreadPool.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.ThreadPool.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.XPath" library="Facades_System.Xml.XPath-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Xml.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.XPath.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.XPath.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.XPath.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.XmlDocument" library="Facades_System.Xml.XmlDocument-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Xml.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.XmlDocument.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.XmlDocument.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.XmlDocument.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.Xsl.Primitives" library="Facades_System.Xml.Xsl.Primitives-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Xml.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>System.Xml.Xsl.Primitives.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.Xsl.Primitives.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.Xsl.Primitives.dll.sources</response>
     </project>
     <project dir="class/Facades/Microsoft.Win32.Registry.AccessControl" library="Facades_Microsoft.Win32.Registry.AccessControl-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>Microsoft.Win32.Registry.AccessControl.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/Microsoft.Win32.Registry.AccessControl.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Microsoft.Win32.Registry.AccessControl.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.StackTrace" library="Facades_System.Diagnostics.StackTrace-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.StackTrace.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.StackTrace.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.StackTrace.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Globalization.Extensions" library="Facades_System.Globalization.Extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Globalization.Extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Globalization.Extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Globalization.Extensions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.FileSystem.AccessControl" library="Facades_System.IO.FileSystem.AccessControl-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.FileSystem.AccessControl.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.FileSystem.AccessControl.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.FileSystem.AccessControl.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Private.CoreLib.InteropServices" library="Facades_System.Private.CoreLib.InteropServices-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Private.CoreLib.InteropServices.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Private.CoreLib.InteropServices.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Private.CoreLib.InteropServices.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Private.CoreLib.Threading" library="Facades_System.Private.CoreLib.Threading-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Private.CoreLib.Threading.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Private.CoreLib.Threading.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Private.CoreLib.Threading.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.TypeExtensions" library="Facades_System.Reflection.TypeExtensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Reflection.TypeExtensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.TypeExtensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.TypeExtensions.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.SecureString" library="Facades_System.Security.SecureString-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Security.SecureString.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.SecureString.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.SecureString.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.AccessControl" library="Facades_System.Threading.AccessControl-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Threading.AccessControl.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.AccessControl.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.AccessControl.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Threading.Overlapped" library="Facades_System.Threading.Overlapped-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Threading.Overlapped.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Threading.Overlapped.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Threading.Overlapped.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Xml.XPath.XDocument" library="Facades_System.Xml.XPath.XDocument-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Xml.Linq.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.Linq.dll</flags>
       <output>System.Xml.XPath.XDocument.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Xml.XPath.XDocument.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Xml.XPath.XDocument.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.Emit.ILGeneration" library="Facades_System.Reflection.Emit.ILGeneration-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.Emit.ILGeneration.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.Emit.ILGeneration.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.Emit.ILGeneration.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.Emit.Lightweight" library="Facades_System.Reflection.Emit.Lightweight-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.Emit.Lightweight.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.Emit.Lightweight.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.Emit.Lightweight.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Reflection.Emit" library="Facades_System.Reflection.Emit-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699</flags>
       <output>System.Reflection.Emit.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Reflection.Emit.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Reflection.Emit.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Diagnostics.PerformanceCounter" library="Facades_System.Diagnostics.PerformanceCounter-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.Diagnostics.PerformanceCounter.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Diagnostics.PerformanceCounter.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Diagnostics.PerformanceCounter.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.FileSystem.Watcher" library="Facades_System.IO.FileSystem.Watcher-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>System.IO.FileSystem.Watcher.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.FileSystem.Watcher.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.FileSystem.Watcher.dll.sources</response>
     </project>
     <project dir="class/Facades/System.IO.Pipes" library="Facades_System.IO.Pipes-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Core.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Core.dll</flags>
       <output>System.IO.Pipes.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.IO.Pipes.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.IO.Pipes.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Security.Cryptography.ProtectedData" library="Facades_System.Security.Cryptography.ProtectedData-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Security.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Security.dll</flags>
       <output>System.Security.Cryptography.ProtectedData.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Security.Cryptography.ProtectedData.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Security.Cryptography.ProtectedData.dll.sources</response>
     </project>
     <project dir="class/Facades/System.ServiceProcess.ServiceController" library="Facades_System.ServiceProcess.ServiceController-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.ServiceProcess.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.ServiceProcess.dll</flags>
       <output>System.ServiceProcess.ServiceController.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.ServiceProcess.ServiceController.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.ServiceProcess.ServiceController.dll.sources</response>
     </project>
     <project dir="class/Facades/System.Net.Http.WebRequestHandler" library="Facades_System.Net.Http.WebRequestHandler-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 /r:mscorlib /r:System.Net.Http.WebRequest.dll /r:System.Net.Http.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -optimize /noconfig /delaysign /keyfile:../../msfinal.pub /nowarn:1616,1699 -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Net.Http.WebRequest.dll -r:./../../../class/lib/net_4_x/System.Net.Http.dll</flags>
       <output>System.Net.Http.WebRequestHandler.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Facades/System.Net.Http.WebRequestHandler.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>System.Net.Http.WebRequestHandler.dll.sources</response>
     </project>
-    <project dir="nunit24/NUnit.Framework/framework" library="NUnit.Framework-net_4_x">
+    <project dir="nunit24/NUnitFramework/framework" library="NUnit.Framework-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly -warn:1</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:StronglyNamedAssembly -warn:1 /publicsign -r:./../../../class/lib/net_4_x/System.Xml.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.framework.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>NUnit.Framework.dll.sources</response>
     </project>
     <project dir="nunit24/NUnitCore/interfaces" library="nunit.core.interfaces-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /d:StronglyNamedAssembly /publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/nunit.framework.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.core.interfaces.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.core.interfaces.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.core.interfaces.dll.sources</response>
     </project>
-    <project dir="nunit20/NUnitCore/core" library="nunit.core-net_4_x">
+    <project dir="nunit24/NUnitCore/core" library="nunit.core-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -r:nunit.framework.dll -r:nunit.core.interfaces.dll -r:System.dll /d:StronglyNamedAssembly -warn:1 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /d:StronglyNamedAssembly -warn:1 /publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/nunit.framework.dll -r:./../../../class/lib/net_4_x/nunit.core.interfaces.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.core.dll.sources</response>
     </project>
     <project dir="nunit24/ClientUtilities/util" library="nunit.util-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:System.dll -r:System.Xml.dll -r:System.Runtime.Remoting.dll /d:MONO /d:StronglyNamedAssembly -warn:1 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /resource:Transform.resources,NUnit.Util.Transform.resources /d:MONO /d:StronglyNamedAssembly /publicsign -warn:1 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/nunit.core.dll -r:./../../../class/lib/net_4_x/nunit.core.interfaces.dll -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.dll -r:./../../../class/lib/net_4_x/System.Runtime.Remoting.dll</flags>
       <output>nunit.util.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.util.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.util.dll.sources</response>
     </project>
     <project dir="nunit24/NUnitMocks/mocks" library="nunit.mocks-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -debug -r:nunit.framework.dll -r:System.dll /d:StronglyNamedAssembly -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /d:StronglyNamedAssembly /publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/nunit.framework.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.mocks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.mocks.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.mocks.dll.sources</response>
     </project>
     <project dir="nunit24/NUnitExtensions/framework" library="nunit.framework.extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -debug /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:StronglyNamedAssembly /publicsign -r:./../../../class/lib/net_4_x/System.Xml.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.framework.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.framework.extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.framework.extensions.dll.sources</response>
     </project>
     <project dir="nunit24/NUnitExtensions/core" library="nunit.core.extensions-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig -debug /r:nunit.core.dll /r:nunit.core.interfaces.dll /r:System.Xml.dll /r:System.dll /d:StronglyNamedAssembly</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig /d:StronglyNamedAssembly /publicsign -r:./../../../class/lib/net_4_x/nunit.core.dll -r:./../../../class/lib/net_4_x/nunit.core.interfaces.dll -r:./../../../class/lib/net_4_x/System.Xml.dll -r:./../../../class/lib/net_4_x/System.dll</flags>
       <output>nunit.core.extensions.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit.core.extensions.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit.core.extensions.dll.sources</response>
     </project>
     <project dir="nunit24/ConsoleRunner/nunit-console" library="nunit-console-runner-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -r:nunit.core.dll -r:nunit.core.interfaces.dll -r:nunit.util.dll -r:System.dll -r:System.Xml.dll /d:MONO /d:StronglyNamedAssembly -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /d:MONO /d:StronglyNamedAssembly /publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/nunit.core.dll -r:./../../../class/lib/net_4_x/nunit.core.interfaces.dll -r:./../../../class/lib/net_4_x/nunit.util.dll -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>nunit-console-runner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit-console-runner.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit-console-runner.dll.sources</response>
     </project>
     <project dir="nunit24/ConsoleRunner/nunit-console-exe" library="nunit-console-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:nunit.framework.dll /r:nunit.util.dll /r:nunit.core.dll /r:nunit-console-runner.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:nunit.framework -r:nunit.util -r:nunit.core -r:nunit-console-runner</flags>
       <output>nunit-console.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/nunit-console.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunit-console.exe.sources</response>
     </project>
     <project dir="ilasm" library="ilasm-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /lib:../class/lib/net_4_x /r:../class/lib/net_4_x/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /lib:../class/lib/net_4_x /r:../class/lib/net_4_x/PEAPI.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:Mono.Security.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>ilasm.exe</output>
-      <built_sources></built_sources>
+      <built_sources>ILParser.cs</built_sources>
       <library_output>./../class/lib/net_4_x/ilasm.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>ilasm.exe.sources</response>
     </project>
+    <project dir="tools/gacutil" library="gacutil-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Security</flags>
+      <output>gacutil.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/gacutil.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>gacutil.exe.sources</response>
+    </project>
+    <project dir="tools/culevel" library="culevel-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml</flags>
+      <output>culevel.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/culevel.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>culevel.exe.sources</response>
+    </project>
+    <project dir="tools/cil-stringreplacer" library="cil-stringreplacer-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:Mono.Cecil</flags>
+      <output>cil-stringreplacer.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/cil-stringreplacer.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>cil-stringreplacer.exe.sources</response>
+    </project>
+    <project dir="tools/commoncryptogenerator" library="commoncryptogenerator-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
+      <output>commoncryptogenerator.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/commoncryptogenerator.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>commoncryptogenerator.exe.sources</response>
+    </project>
     <project dir="tools/al" library="al-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.Security.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:Mono.Security -r:System.Security -r:Mono.CompilerServices.SymbolWriter</flags>
       <output>al.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/al.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>al.exe.sources</response>
     </project>
     <project dir="tools/linker" library="monolinker-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:./../../class/lib/net_4_x/Mono.Cecil.dll /r:System.Xml.dll -keyfile:../../class/mono.snk -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Core.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -resource:Descriptors/mscorlib.xml -resource:Descriptors/System.xml -resource:Descriptors/System.Core.xml -resource:Descriptors/System.Drawing.xml -resource:Descriptors/System.Web.xml -resource:Descriptors/Mono.Posix.xml -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml -r:Mono.Cecil</flags>
       <output>monolinker.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/monolinker.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>monolinker.exe.sources</response>
     </project>
     <project dir="tools/tuner" library="Mono.Tuner-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -r:System.dll -r:System.Core.dll -r:System.Xml.dll -r:./../../class/lib/net_4_x/monolinker.exe -r:./../../class/lib/net_4_x/Mono.Cecil.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -r:./../../class/lib/net_4_x/monolinker.exe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../class/lib/net_4_x/System.dll -r:./../../class/lib/net_4_x/System.Core.dll -r:./../../class/lib/net_4_x/System.Xml.dll -r:./../../class/lib/net_4_x/Mono.Cecil.dll</flags>
       <output>Mono.Tuner.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/Mono.Tuner.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Tuner.dll.sources</response>
     </project>
     <project dir="tools/culevel" library="culevel-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml</flags>
       <output>culevel.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/culevel.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>culevel.exe.sources</response>
     </project>
     <project dir="tools/genxs" library="genxs-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml</flags>
       <output>genxs.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/genxs.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>genxs.exe.sources</response>
     </project>
     <project dir="tools/mkbundle" library="mkbundle-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -resource:template.c -resource:template_z.c -resource:template_main.c -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -resource:template.c -resource:template_z.c -resource:template_main.c -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System -r:System.Core</flags>
       <output>mkbundle.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mkbundle.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mkbundle.exe.sources</response>
     </project>
     <project dir="tools/monop" library="monop-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NO_AUTHENTICODE,STATIC,NO_SYMBOL_WRITER -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NO_AUTHENTICODE,STATIC,NO_SYMBOL_WRITER -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System</flags>
       <output>monop.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/monop.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>monop.exe.sources</response>
     </project>
     <project dir="tools/mono-service" library="mono-service-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.ServiceProcess.dll -r:Mono.Posix.dll -unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -unsafe -publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.ServiceProcess -r:Mono.Posix -r:System</flags>
       <output>mono-service.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mono-service.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-service.exe.sources</response>
     </project>
     <project dir="tools/mono-xsd" library="xsd-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Data.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System.Data -r:System</flags>
       <output>xsd.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/xsd.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>xsd.exe.sources</response>
     </project>
     <project dir="tools/resgen" library="resgen-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Core</flags>
       <output>resgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/resgen.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>resgen.exe.sources</response>
     </project>
     <project dir="tools/gacutil" library="gacutil-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.Security.dll -unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -unsafe -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Security</flags>
       <output>gacutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/gacutil.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>gacutil.exe.sources</response>
     </project>
     <project dir="tools/wsdl" library="wsdl-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System.Web.Services -r:System</flags>
       <output>wsdl.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/wsdl.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>wsdl.exe.sources</response>
     </project>
     <project dir="tools/xbuild" library="xbuild-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:./../../class/lib/net_4_x/Microsoft.Build.Framework.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Utilities.v4.0.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Engine.dll -r:./../../class/lib/net_4_x/Microsoft.Build.Tasks.v4.0.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Microsoft.Build.Framework -r:Microsoft.Build.Utilities.v4.0 -r:Microsoft.Build.Engine -r:Microsoft.Build.Tasks.v4.0 -r:System -r:System.Core</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/xbuild.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>xbuild.exe.sources</response>
     </project>
     <project dir="tools/csharp" library="csharp-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:./../../class/lib/net_4_x/Mono.CSharp.dll -r:./../../class/lib/net_4_x/Mono.Posix.dll -r:Mono.Management.dll -unsafe -nowarn:3021 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -unsafe -nowarn:3021 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.CSharp -r:Mono.Posix -r:Mono.Management -r:System</flags>
       <output>csharp.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/csharp.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>csharp.exe.sources</response>
     </project>
+    <project dir="tools/corcompare" library="mono-api-info-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Cecil -r:System.Xml -r:System.Core -r:System</flags>
+      <output>mono-api-info.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/mono-api-info.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>mono-api-info.exe.sources</response>
+    </project>
+    <project dir="tools/mono-api-html" library="mono-api-html-net_4_x">
+      <boot></boot>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Cecil -r:System.Xml -r:System.Core -r:System -r:System.Xml.Linq</flags>
+      <output>mono-api-html.exe</output>
+      <built_sources></built_sources>
+      <library_output>./../../class/lib/net_4_x/mono-api-html.exe</library_output>
+      <fx_version>4.5</fx_version>
+      <profile>net_4_x</profile>
+      <resources></resources>
+      <response>mono-api-html.exe.sources</response>
+    </project>
     <project dir="tools/compiler-tester" library="compiler-tester-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Xml</flags>
       <output>compiler-tester.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/compiler-tester.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>compiler-tester.exe.sources</response>
     </project>
     <project dir="tools/mono-xmltool" library="mono-xmltool-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:Commons.Xml.Relaxng</flags>
       <output>mono-xmltool.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mono-xmltool.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-xmltool.exe.sources</response>
     </project>
     <project dir="tools/mono-shlib-cop" library="mono-shlib-cop-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.Posix.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Posix -r:System -r:System.Xml</flags>
       <output>mono-shlib-cop.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mono-shlib-cop.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-shlib-cop.exe.sources</response>
     </project>
     <project dir="tools/sgen" library="sgen-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System</flags>
       <output>sgen.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/sgen.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>sgen.exe.sources</response>
     </project>
     <project dir="tools/mconfig" library="mconfig-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System</flags>
       <output>mconfig.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mconfig.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mconfig.exe.sources</response>
     </project>
     <project dir="tools/installutil" library="installutil-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Configuration.Install -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Configuration.Install -r:System</flags>
       <output>installutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/installutil.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>installutil.exe.sources</response>
     </project>
     <project dir="tools/nunitreport" library="nunitreport-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml</flags>
       <output>nunitreport.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/nunitreport.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>nunitreport.exe.sources</response>
     </project>
     <project dir="tools/pdb2mdb" library="pdb2mdb-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:Mono.Cecil.dll /r:Mono.CompilerServices.SymbolWriter.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Cecil -r:Mono.CompilerServices.SymbolWriter -r:System.Core</flags>
       <output>pdb2mdb.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/pdb2mdb.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>pdb2mdb.exe.sources</response>
     </project>
     <project dir="tools/SqlSharp" library="sqlsharp-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.dll -r:System.Xml.dll -r:System.Data.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml -r:System.Data</flags>
       <output>sqlsharp.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/sqlsharp.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>sqlsharp.exe.sources</response>
     </project>
     <project dir="tools/sqlmetal" library="sqlmetal-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:MONO_STRICT -keyfile:../../class/System.Data.Linq/src/DbMetal/../DbLinq.snk -resource:../../class/System.Data.Linq/src/DbMetal/Language/EnglishWords.txt,DbMetal.Language.EnglishWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/FrenchWords.txt,DbMetal.Language.FrenchWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/GermanWords.txt,DbMetal.Language.GermanWords.txt -r:System.Configuration -r:System.Core -r:System.Data -r:System.Data.Linq -r:System.Xml -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:MONO_STRICT -keyfile:../../class/System.Data.Linq/src/DbMetal/../DbLinq.snk -resource:../../class/System.Data.Linq/src/DbMetal/Language/EnglishWords.txt,DbMetal.Language.EnglishWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/FrenchWords.txt,DbMetal.Language.FrenchWords.txt -resource:../../class/System.Data.Linq/src/DbMetal/Language/GermanWords.txt,DbMetal.Language.GermanWords.txt -publicsign -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Configuration -r:System.Core -r:System.Data -r:System.Data.Linq -r:System.Xml -r:System</flags>
       <output>sqlmetal.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/sqlmetal.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>sqlmetal.exe.sources</response>
     </project>
     <project dir="tools/svcutil" library="svcutil-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Core.dll -r:System.Runtime.Serialization.dll -r:System.ServiceModel.dll -r:System.Web.Services.dll -r:System.Configuration.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Core -r:System.Runtime.Serialization -r:System.ServiceModel -r:System.Web.Services -r:System.Configuration -r:System -r:System.Xml</flags>
       <output>svcutil.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/svcutil.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>svcutil.exe.sources</response>
     </project>
     <project dir="tools/ictool" library="ictool-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml</flags>
       <output>ictool.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/ictool.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>ictool.exe.sources</response>
     </project>
     <project dir="tools/disco" library="disco-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:System.Web.Services.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:System.Web.Services -r:System</flags>
       <output>disco.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/disco.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>disco.exe.sources</response>
     </project>
     <project dir="tools/soapsuds" library="soapsuds-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Runtime.Remoting.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Runtime.Remoting -r:System</flags>
       <output>soapsuds.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/soapsuds.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>soapsuds.exe.sources</response>
     </project>
     <project dir="tools/browsercaps-updater" library="browsercaps-updater-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System</flags>
       <output>browsercaps-updater.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/browsercaps-updater.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>browsercaps-updater.exe.sources</response>
     </project>
     <project dir="tools/cil-strip" library="mono-cil-strip-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System</flags>
       <output>mono-cil-strip.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mono-cil-strip.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-cil-strip.exe.sources</response>
     </project>
     <project dir="tools/macpack" library="macpack-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /resource:LOADER /resource:PLIST -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /resource:LOADER /resource:PLIST -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig</flags>
       <output>macpack.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/macpack.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>macpack.exe.sources</response>
     </project>
     <project dir="tools/dtd2rng" library="dtd2rng-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -r:Commons.Xml.Relaxng.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml -r:Commons.Xml.Relaxng</flags>
       <output>dtd2rng.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/dtd2rng.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>dtd2rng.exe.sources</response>
     </project>
     <project dir="tools/dtd2xsd" library="dtd2xsd-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml</flags>
       <output>dtd2xsd.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/dtd2xsd.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>dtd2xsd.exe.sources</response>
     </project>
     <project dir="tools/mdoc" library="mdoc-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /resource:../../class/monodoc/Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:../../class/monodoc/Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:../../class/monodoc/Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:../../class/monodoc/Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/defaulttemplate.xsl,defaulttemplate.xsl /resource:Resources/monodoc-ecma.xsd,monodoc-ecma.xsd /resource:Resources/msitomsx.xsl,msitomsx.xsl /resource:Resources/overview.xsl,overview.xsl /resource:Resources/stylesheet.xsl,stylesheet.xsl /r:System.Web.dll /r:System.Xml.Linq.dll /r:ICSharpCode.SharpZipLib.dll /r:Mono.Cecil.dll /r:monodoc.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /resource:../../class/monodoc/Resources/mdoc-html-format.xsl,mdoc-html-format.xsl /resource:../../class/monodoc/Resources/mdoc-html-utils.xsl,mdoc-html-utils.xsl /resource:../../class/monodoc/Resources/mdoc-sections-css.xsl,mdoc-sections-css.xsl /resource:../../class/monodoc/Resources/mono-ecma-css.xsl,mono-ecma-css.xsl /resource:Resources/defaulttemplate.xsl,defaulttemplate.xsl /resource:Resources/monodoc-ecma.xsd,monodoc-ecma.xsd /resource:Resources/msitomsx.xsl,msitomsx.xsl /resource:Resources/overview.xsl,overview.xsl /resource:Resources/stylesheet.xsl,stylesheet.xsl -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:monodoc -r:System -r:System.Xml -r:System.Core -r:Mono.Cecil -r:ICSharpCode.SharpZipLib -r:System.Xml.Linq -r:System.Web</flags>
       <output>mdoc.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mdoc.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mdoc.exe.sources</response>
     </project>
     <project dir="tools/mod" library="mod-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:monodoc.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:monodoc</flags>
       <output>mod.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mod.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mod.exe.sources</response>
     </project>
     <project dir="tools/installvst" library="installvst-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System.Xml</flags>
       <output>installvst.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/installvst.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>installvst.exe.sources</response>
     </project>
     <project dir="tools/lc" library="lc-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:System.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core</flags>
       <output>lc.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/lc.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>lc.exe.sources</response>
     </project>
     <project dir="tools/mono-configuration-crypto/lib" library="Mono.Configuration.Crypto-net_4_x">
       <boot>false</boot>
-      <flags>/codepage:65001 -r:System.dll -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.Xml.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:./../../../class/lib/net_4_x/System.dll -r:./../../../class/lib/net_4_x/Mono.Security.dll -r:./../../../class/lib/net_4_x/System.Security.dll -r:./../../../class/lib/net_4_x/System.Configuration.dll -r:./../../../class/lib/net_4_x/System.Xml.dll</flags>
       <output>Mono.Configuration.Crypto.dll</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/Mono.Configuration.Crypto.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>Mono.Configuration.Crypto.dll.sources</response>
     </project>
     <project dir="tools/mono-configuration-crypto/cli" library="mono-configuration-crypto-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.Security.dll -r:System.Security.dll -r:System.Configuration.dll -r:System.dll -r:./../../../class/lib/net_4_x/Mono.Configuration.Crypto.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Security -r:System.Security -r:System.Configuration -r:System -r:Mono.Configuration.Crypto</flags>
       <output>mono-configuration-crypto.exe</output>
       <built_sources></built_sources>
       <library_output>./../../../class/lib/net_4_x/mono-configuration-crypto.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-configuration-crypto.exe.sources</response>
     </project>
     <project dir="tools/ccrewrite" library="ccrewrite-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.CodeContracts -r:System -r:System.Core</flags>
       <output>ccrewrite.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/ccrewrite.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>ccrewrite.exe.sources</response>
     </project>
     <project dir="tools/cccheck" library="cccheck-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -r:Mono.CodeContracts.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.CodeContracts -r:System</flags>
       <output>cccheck.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/cccheck.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>cccheck.exe.sources</response>
     </project>
-    <project dir="tools/mdb-rebase" library="mdbrebase-net_4_x">
+    <project dir="tools/mdbrebase" library="mdbrebase-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:Mono.CompilerServices.SymbolWriter.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:Mono.CompilerServices.SymbolWriter</flags>
       <output>mdbrebase.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mdbrebase.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mdbrebase.exe.sources</response>
     </project>
     <project dir="tools/ikdasm" library="ikdasm-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NO_SYMBOL_WRITER /r:System.Security.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NO_SYMBOL_WRITER -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Core -r:System.Security</flags>
       <output>ikdasm.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/ikdasm.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>ikdasm.exe.sources</response>
     </project>
     <project dir="tools/mono-symbolicate" library="mono-symbolicate-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 /r:Mono.Cecil.dll /r:Mono.CompilerServices.SymbolWriter.dll /r:System.Xml -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 /D:NO_AUTHENTICODE -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:Mono.Cecil -r:Mono.Cecil.Mdb -r:System.Xml -r:System.Core -r:System</flags>
       <output>mono-symbolicate.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/mono-symbolicate.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>mono-symbolicate.exe.sources</response>
     </project>
     <project dir="tools/linker-analyzer" library="linkeranalyzer-net_4_x">
       <boot></boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/net_4_x -r:mscorlib.dll -debug -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -optimize /noconfig -r:System -r:System.Xml</flags>
       <output>linkeranalyzer.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/net_4_x/linkeranalyzer.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>net_4_x</profile>
+      <resources></resources>
       <response>linkeranalyzer.exe.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:./../../class/lib/xbuild_12/../net_4_x/System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Microsoft.Build.Framework.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</flags>
       <output>xbuild_12_Microsoft.Build.Framework_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_12_Microsoft.Build.Framework_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Microsoft.Build.Framework_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.v12.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Microsoft.Build.Utilities.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll -r:System.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll -resource:Test/Microsoft.Build.Utilities/Strings.resources</flags>
       <output>xbuild_12_Microsoft.Build.Utilities_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_12_Microsoft.Build.Utilities_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Microsoft.Build.Utilities_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Microsoft.Build.Engine.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll</flags>
       <output>xbuild_12_Microsoft.Build.Engine_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_12_Microsoft.Build.Engine_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Microsoft.Build.Engine_test.dll.response</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll</flags>
       <output>Mono.XBuild.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Mono.XBuild.Tasks.dll.sources</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll</flags>
       <output>xbuild_12_Mono.XBuild.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_12_Mono.XBuild.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Mono.XBuild.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll -r:System -r:System.Core -r:System.Xml -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Windows.Forms.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll</flags>
       <output>Microsoft.Build.Tasks.v12.0.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/Microsoft.Build.Tasks.v12.0.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Microsoft.Build.Tasks.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Tasks.v12.0.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_12/Mono.XBuild.Tasks.dll /r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll /r:System.Core.dll /r:Microsoft.Build.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.Tasks.v12.0.dll</flags>
       <output>xbuild_12_Microsoft.Build.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_12_Microsoft.Build.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Microsoft.Build.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>./../../class/lib/xbuild_12/Microsoft.Build.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>Microsoft.Build.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-tests-xbuild_12">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.dll /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework /r:Microsoft.Build.Utilities.v4.0.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize -r:./../../class/lib/xbuild_12/Microsoft.Build.dll /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/xbuild_12/../net_4_x/System.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_12/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll</flags>
       <output>xbuild_12_Microsoft.Build_test.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>xbuild_12_Microsoft.Build_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_12_Microsoft.Build_test.dll.response</response>
     </project>
     <project dir="tools/xbuild" library="xbuild-xbuild_12">
       <boot></boot>
-      <flags>/codepage:65001 -r:./../../class/lib/xbuild_12/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Utilities.v12.0.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_12/Microsoft.Build.Tasks.v12.0.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_12 -r:mscorlib.dll -debug -d:XBUILD_12 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -optimize /noconfig -r:Microsoft.Build.Framework -r:Microsoft.Build.Utilities.v12.0 -r:Microsoft.Build.Engine -r:Microsoft.Build.Tasks.v12.0 -r:../net_4_x/System -r:../net_4_x/System.Core</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_12/xbuild.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_12</profile>
+      <resources></resources>
       <response>xbuild.exe.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll -r:System</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:./../../class/lib/xbuild_14/../net_4_x/System.dll</flags>
       <output>Microsoft.Build.Framework.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Microsoft.Build.Framework.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Framework" library="Microsoft.Build.Framework-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</flags>
       <output>xbuild_14_Microsoft.Build.Framework_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_14_Microsoft.Build.Framework_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Microsoft.Build.Framework_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.Utilities.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Microsoft.Build.Utilities.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Utilities" library="Microsoft.Build.Utilities-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll -r:System.dll -r:System.Core.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll -resource:Test/Microsoft.Build.Utilities/Strings.resources</flags>
       <output>xbuild_14_Microsoft.Build.Utilities_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_14_Microsoft.Build.Utilities_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Microsoft.Build.Utilities_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll -r:System -r:System.Core -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll</flags>
       <output>Microsoft.Build.Engine.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Microsoft.Build.Engine.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Engine" library="Microsoft.Build.Engine-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll /r:System.Xml.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll</flags>
       <output>xbuild_14_Microsoft.Build.Engine_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_14_Microsoft.Build.Engine_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Microsoft.Build.Engine_test.dll.response</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Xml.dll -r:System -r:System.Xml</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll</flags>
       <output>Mono.XBuild.Tasks.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Mono.XBuild.Tasks.dll.sources</response>
     </project>
     <project dir="class/Mono.XBuild.Tasks" library="Mono.XBuild.Tasks-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll</flags>
       <output>xbuild_14_Mono.XBuild.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_14_Mono.XBuild.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Mono.XBuild.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:System.Windows.Forms.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll -r:System -r:System.Core -r:System.Xml -r:System.Windows.Forms</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Windows.Forms.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll</flags>
       <output>Microsoft.Build.Tasks.Core.dll</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/Microsoft.Build.Tasks.Core.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Microsoft.Build.Tasks.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build.Tasks" library="Microsoft.Build.Tasks-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Tasks.Core.dll /r:System.Xml.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll /r:./../../class/lib/xbuild_14/Mono.XBuild.Tasks.dll /r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll /r:System.Core.dll /r:Microsoft.Build.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.Tasks.Core.dll</flags>
       <output>xbuild_14_Microsoft.Build.Tasks_test.dll</output>
       <built_sources></built_sources>
       <library_output>xbuild_14_Microsoft.Build.Tasks_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Microsoft.Build.Tasks_test.dll.response</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</flags>
       <output>Microsoft.Build.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>./../../class/lib/xbuild_14/Microsoft.Build.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>Microsoft.Build.dll.sources</response>
     </project>
     <project dir="class/Microsoft.Build" library="Microsoft.Build-tests-xbuild_14">
       <boot>false</boot>
-      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.dll /r:mscorlib.dll /r:System.dll /r:System.Core.dll /r:System.Xml.dll /r:Microsoft.Build.Engine.dll /r:Microsoft.Build.Framework.dll /d:MICROSOFT_BUILD_DLL -r:System -r:System.Core -r:System.Xml -r:Microsoft.Build.Engine -r:Microsoft.Build.Framework /r:Microsoft.Build.Utilities.v4.0.dll</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize -r:./../../class/lib/xbuild_14/Microsoft.Build.dll /d:MICROSOFT_BUILD_DLL -r:./../../class/lib/xbuild_14/../net_4_x/System.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Core.dll -r:./../../class/lib/xbuild_14/../net_4_x/System.Xml.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll</flags>
       <output>xbuild_14_Microsoft.Build_test.dll</output>
       <built_sources>Microsoft.Build.Internal/ExpressionParser.cs</built_sources>
       <library_output>xbuild_14_Microsoft.Build_test.dll</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>./../../build/deps/xbuild_14_Microsoft.Build_test.dll.response</response>
     </project>
     <project dir="tools/xbuild" library="xbuild-xbuild_14">
       <boot></boot>
-      <flags>/codepage:65001 -r:./../../class/lib/xbuild_14/Microsoft.Build.Framework.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Utilities.Core.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Engine.dll -r:./../../class/lib/xbuild_14/Microsoft.Build.Tasks.Core.dll -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -lib:./../../class/lib/xbuild_14 -r:mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -d:MONO -d:DISABLE_CAS_USE -lib:./../../class/lib/net_4_x -optimize /noconfig</flags>
+      <flags>/codepage:65001 -d:NET_4_0 -d:NET_4_5 -d:NET_4_6 -d:MONO -d:DISABLE_CAS_USE -nowarn:1699 -nostdlib -r:./../../class/lib/net_4_x/mscorlib.dll -debug -d:XBUILD_12 -d:XBUILD_14 -optimize /noconfig -r:Microsoft.Build.Framework -r:Microsoft.Build.Utilities.Core -r:Microsoft.Build.Engine -r:Microsoft.Build.Tasks.Core -r:../net_4_x/System -r:../net_4_x/System.Core</flags>
       <output>xbuild.exe</output>
       <built_sources></built_sources>
       <library_output>./../../class/lib/xbuild_14/xbuild.exe</library_output>
       <fx_version>4.5</fx_version>
       <profile>xbuild_14</profile>
+      <resources></resources>
       <response>xbuild.exe.sources</response>
     </project>
 </root>
index 1d220e23fac778114dc662ab284b6103385f7bbe..20f78e5cf85b836bfc219964fc9d1a7f6af2cdbb 100644 (file)
@@ -17,6 +17,46 @@ class Prepare {
                        }
                }
        }
+
+       static void SystemDataConnectionReplace (string srcdir, string targetdir, string target, string ns, string factory, string conn)
+       {
+               var t = File.ReadAllText (Path.Combine (srcdir, "DbConnectionHelper.cs"));
+
+               File.WriteAllText (Path.Combine (targetdir, target), t.Replace ("NAMESPACE", ns).Replace ("CONNECTIONFACTORYOBJECTNAME", factory).Replace ("CONNECTIONOBJECTNAME", conn));
+       }
+
+       static void SystemDataParameterReplace (string srcdir, string targetdir, string target, string resns, string ns, string parname)
+       {
+               var t = File.ReadAllText (Path.Combine (srcdir, "DbParameterHelper.cs"));
+
+               File.WriteAllText (Path.Combine (targetdir, target), t.Replace ("RESNAMESPACE", resns).Replace ("NAMESPACE", ns).Replace ("PARAMETEROBJECTNAME", parname));
+       }
+
+       static void SystemDataParameterCollReplace (string srcdir, string targetdir, string target, string resns, string ns, string parname)
+       {
+               var t = File.ReadAllText (Path.Combine (srcdir, "DbParameterCollectionHelper.cs"));
+
+               Console.WriteLine ("Creating " + Path.Combine (targetdir, target));
+               File.WriteAllText (Path.Combine (targetdir, target), t.Replace ("RESNAMESPACE", resns).Replace ("PARAMETERCOLLECTIONOBJECTNAME", parname + "Collection").Replace ("NAMESPACE", ns).Replace ("PARAMETEROBJECTNAME", parname));
+       }
+       
+       static void GenerateSystemData (string bdir)
+       {
+               var rs = Path.Combine (bdir, "class", "referencesource", "System.Data", "System", "Data", "ProviderBase");
+               var sd = Path.Combine (bdir, "class", "System.Data");
+
+               SystemDataConnectionReplace (rs, sd, "gen_OdbcConnection.cs", "System.Data.Odbc", "OdbcConnectionFactory.SingletonInstance", "OdbcConnection");
+               SystemDataConnectionReplace (rs, sd, "gen_OleDbConnection.cs", "System.Data.OleDb", "OleDbConnectionFactory.SingletonInstance", "OleDbConnection");
+               SystemDataConnectionReplace (rs, sd, "gen_SqlConnection.cs", "System.Data.SqlClient", "SqlConnectionFactory.SingletonInstance", "SqlConnection");
+
+               SystemDataParameterReplace (rs, sd, "gen_OdbcParameter.cs", "System.Data", "System.Data.Odbc", "OdbcParameter");
+               SystemDataParameterReplace (rs, sd, "gen_OleDbParameter.cs", "System.Data", "System.Data.OleDb", "OleDbParameter");
+               SystemDataParameterReplace (rs, sd, "gen_SqlParameter.cs", "System.Data", "System.Data.SqlClient", "SqlParameter");
+
+               SystemDataParameterCollReplace (rs, sd, "gen_OdbcParameterCollection.cs", "System.Data", "System.Data.Odbc", "OdbcParameter");
+               SystemDataParameterCollReplace (rs, sd, "gen_OleDbParameterCollection.cs", "System.Data", "System.Data.OleDb", "OleDbParameter");
+               SystemDataParameterCollReplace (rs, sd, "gen_SqlParameterCollection.cs", "System.Data", "System.Data.SqlClient", "SqlParameter");
+       }
        
        static void Main (string [] args)
        {
@@ -28,16 +68,12 @@ class Prepare {
                }
 
                switch (args [1]){
-               case "xml":
-                       Filter (bdir + "/class/System.XML/System.Xml.XPath/Parser.jay",
-                               bdir + "/class/System.XML/Mono.Xml.Xsl/PatternParser.jay",
-                               (i, o) => o.Write (i.ReadToEnd ().Replace ("%start Expr", "%start Pattern")));
-                       break;
-
                case "core":
                        Filter (bdir + "/build/common/Consts.cs.in",
                                bdir + "/build/common/Consts.cs",
                                (i, o) => o.Write (i.ReadToEnd ().Replace ("@MONO_VERSION@", "2.5.0")));
+
+                       GenerateSystemData (bdir);
                        break;
                        
                default:
index 2088fa3f0acf3f4f0573e740b00ff492b00a37d3..06ad062761f931b6d9efb5ed880536f88741b425 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{C5639B3F-288A-4A4B-A4A5-C0D85834221D}</ProjectGuid>\r
     <RootNamespace>testinvoke</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)invoke/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)invoke/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)invoke/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <TargetMachine>MachineX86</TargetMachine>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)invoke/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)invoke/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)invoke/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>glib-2.0.lib;gmodule-2.0.lib;ws2_32.lib;gthread-2.0.lib;gobject-2.0.lib;libmono.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\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
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/test-invoke.vcxproj.filters b/msvc/test-invoke.vcxproj.filters
new file mode 100644 (file)
index 0000000..d2844a7
--- /dev/null
@@ -0,0 +1,19 @@
+<?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>{cadb49f7-799a-4477-9eb7-7b0c4d6269ab}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{f28072aa-9dc5-4857-85a7-f5e3814bc54f}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{c6d2d3cd-3f16-4c83-8168-10e0e2c32ebc}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\samples\embed\test-invoke.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 42a5bd68e092bd3c059328a98257b833996cd210..31411b0df6193224ec03e5f28a99bd440928a3ba 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{C2EB666E-9146-4B7A-85F6-25F9EA313770}</ProjectGuid>\r
     <RootNamespace>testmetadata</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)metadata/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)metadata/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)metadata/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <TargetMachine>MachineX86</TargetMachine>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\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
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)metadata/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)metadata/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)metadata/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>glib-2.0.lib;gmodule-2.0.lib;ws2_32.lib;gthread-2.0.lib;gobject-2.0.lib;libmono.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)..\eglib\src;$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(MONO_EGLIB_SOURCE_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\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
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/test-metadata.vcxproj.filters b/msvc/test-metadata.vcxproj.filters
new file mode 100644 (file)
index 0000000..4a504de
--- /dev/null
@@ -0,0 +1,19 @@
+<?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>{8b8d39e6-f879-4228-afab-c066b4f3cc60}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{edf4808c-dc97-4a3a-b226-cf0e663fe2d1}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{795e2d9a-7d6b-4516-9bc0-2f5f32ae3493}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\samples\embed\test-metadata.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 6986e99de777b4c346960db7ce742ce6668b42a0..d5e0fc41cd5343e8d3118ed336f30fe1f7b7e2ba 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{80A0620A-3478-4E1A-AA7C-0D2387B892AB}</ProjectGuid>\r
     <RootNamespace>test_eglib</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\bin\$(Configuration)\</OutDir>\r
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(MONO_BUILD_DIR_PREFIX)$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+    <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)\$(Configuration)\</IntDir>\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
+  </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
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib/test;../eglib;../msvc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_FORTIFY_SOURCE=2;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <AdditionalIncludeDirectories>$(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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
       <TreatWarningAsError>false</TreatWarningAsError>\r
-      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>\r
+      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <OptimizeReferences>false</OptimizeReferences>\r
       <EnableCOMDATFolding>false</EnableCOMDATFolding>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib/test;../eglib;../msvc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_FORTIFY_SOURCE=2;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <AdditionalIncludeDirectories>$(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
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib/test;../eglib;../msvc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_FORTIFY_SOURCE=2;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
+      <AdditionalIncludeDirectories>$(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
-      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level4</WarningLevel>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>eglib.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <OptimizeReferences>false</OptimizeReferences>\r
       <EnableCOMDATFolding>false</EnableCOMDATFolding>\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
-      <AdditionalIncludeDirectories>../eglib/src;../eglib/test;../eglib;../msvc;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
-      <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_FORTIFY_SOURCE=2;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
+      <AdditionalIncludeDirectories>$(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
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>Ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\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
diff --git a/msvc/test_eglib.vcxproj.filters b/msvc/test_eglib.vcxproj.filters
new file mode 100644 (file)
index 0000000..a93fb6f
--- /dev/null
@@ -0,0 +1,114 @@
+<?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="..\eglib\test\array.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\dir.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\driver.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\endian.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\fake.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\file.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="getopt.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="getopt_long.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\hashtable.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\list.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\markup.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\memory.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\module.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\path.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\pattern.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\ptrarray.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\queue.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\shell.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\sizes.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\slist.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\spawn.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\string.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\string-util.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\test.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\utf8.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\timer.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+    <ClCompile Include="..\eglib\test\unicode.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClInclude Include="getopt.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="getopt_long.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\eglib\src\glib.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\eglib\test\test.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+    <ClInclude Include="..\eglib\test\tests.h">\r
+      <Filter>Header Files</Filter>\r
+    </ClInclude>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Filter Include="Header Files">\r
+      <UniqueIdentifier>{420afe04-ce25-4c88-8928-611e6ae34f50}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{6327617a-ab1c-4105-b58a-e5e175846a17}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{c193f76a-aed4-4e8d-9a03-89bb79573393}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 772dd3692c51cebdf903baa56d5465c814a8cecd..cd9433f8b1af0d5e3afe56396b78f2ac1f2e51d7 100644 (file)
@@ -1,5 +1,5 @@
 ï»¿<?xml version="1.0" encoding="utf-8"?>\r
-<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\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
     <ProjectGuid>{6FDE4E5E-57D0-432F-A987-6C226A7827E4}</ProjectGuid>\r
     <RootNamespace>teste</RootNamespace>\r
     <Keyword>Win32Proj</Keyword>\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>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\r
+    <PlatformToolset>v140</PlatformToolset>\r
   </PropertyGroup>\r
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">\r
     <ConfigurationType>Application</ConfigurationType>\r
     <CharacterSet>Unicode</CharacterSet>\r
-    <PlatformToolset>v120</PlatformToolset>\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
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(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
+    <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'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\r
-    <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>\r
-    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\bin\$(Configuration)\</OutDir>\r
-    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\obj\$(ProjectName)\$(Configuration)\</IntDir>\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
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">\r
+    <TargetName>$(ProjectName)$(MONO_TARGET_SUFFIX)</TargetName>\r
+  </PropertyGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)e/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)e/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)e/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>ws2_32.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <RandomizedBaseAddress>false</RandomizedBaseAddress>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <OptimizeReferences>true</OptimizeReferences>\r
       <DataExecutionPrevention>\r
       </DataExecutionPrevention>\r
       <TargetMachine>MachineX86</TargetMachine>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">\r
     </Midl>\r
     <ClCompile>\r
       <Optimization>Disabled</Optimization>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
       <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
       <MinimalRebuild>true</MinimalRebuild>\r
       <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>\r
-      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
-      <ObjectFileName>$(IntDir)e/</ObjectFileName>\r
-      <ProgramDataBaseFileName>$(IntDir)e/vc80.pdb</ProgramDataBaseFileName>\r
-      <XMLDocumentationFileName>$(IntDir)e/</XMLDocumentationFileName>\r
+      <ObjectFileName>$(IntDir)</ObjectFileName>\r
+      <XMLDocumentationFileName>$(IntDir)</XMLDocumentationFileName>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
       <CompileAs>CompileAsC</CompileAs>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalDependencies>glib-2.0.lib;gmodule-2.0.lib;ws2_32.lib;gthread-2.0.lib;gobject-2.0.lib;libmono.lib;Psapi.lib;%(AdditionalDependencies)</AdditionalDependencies>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
+      <AdditionalDependencies>mono-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
+      <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\r
       <GenerateDebugInformation>true</GenerateDebugInformation>\r
       <SubSystem>Console</SubSystem>\r
       <TargetMachine>MachineX64</TargetMachine>\r
     <ClCompile>\r
       <Optimization>MinSpace</Optimization>\r
       <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>\r
-      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>\r
-      <BufferSecurityCheck>true</BufferSecurityCheck>\r
       <PrecompiledHeader>\r
       </PrecompiledHeader>\r
       <WarningLevel>Level3</WarningLevel>\r
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>\r
-      <AdditionalIncludeDirectories>$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
+      <AdditionalIncludeDirectories>$(MONO_DIR);$(SolutionDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>\r
     </ClCompile>\r
     <ProjectReference>\r
       <LinkLibraryDependencies>false</LinkLibraryDependencies>\r
     </ProjectReference>\r
     <Link>\r
-      <AdditionalLibraryDirectories>$(Platform)_$(Configuration)/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>\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-2.0$(MONO_TARGET_SUFFIX).lib;%(AdditionalDependencies)</AdditionalDependencies>\r
     </Link>\r
   </ItemDefinitionGroup>\r
   <ItemGroup>\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
-      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>\r
-      <Private>false</Private>\r
-      <CopyLocalSatelliteAssemblies>false</CopyLocalSatelliteAssemblies>\r
-      <LinkLibraryDependencies>true</LinkLibraryDependencies>\r
-      <UseLibraryDependencyInputs>false</UseLibraryDependencyInputs>\r
     </ProjectReference>\r
   </ItemGroup>\r
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />\r
diff --git a/msvc/teste.vcxproj.filters b/msvc/teste.vcxproj.filters
new file mode 100644 (file)
index 0000000..2a9ac33
--- /dev/null
@@ -0,0 +1,19 @@
+<?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>{41e7ed2d-af64-4a14-b616-a173548cfa98}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Source Files">\r
+      <UniqueIdentifier>{80eb1b1e-ad38-4803-aed9-671e96c45886}</UniqueIdentifier>\r
+    </Filter>\r
+    <Filter Include="Resource Files">\r
+      <UniqueIdentifier>{cddd710c-97ab-4980-b086-d4af5bfc1c80}</UniqueIdentifier>\r
+    </Filter>\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <ClCompile Include="..\samples\embed\teste.c">\r
+      <Filter>Source Files</Filter>\r
+    </ClCompile>\r
+  </ItemGroup>\r
+</Project>
\ No newline at end of file
index 73f2a1b5cfa27d9b76c8791eaf3d1dfbf6784552..a05395ca491b2fa58eabf042b27bd7116a848737 100755 (executable)
@@ -1,17 +1,55 @@
-@echo off
-cd ..
-if exist config.h if not exist cygconfig.h copy config.h cygconfig.h
-if exist eglib\config.h if not exist eglib\cygconfig.h copy eglib\config.h eglib\cygconfig.h
-copy winconfig.h config.h
-copy eglib\winconfig.h eglib\config.h
-%windir%\system32\WindowsPowerShell\v1.0\powershell.exe -Command "(Get-Content config.h) -replace '#MONO_VERSION#', (Select-String -path configure.ac -pattern 'AC_INIT\(mono, \[(.*)\]').Matches[0].Groups[1].Value | Set-Content config.h"
-goto end
-:error
-echo fatal error: the VSDepenancies directory was not found in the "mono" directory
-echo error: you must download and unzip that file
-exit /b 100
-goto end
-:ok
-echo OK
-:end
-exit /b 0
+@ECHO off
+
+SET CONFIG_H=..\config.h
+SET EGLIB_CONFIG_H=..\eglib\config.h
+SET CYG_CONFIG_H=..\cygconfig.h
+SET EGLIB_CYG_CONFIG_H=..\eglib\cygconfig.h
+SET WIN_CONFIG_H=..\winconfig.h
+SET EGLIB_WIN_CONFIG_H=..\eglib\winconfig.h
+SET CONFIGURE_AC=..\configure.ac
+SET VERSION_H=..\mono\mini\version.h
+
+
+ECHO Setting up Mono configuration headers...
+
+IF EXIST %CONFIG_H% (
+       IF NOT EXIST %CYG_CONFIG_H% (
+               ECHO copy %CONFIG_H% %CYG_CONFIG_H%
+               copy %CONFIG_H% %CYG_CONFIG_H%
+       )
+)
+
+IF EXIST %EGLIB_CONFIG_H% (
+       IF NOT EXIST %EGLIB_CYG_CONFIG_H% (
+               ECHO copy %EGLIB_CONFIG_H% %EGLIB_CYG_CONFIG_H%
+               copy %EGLIB_CONFIG_H% %EGLIB_CYG_CONFIG_H%
+       )
+)
+
+%windir%\system32\WindowsPowerShell\v1.0\powershell.exe -executionpolicy bypass -NonInteractive -File compare-config-files.ps1 %WIN_CONFIG_H% %CONFIG_H% %CONFIGURE_AC% >$null 2>&1
+
+IF NOT %ERRORLEVEL% == 0 (
+       ECHO copy %WIN_CONFIG_H% %CONFIG_H%
+       copy %WIN_CONFIG_H% %CONFIG_H%
+       %windir%\system32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -Command "(Get-Content %CONFIG_H%) -replace '#MONO_VERSION#', (Select-String -path %CONFIGURE_AC% -pattern 'AC_INIT\(mono, \[(.*)\]').Matches[0].Groups[1].Value | Set-Content %CONFIG_H%" >$null 2>&1
+)
+
+%windir%\system32\WindowsPowerShell\v1.0\powershell.exe -executionpolicy bypass -NonInteractive -File compare-config-files.ps1 %EGLIB_WIN_CONFIG_H% %EGLIB_CONFIG_H% >$null 2>&1
+
+IF NOT %ERRORLEVEL% == 0 (
+       ECHO copy %EGLIB_WIN_CONFIG_H% %EGLIB_CONFIG_H%
+       copy %EGLIB_WIN_CONFIG_H% %EGLIB_CONFIG_H%
+)
+
+SET VERSION_CONTENT="#define FULL_VERSION \"Visual Studio built mono\""
+%windir%\system32\WindowsPowerShell\v1.0\powershell.exe -executionpolicy bypass -NonInteractive -File compare-config-content.ps1 %VERSION_CONTENT% %VERSION_H%
+
+
+IF NOT %ERRORLEVEL% == 0 (
+       ECHO Configure %VERSION_H%
+       ECHO #define FULL_VERSION "Visual Studio built mono"> %VERSION_H%
+)
+
+ECHO Successfully setup Mono configuration headers.
+
+EXIT /b 0
diff --git a/net_4_x.sln b/net_4_x.sln
new file mode 100644 (file)
index 0000000..ba17c5e
--- /dev/null
@@ -0,0 +1,2036 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00\r
+# Visual Studio 2012
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mcs-net_4_x", "mcs/mcs/mcs-net_4_x.csproj", "{322A755A-ED38-4295-979D-E49EBAFA2852}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "corlib-net_4_x", "mcs/class/corlib/corlib-net_4_x.csproj", "{2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-net_4_x", "mcs/class/System/System-net_4_x.csproj", "{2762E921-91A8-4C87-91E9-BA628013F753}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml-net_4_x", "mcs/class/System.XML/System.Xml-net_4_x.csproj", "{87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-secxml-net_4_x", "mcs/class/System/System-secxml-net_4_x.csproj", "{19954F80-065E-4D46-8FEF-62BA4D6CFDAD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml-bare-net_4_x", "mcs/class/System.XML/System.Xml-bare-net_4_x.csproj", "{A5216031-11A3-44DD-B2FF-A14AE63BD0C3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System-bare-net_4_x", "mcs/class/System/System-bare-net_4_x.csproj", "{483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security-net_4_x", "mcs/class/Mono.Security/Mono.Security-net_4_x.csproj", "{42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Configuration-net_4_x", "mcs/class/System.Configuration/System.Configuration-net_4_x.csproj", "{D5CDC09C-F19A-4811-A6C8-70F51CBFB644}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Security-net_4_x", "mcs/class/System.Security/System.Security-net_4_x.csproj", "{3ED36717-A9D1-4289-8949-9B7F39766DEB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Core-net_4_x", "mcs/class/System.Core/System.Core-net_4_x.csproj", "{359142A1-D80F-401E-AA64-7167C9317649}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Posix-net_4_x", "mcs/class/Mono.Posix/Mono.Posix-net_4_x.csproj", "{66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CompilerServices.SymbolWriter-net_4_x", "mcs/class/Mono.CompilerServices.SymbolWriter/Mono.CompilerServices.SymbolWriter-net_4_x.csproj", "{88177C4B-894F-485D-B95A-44199C06BE9F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Core-plaincore-net_4_x", "mcs/class/System.Core/System.Core-plaincore-net_4_x.csproj", "{1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "resgen-net_4_x", "mcs/tools/resgen/resgen-net_4_x.csproj", "{647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IO.Compression-net_4_x", "mcs/class/System.IO.Compression/System.IO.Compression-net_4_x.csproj", "{6187D26C-54C8-4298-829E-A99B0E6036B1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IO.Compression.FileSystem-net_4_x", "mcs/class/System.IO.Compression.FileSystem/System.IO.Compression.FileSystem-net_4_x.csproj", "{9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Drawing-net_4_x", "mcs/class/System.Drawing/System.Drawing-net_4_x.csproj", "{584A5E46-2958-4CB2-8DF9-188B420D0BB0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Transactions-net_4_x", "mcs/class/System.Transactions/System.Transactions-net_4_x.csproj", "{3821C69F-220D-4231-992C-0FE05311A005}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.EnterpriseServices-net_4_x", "mcs/class/System.EnterpriseServices/System.EnterpriseServices-net_4_x.csproj", "{61E3D008-E273-4E12-860A-8ADA031098C2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Data.Tds-net_4_x", "mcs/class/Mono.Data.Tds/Mono.Data.Tds-net_4_x.csproj", "{39F59AE4-1381-4275-B14E-16D786F40B93}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Numerics-net_4_x", "mcs/class/System.Numerics/System.Numerics-net_4_x.csproj", "{BD2FFDDC-BD89-4041-82F5-A696C941C7BE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Numerics.Vectors-net_4_x", "mcs/class/System.Numerics.Vectors/System.Numerics.Vectors-net_4_x.csproj", "{B05362C2-C85F-43A5-93D7-49A45892438D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data-net_4_x", "mcs/class/System.Data/System.Data-net_4_x.csproj", "{EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ComponentModel.DataAnnotations-net_4_x", "mcs/class/System.ComponentModel.DataAnnotations/System.ComponentModel.DataAnnotations-net_4_x.csproj", "{8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Accessibility-net_4_x", "mcs/class/Accessibility/Accessibility-net_4_x.csproj", "{E51283DC-7090-479E-B723-01C0953F18EA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.WebBrowser-net_4_x", "mcs/class/Mono.WebBrowser/Mono.WebBrowser-net_4_x.csproj", "{B6DD737B-421C-4201-A852-8022328FE59D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Serialization.Formatters.Soap-net_4_x", "mcs/class/System.Runtime.Serialization.Formatters.Soap/System.Runtime.Serialization.Formatters.Soap-net_4_x.csproj", "{A157AD69-59D4-49DE-94B3-DB883B2BEAA5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows.Forms-net_4_x", "mcs/class/System.Windows.Forms/System.Windows.Forms-net_4_x.csproj", "{108227C7-8ED9-4483-949D-07BF0DA1A201}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Data.Sqlite-net_4_x", "mcs/class/Mono.Data.Sqlite/Mono.Data.Sqlite-net_4_x.csproj", "{371560EA-7BD3-4025-90CB-F1B112403CF2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.ApplicationServices-net_4_x", "mcs/class/System.Web.ApplicationServices/System.Web.ApplicationServices-net_4_x.csproj", "{928432BE-3518-4103-97F6-48B9658588A6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Novell.Directory.Ldap-net_4_x", "mcs/class/Novell.Directory.Ldap/Novell.Directory.Ldap-net_4_x.csproj", "{B424FF7F-8F49-45F5-BFD5-6319F818816F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.DirectoryServices-net_4_x", "mcs/class/System.DirectoryServices/System.DirectoryServices-net_4_x.csproj", "{CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web-net_4_x", "mcs/class/System.Web/System.Web-net_4_x.csproj", "{9DB806CB-B828-49B7-BAE2-2E52402CB4DC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Services-net_4_x", "mcs/class/System.Web.Services/System.Web.Services-net_4_x.csproj", "{E43ADBA7-5DB9-466B-90C6-FFFDA520848D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web-plainweb-net_4_x", "mcs/class/System.Web/System.Web-plainweb-net_4_x.csproj", "{DE51B021-D51C-4F26-99EE-B0729D97631E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Design-plaindesign-net_4_x", "mcs/class/System.Design/System.Design-plaindesign-net_4_x.csproj", "{DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Design-net_4_x", "mcs/class/System.Design/System.Design-net_4_x.csproj", "{EFEDC380-2CB0-4B40-9566-D2302867A4D9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Remoting-net_4_x", "mcs/class/System.Runtime.Remoting/System.Runtime.Remoting-net_4_x.csproj", "{F19F77AE-1A81-4676-BAB8-6C1DA243A961}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Configuration.Install-net_4_x", "mcs/class/System.Configuration.Install/System.Configuration.Install-net_4_x.csproj", "{B144ACD4-089D-4769-8605-583FBEDB5B7C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Management-net_4_x", "mcs/class/System.Management/System.Management-net_4_x.csproj", "{A81C8BB6-5799-49BC-849A-CB422D3F8DB9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.OracleClient-net_4_x", "mcs/class/System.Data.OracleClient/System.Data.OracleClient-net_4_x.csproj", "{0029417C-ED54-4162-8D8C-D935C760D89D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Cscompmgd-net_4_x", "mcs/class/Cscompmgd/Cscompmgd-net_4_x.csproj", "{2AB43CEE-0BE1-46EF-971E-3678330BEA13}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Commons.Xml.Relaxng-net_4_x", "mcs/class/Commons.Xml.Relaxng/Commons.Xml.Relaxng-net_4_x.csproj", "{FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Messaging-net_4_x", "mcs/class/Mono.Messaging/Mono.Messaging-net_4_x.csproj", "{F89761CF-5915-45E5-8C9C-E4F883EC5FA5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Messaging-net_4_x", "mcs/class/System.Messaging/System.Messaging-net_4_x.csproj", "{4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceProcess-net_4_x", "mcs/class/System.ServiceProcess/System.ServiceProcess-net_4_x.csproj", "{CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Drawing.Design-net_4_x", "mcs/class/System.Drawing.Design/System.Drawing.Design-net_4_x.csproj", "{BAC9BBAE-661E-4B6E-97BC-4045D34E887E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpZipLib-net_4_x", "mcs/class/ICSharpCode.SharpZipLib/ICSharpCode.SharpZipLib-net_4_x.csproj", "{4903F98F-B4C9-467A-8FBA-39E7F91D9327}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IBM.Data.DB2-net_4_x", "mcs/class/IBM.Data.DB2/IBM.Data.DB2-net_4_x.csproj", "{83DC05C9-3C7E-44D9-8D56-5619CF832BC5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomMarshalers-net_4_x", "mcs/class/CustomMarshalers/CustomMarshalers-net_4_x.csproj", "{6D021ADB-0407-42C9-9CC9-6613D94C61AE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemWebTestShim-net_4_x", "mcs/class/SystemWebTestShim/SystemWebTestShim-net_4_x.csproj", "{F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Internals-net_4_x", "mcs/class/System.ServiceModel.Internals/System.ServiceModel.Internals-net_4_x.csproj", "{5769B536-7E8E-4C2A-8671-6B256D0F620B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SMDiagnostics-net_4_x", "mcs/class/SMDiagnostics/SMDiagnostics-net_4_x.csproj", "{8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Serialization-net_4_x", "mcs/class/System.Runtime.Serialization/System.Runtime.Serialization-net_4_x.csproj", "{D845AD9D-3CCB-49CB-9543-028678E94938}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml.Linq-net_4_x", "mcs/class/System.Xml.Linq/System.Xml.Linq-net_4_x.csproj", "{526286D5-38D9-4579-B001-471440D57752}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Linq-net_4_x", "mcs/class/System.Data.Linq/System.Data.Linq-net_4_x.csproj", "{E6EE9E9A-42BA-4202-8813-FCF40E9061BF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Abstractions-net_4_x", "mcs/class/System.Web.Abstractions/System.Web.Abstractions-net_4_x.csproj", "{79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Routing-net_4_x", "mcs/class/System.Web.Routing/System.Web.Routing-net_4_x.csproj", "{EBD67AE3-F249-4768-A143-6B2F9E56BC39}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.DurableInstancing-net_4_x", "mcs/class/System.Runtime.DurableInstancing/System.Runtime.DurableInstancing-net_4_x.csproj", "{67822258-3D1E-449F-ACDD-BE1918B44458}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IdentityModel-net_4_x", "mcs/class/System.IdentityModel/System.IdentityModel-net_4_x.csproj", "{FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.IdentityModel.Selectors-net_4_x", "mcs/class/System.IdentityModel.Selectors/System.IdentityModel.Selectors-net_4_x.csproj", "{BBA32980-B28C-476D-AEB0-892F1B1DFB5E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel-net_4_x", "mcs/class/System.ServiceModel/System.ServiceModel-net_4_x.csproj", "{FE596C31-BDA2-4850-8F79-F8F4DF70F44A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Activation-net_4_x", "mcs/class/System.ServiceModel.Activation/System.ServiceModel.Activation-net_4_x.csproj", "{7A23227C-591B-4F80-9D62-4D0271073D82}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel-plainservice-net_4_x", "mcs/class/System.ServiceModel/System.ServiceModel-plainservice-net_4_x.csproj", "{88C258E1-F0AF-47DA-96C8-7FA6421067CD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Extensions-net_4_x", "mcs/class/System.Web.Extensions/System.Web.Extensions-net_4_x.csproj", "{EE582CE1-A692-47AC-B838-3A78955898BE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Extensions.Design-net_4_x", "mcs/class/System.Web.Extensions.Design/System.Web.Extensions.Design-net_4_x.csproj", "{288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.DynamicData-net_4_x", "mcs/class/System.Web.DynamicData/System.Web.DynamicData-net_4_x.csproj", "{E5E3F230-57CA-4685-B1C4-A164F0876755}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CSharp-net_4_x", "mcs/class/Mono.CSharp/Mono.CSharp-net_4_x.csproj", "{BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net-net_4_x", "mcs/class/System.Net/System.Net-net_4_x.csproj", "{A455F1BB-6273-4BAE-985C-563BED11D529}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Json-net_4_x", "mcs/class/System.Json/System.Json-net_4_x.csproj", "{D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.CSharp-net_4_x", "mcs/class/Microsoft.CSharp/Microsoft.CSharp-net_4_x.csproj", "{DABF9F75-63AD-4991-9D2B-9234E7032B32}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xaml-net_4_x", "mcs/class/System.Xaml/System.Xaml-net_4_x.csproj", "{4E79FA59-8344-4053-8E3B-B9619BA26513}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsBase-net_4_x", "mcs/class/WindowsBase/WindowsBase-net_4_x.csproj", "{A8F39368-ECD9-41A5-A562-CC7C82B3CC86}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Routing-net_4_x", "mcs/class/System.ServiceModel.Routing/System.ServiceModel.Routing-net_4_x.csproj", "{55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Discovery-net_4_x", "mcs/class/System.ServiceModel.Discovery/System.ServiceModel.Discovery-net_4_x.csproj", "{2D03C898-0B45-4CAA-A333-B2463B81C37B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Runtime.Caching-net_4_x", "mcs/class/System.Runtime.Caching/System.Runtime.Caching-net_4_x.csproj", "{2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Web.Infrastructure-net_4_x", "mcs/class/Microsoft.Web.Infrastructure/Microsoft.Web.Infrastructure-net_4_x.csproj", "{CD409902-9DA0-48A3-B360-C09060168CB5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ServiceModel.Web-net_4_x", "mcs/class/System.ServiceModel.Web/System.ServiceModel.Web-net_4_x.csproj", "{54F4FA23-5AF3-4312-9294-3DB109F644CC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http-net_4_x", "mcs/class/System.Net.Http/System.Net.Http-net_4_x.csproj", "{F1636C0A-FC68-4362-918F-9CCC789FED13}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http.WebRequest-net_4_x", "mcs/class/System.Net.Http.WebRequest/System.Net.Http.WebRequest-net_4_x.csproj", "{A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Razor-net_4_x", "mcs/class/System.Web.Razor/System.Web.Razor-net_4_x.csproj", "{11928A85-4C26-4258-AC86-2AFB0A69DED2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages.Deployment-net_4_x", "mcs/class/System.Web.WebPages.Deployment/System.Web.WebPages.Deployment-net_4_x.csproj", "{12C344E9-64D1-4F94-BAB6-1231B863EE6C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages-net_4_x", "mcs/class/System.Web.WebPages/System.Web.WebPages-net_4_x.csproj", "{D4EAC129-92AB-432C-941D-4B8481097060}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.WebPages.Razor-net_4_x", "mcs/class/System.Web.WebPages.Razor/System.Web.WebPages.Razor-net_4_x.csproj", "{55F0BCD6-4B0B-408C-BE98-4BFF82157048}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Mvc3-net_4_x", "mcs/class/System.Web.Mvc3/System.Web.Mvc3-net_4_x.csproj", "{14D0E9AA-AF30-4E40-983F-8BE66423E6AF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Net.Http.Formatting-net_4_x", "mcs/class/System.Net.Http.Formatting/System.Net.Http.Formatting-net_4_x.csproj", "{5883D056-B748-4D13-A7E3-2D2756CDC6BC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http-net_4_x", "mcs/class/System.Web.Http/System.Web.Http-net_4_x.csproj", "{6DDAE502-A602-410C-B182-C18D5100DDB0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http.SelfHost-net_4_x", "mcs/class/System.Web.Http.SelfHost/System.Web.Http.SelfHost-net_4_x.csproj", "{0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Http.WebHost-net_4_x", "mcs/class/System.Web.Http.WebHost/System.Web.Http.WebHost-net_4_x.csproj", "{2AF7E697-07BA-439E-89BF-076AEE4AE04C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.NewSystemSource-net_4_x", "mcs/class/Mono.Security.Providers.NewSystemSource/Mono.Security.Providers.NewSystemSource-net_4_x.csproj", "{0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.NewTls-net_4_x", "mcs/class/Mono.Security.Providers.NewTls/Mono.Security.Providers.NewTls-net_4_x.csproj", "{C8B8E524-BB3A-44E2-8C22-E3313E9F477C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Framework-net_4_x", "mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework-net_4_x.csproj", "{5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Utilities-net_4_x", "mcs/class/Microsoft.Build.Utilities/Microsoft.Build.Utilities-net_4_x.csproj", "{8E5728E0-CEAF-431F-963E-EB1DEE15C506}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Engine-net_4_x", "mcs/class/Microsoft.Build.Engine/Microsoft.Build.Engine-net_4_x.csproj", "{75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.XBuild.Tasks-net_4_x", "mcs/class/Mono.XBuild.Tasks/Mono.XBuild.Tasks-net_4_x.csproj", "{3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build.Tasks-net_4_x", "mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks-net_4_x.csproj", "{979FCA08-E170-4BA6-969B-30213135BEA3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Build-net_4_x", "mcs/class/Microsoft.Build/Microsoft.Build-net_4_x.csproj", "{124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PEAPI-net_4_x", "mcs/class/PEAPI/PEAPI-net_4_x.csproj", "{34443C71-09F1-4F21-ABB4-82822376F74F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N-net_4_x", "mcs/class/I18N/Common/I18N-net_4_x.csproj", "{E831A310-28EE-4433-B916-FF38A0FCDBE6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.West-net_4_x", "mcs/class/I18N/West/I18N.West-net_4_x.csproj", "{3516F613-9194-4B95-B7B2-3F9B37A87B30}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.MidEast-net_4_x", "mcs/class/I18N/MidEast/I18N.MidEast-net_4_x.csproj", "{CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.Other-net_4_x", "mcs/class/I18N/Other/I18N.Other-net_4_x.csproj", "{990903B9-BEDF-472C-97B8-221F8AA0A731}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.Rare-net_4_x", "mcs/class/I18N/Rare/I18N.Rare-net_4_x.csproj", "{83227E53-5469-412F-B936-74AD08CDD9D9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "I18N.CJK-net_4_x", "mcs/class/I18N/CJK/I18N.CJK-net_4_x.csproj", "{4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Http-net_4_x", "mcs/class/Mono.Http/Mono.Http-net_4_x.csproj", "{11DD6F15-65AB-4CBD-9EFE-2C9626388C53}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cairo-net_4_x", "mcs/class/Mono.Cairo/Mono.Cairo-net_4_x.csproj", "{D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil-net_4_x", "mcs/class/Mono.Cecil/Mono.Cecil-net_4_x.csproj", "{2C0D558F-0B38-4691-967E-A910A1B995C1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Cecil.Mdb-net_4_x", "mcs/class/Mono.Cecil.Mdb/Mono.Cecil.Mdb-net_4_x.csproj", "{CF14D34A-F69B-47FB-A99C-D25C77198F30}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Debugger.Soft-net_4_x", "mcs/class/Mono.Debugger.Soft/Mono.Debugger.Soft-net_4_x.csproj", "{57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.C5-net_4_x", "mcs/class/Mono.C5/Mono.C5-net_4_x.csproj", "{61B86230-B170-4B03-A8CA-D5AF77858D7E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Management-net_4_x", "mcs/class/Mono.Management/Mono.Management-net_4_x.csproj", "{1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Options-net_4_x", "mcs/class/Mono.Options/Mono.Options-net_4_x.csproj", "{115711B0-D1F2-4E50-83F9-63128E70CE05}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Simd-net_4_x", "mcs/class/Mono.Simd/Mono.Simd-net_4_x.csproj", "{9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Tasklets-net_4_x", "mcs/class/Mono.Tasklets/Mono.Tasklets-net_4_x.csproj", "{85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.CodeContracts-net_4_x", "mcs/class/Mono.CodeContracts/Mono.CodeContracts-net_4_x.csproj", "{9BE8D62B-471D-4538-8287-691B4ECE3209}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Parallel-net_4_x", "mcs/class/Mono.Parallel/Mono.Parallel-net_4_x.csproj", "{18E55AE4-6B9B-44EF-94C9-1084D5472E63}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Win32-net_4_x", "mcs/class/Mono.Security.Win32/Mono.Security.Win32-net_4_x.csproj", "{994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RabbitMQ.Client.Apigen-net_4_x", "mcs/class/RabbitMQ.Client/src/apigen/RabbitMQ.Client.Apigen-net_4_x.csproj", "{D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RabbitMQ.Client-net_4_x", "mcs/class/RabbitMQ.Client/src/client/RabbitMQ.Client-net_4_x.csproj", "{8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Messaging.RabbitMQ-net_4_x", "mcs/class/Mono.Messaging.RabbitMQ/Mono.Messaging.RabbitMQ-net_4_x.csproj", "{FF19FF42-C95D-4BB7-A0D7-05A94C07276E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Dynamic-net_4_x", "mcs/class/System.Dynamic/System.Dynamic-net_4_x.csproj", "{5428F1E0-B0ED-46D6-B429-27D1A1C175C0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows.Forms.DataVisualization-net_4_x", "mcs/class/System.Windows.Forms.DataVisualization/System.Windows.Forms.DataVisualization-net_4_x.csproj", "{C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Interfaces-net_4_x", "mcs/class/System.Reactive.Interfaces/System.Reactive.Interfaces-net_4_x.csproj", "{0DA7868F-C598-4E45-B33C-86FBB482DB76}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Core-net_4_x", "mcs/class/System.Reactive.Core/System.Reactive.Core-net_4_x.csproj", "{52F7F1BD-9D67-494E-A53A-C291FF5424B4}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Linq-net_4_x", "mcs/class/System.Reactive.Linq/System.Reactive.Linq-net_4_x.csproj", "{EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.PlatformServices-net_4_x", "mcs/class/System.Reactive.PlatformServices/System.Reactive.PlatformServices-net_4_x.csproj", "{00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Providers-net_4_x", "mcs/class/System.Reactive.Providers/System.Reactive.Providers-net_4_x.csproj", "{22187CB5-7451-45B4-B21B-337D956FF05D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Runtime.Remoting-net_4_x", "mcs/class/System.Reactive.Runtime.Remoting/System.Reactive.Runtime.Remoting-net_4_x.csproj", "{7675D4A6-F017-4D20-BFE3-295B86F166CD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Windows.Forms-net_4_x", "mcs/class/System.Reactive.Windows.Forms/System.Reactive.Windows.Forms-net_4_x.csproj", "{9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Windows.Threading-net_4_x", "mcs/class/System.Reactive.Windows.Threading/System.Reactive.Windows.Threading-net_4_x.csproj", "{52C2AE83-A947-42CC-ADEF-9F54042D85D5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Observable.Aliases-net_4_x", "mcs/class/System.Reactive.Observable.Aliases/System.Reactive.Observable.Aliases-net_4_x.csproj", "{7D16E76F-3B1D-415E-AD93-5D4D86B451A0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Experimental-net_4_x", "mcs/class/System.Reactive.Experimental/System.Reactive.Experimental-net_4_x.csproj", "{20E6619C-E88D-442C-AFA8-2216A73CF8D2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Reactive.Debugger-net_4_x", "mcs/class/System.Reactive.Debugger/System.Reactive.Debugger-net_4_x.csproj", "{8EB36024-5DB5-4854-8425-8D95A8059F2D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Services.Client-net_4_x", "mcs/class/System.Data.Services.Client/System.Data.Services.Client-net_4_x.csproj", "{2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Services-net_4_x", "mcs/class/System.Data.Services/System.Data.Services-net_4_x.csproj", "{5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.Entity-net_4_x", "mcs/class/System.Data.Entity/System.Data.Entity-net_4_x.csproj", "{A559EE60-2FE6-47DD-B4B8-0097BD242D86}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Data.DataSetExtensions-net_4_x", "mcs/class/System.Data.DataSetExtensions/System.Data.DataSetExtensions-net_4_x.csproj", "{64D286EF-32EA-4494-9DD6-36609597A11A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Json.Microsoft-net_4_x", "mcs/class/System.Json.Microsoft/System.Json.Microsoft-net_4_x.csproj", "{E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Threading.Tasks.Dataflow-net_4_x", "mcs/class/System.Threading.Tasks.Dataflow/System.Threading.Tasks.Dataflow-net_4_x.csproj", "{70A422C5-17AF-48EE-8DD8-CF88D482606C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.ComponentModel.Composition-net_4_x", "mcs/class/System.ComponentModel.Composition.4.5/System.ComponentModel.Composition-net_4_x.csproj", "{9091B5ED-8AFF-4B93-801A-9A33E0895A2B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Windows-net_4_x", "mcs/class/System.Windows/System.Windows-net_4_x.csproj", "{3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Xml.Serialization-net_4_x", "mcs/class/System.Xml.Serialization/System.Xml.Serialization-net_4_x.csproj", "{2210873E-99FC-48A2-A261-D650BAE33A1C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.DotNet-net_4_x", "mcs/class/Mono.Security.Providers.DotNet/Mono.Security.Providers.DotNet-net_4_x.csproj", "{391EDD2B-85AC-4FCA-B607-AAD6C51E6799}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Security.Providers.OldTls-net_4_x", "mcs/class/Mono.Security.Providers.OldTls/Mono.Security.Providers.OldTls-net_4_x.csproj", "{E485E885-59B1-4081-BC66-56AAAFD8771A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.DirectoryServices.Protocols-net_4_x", "mcs/class/System.DirectoryServices.Protocols/System.DirectoryServices.Protocols-net_4_x.csproj", "{EF08F249-31A1-4E62-8391-ECBA5227B686}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualC-net_4_x", "mcs/class/Microsoft.VisualC/Microsoft.VisualC-net_4_x.csproj", "{ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebMatrix.Data-net_4_x", "mcs/class/WebMatrix.Data/WebMatrix.Data-net_4_x.csproj", "{25552E1C-6EE1-4D73-A309-A1ED7FA26E94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "monodoc-net_4_x", "mcs/class/monodoc/monodoc-net_4_x.csproj", "{0248869F-8D3B-4AB2-B976-B2A9AF1319A9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Deployment-net_4_x", "mcs/class/System.Deployment/System.Deployment-net_4_x.csproj", "{E378448B-0D48-4338-BAE0-CEB9A7CB3B80}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.Mobile-net_4_x", "mcs/class/System.Web.Mobile/System.Web.Mobile-net_4_x.csproj", "{E676BC22-5B81-4518-8243-3946BB57D665}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Web.RegularExpressions-net_4_x", "mcs/class/System.Web.RegularExpressions/System.Web.RegularExpressions-net_4_x.csproj", "{9B52B7BD-1E14-4300-BEC5-241513810554}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Workflow.Activities-net_4_x", "mcs/class/System.Workflow.Activities/System.Workflow.Activities-net_4_x.csproj", "{29FCE500-BC83-4BF0-AED0-4E96932182F7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Workflow.ComponentModel-net_4_x", "mcs/class/System.Workflow.ComponentModel/System.Workflow.ComponentModel-net_4_x.csproj", "{3424BA74-B0AE-4C5E-A2C6-6FF86369D510}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "System.Workflow.Runtime-net_4_x", "mcs/class/System.Workflow.Runtime/System.Workflow.Runtime-net_4_x.csproj", "{E4180397-83B3-4F7B-9878-6891698F7C52}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Collections.Concurrent-net_4_x", "mcs/class/Facades/System.Collections.Concurrent/Facades_System.Collections.Concurrent-net_4_x.csproj", "{EFD0287C-3651-4D42-B8CA-430776CB1E6D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Collections-net_4_x", "mcs/class/Facades/System.Collections/Facades_System.Collections-net_4_x.csproj", "{2597261D-EC05-4333-928D-1CA44AB1A5D2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ComponentModel.Annotations-net_4_x", "mcs/class/Facades/System.ComponentModel.Annotations/Facades_System.ComponentModel.Annotations-net_4_x.csproj", "{B26700A5-4A9A-4358-8C84-51AD67C706BA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ComponentModel.EventBasedAsync-net_4_x", "mcs/class/Facades/System.ComponentModel.EventBasedAsync/Facades_System.ComponentModel.EventBasedAsync-net_4_x.csproj", "{6871A822-F21C-4C0E-B97B-178FF6C3DB46}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ComponentModel-net_4_x", "mcs/class/Facades/System.ComponentModel/Facades_System.ComponentModel-net_4_x.csproj", "{3FA73846-3666-4769-B431-1A7538B08F39}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.Contracts-net_4_x", "mcs/class/Facades/System.Diagnostics.Contracts/Facades_System.Diagnostics.Contracts-net_4_x.csproj", "{8892480E-A4C6-4C4C-8722-21C5483F8851}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.Debug-net_4_x", "mcs/class/Facades/System.Diagnostics.Debug/Facades_System.Diagnostics.Debug-net_4_x.csproj", "{7221EF5D-7340-4E8C-99F0-9EE9C55AA189}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.Tracing-net_4_x", "mcs/class/Facades/System.Diagnostics.Tracing/Facades_System.Diagnostics.Tracing-net_4_x.csproj", "{B33966AB-7211-43B4-B5C0-3F818869CB08}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.Tools-net_4_x", "mcs/class/Facades/System.Diagnostics.Tools/Facades_System.Diagnostics.Tools-net_4_x.csproj", "{5B299463-3E19-48C1-8625-31E12E1CC146}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Dynamic.Runtime-net_4_x", "mcs/class/Facades/System.Dynamic.Runtime/Facades_System.Dynamic.Runtime-net_4_x.csproj", "{E48CEF36-3218-477B-A8B5-014519207FF2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Globalization-net_4_x", "mcs/class/Facades/System.Globalization/Facades_System.Globalization-net_4_x.csproj", "{5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO-net_4_x", "mcs/class/Facades/System.IO/Facades_System.IO-net_4_x.csproj", "{6C8B94F6-E589-472C-80CA-BD55DAFAC523}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Linq.Expressions-net_4_x", "mcs/class/Facades/System.Linq.Expressions/Facades_System.Linq.Expressions-net_4_x.csproj", "{24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Linq.Parallel-net_4_x", "mcs/class/Facades/System.Linq.Parallel/Facades_System.Linq.Parallel-net_4_x.csproj", "{CFF3822F-E829-4AEF-899A-963C4EAF6941}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Linq.Queryable-net_4_x", "mcs/class/Facades/System.Linq.Queryable/Facades_System.Linq.Queryable-net_4_x.csproj", "{49E80FC1-1707-4715-8D94-CBDC79B007E9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Linq-net_4_x", "mcs/class/Facades/System.Linq/Facades_System.Linq-net_4_x.csproj", "{9F1C9D98-4C32-4698-B26F-10A38B5073B0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.NetworkInformation-net_4_x", "mcs/class/Facades/System.Net.NetworkInformation/Facades_System.Net.NetworkInformation-net_4_x.csproj", "{B6AE3A72-1756-46BF-9105-C4D815A5C044}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Primitives-net_4_x", "mcs/class/Facades/System.Net.Primitives/Facades_System.Net.Primitives-net_4_x.csproj", "{79BB52C8-198A-4238-B2F6-62CEEBD7D228}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Requests-net_4_x", "mcs/class/Facades/System.Net.Requests/Facades_System.Net.Requests-net_4_x.csproj", "{538C60BD-0652-4780-AA7C-338C2DD82448}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ObjectModel-net_4_x", "mcs/class/Facades/System.ObjectModel/Facades_System.ObjectModel-net_4_x.csproj", "{D14B21CE-AC35-445E-930F-9C7F6E032EE8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.Extensions-net_4_x", "mcs/class/Facades/System.Reflection.Extensions/Facades_System.Reflection.Extensions-net_4_x.csproj", "{B6D0F01A-1585-464E-850A-502EB4BBA8A2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.Primitives-net_4_x", "mcs/class/Facades/System.Reflection.Primitives/Facades_System.Reflection.Primitives-net_4_x.csproj", "{D60D1AB4-D664-4B1F-9724-962A2D205B07}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection-net_4_x", "mcs/class/Facades/System.Reflection/Facades_System.Reflection-net_4_x.csproj", "{BE1CD06E-F08E-46EE-9DFD-91E1557F4121}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Resources.ResourceManager-net_4_x", "mcs/class/Facades/System.Resources.ResourceManager/Facades_System.Resources.ResourceManager-net_4_x.csproj", "{9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Extensions-net_4_x", "mcs/class/Facades/System.Runtime.Extensions/Facades_System.Runtime.Extensions-net_4_x.csproj", "{1215B717-BE9D-4D53-AEB9-35522519BC75}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.InteropServices-net_4_x", "mcs/class/Facades/System.Runtime.InteropServices/Facades_System.Runtime.InteropServices-net_4_x.csproj", "{71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x", "mcs/class/Facades/System.Runtime.InteropServices.WindowsRuntime/Facades_System.Runtime.InteropServices.WindowsRuntime-net_4_x.csproj", "{521A60CF-50DF-4EF1-88B2-418BD39BDEC4}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Numerics-net_4_x", "mcs/class/Facades/System.Runtime.Numerics/Facades_System.Runtime.Numerics-net_4_x.csproj", "{AEB47FF6-C50D-4985-A57F-17F71F63694A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Serialization.Json-net_4_x", "mcs/class/Facades/System.Runtime.Serialization.Json/Facades_System.Runtime.Serialization.Json-net_4_x.csproj", "{88B512E6-3E9D-4F87-A9E4-5F9239848665}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Serialization.Primitives-net_4_x", "mcs/class/Facades/System.Runtime.Serialization.Primitives/Facades_System.Runtime.Serialization.Primitives-net_4_x.csproj", "{49BB9015-6989-4BD0-AF82-9184BE637D57}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Serialization.Xml-net_4_x", "mcs/class/Facades/System.Runtime.Serialization.Xml/Facades_System.Runtime.Serialization.Xml-net_4_x.csproj", "{C948B3D4-0BEE-4363-B4A7-635A169C8D63}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime-net_4_x", "mcs/class/Facades/System.Runtime/Facades_System.Runtime-net_4_x.csproj", "{CFB32425-69C5-425B-BF9A-66CB3AC52D71}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Principal-net_4_x", "mcs/class/Facades/System.Security.Principal/Facades_System.Security.Principal-net_4_x.csproj", "{9040CA8B-4352-4621-A2B3-5C32A383DE15}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceModel.Http-net_4_x", "mcs/class/Facades/System.ServiceModel.Http/Facades_System.ServiceModel.Http-net_4_x.csproj", "{4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceModel.Primitives-net_4_x", "mcs/class/Facades/System.ServiceModel.Primitives/Facades_System.ServiceModel.Primitives-net_4_x.csproj", "{524B10FC-880D-4131-8CAE-027BC3A68B6F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceModel.Security-net_4_x", "mcs/class/Facades/System.ServiceModel.Security/Facades_System.ServiceModel.Security-net_4_x.csproj", "{F937A550-0A4A-4A10-9FD9-E8DE7696671F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Text.Encoding.Extensions-net_4_x", "mcs/class/Facades/System.Text.Encoding.Extensions/Facades_System.Text.Encoding.Extensions-net_4_x.csproj", "{28CEA696-8466-4826-9128-B83318184EF4}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Text.Encoding-net_4_x", "mcs/class/Facades/System.Text.Encoding/Facades_System.Text.Encoding-net_4_x.csproj", "{0CD67EE4-42D8-43A6-880F-2C038E368C98}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Text.RegularExpressions-net_4_x", "mcs/class/Facades/System.Text.RegularExpressions/Facades_System.Text.RegularExpressions-net_4_x.csproj", "{490EF039-5913-4181-84CD-1F882968FC8C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.Tasks.Parallel-net_4_x", "mcs/class/Facades/System.Threading.Tasks.Parallel/Facades_System.Threading.Tasks.Parallel-net_4_x.csproj", "{0F8CA9A9-62A4-4829-925E-002F0B93EE79}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.Tasks-net_4_x", "mcs/class/Facades/System.Threading.Tasks/Facades_System.Threading.Tasks-net_4_x.csproj", "{F322318E-D053-45C9-AFDF-2AEEE1E0E006}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.Timer-net_4_x", "mcs/class/Facades/System.Threading.Timer/Facades_System.Threading.Timer-net_4_x.csproj", "{30F7C900-122A-42A6-9669-D5606B9105A5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading-net_4_x", "mcs/class/Facades/System.Threading/Facades_System.Threading-net_4_x.csproj", "{35258CFB-0308-493D-B2BD-B044EAFD5AD1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.ReaderWriter-net_4_x", "mcs/class/Facades/System.Xml.ReaderWriter/Facades_System.Xml.ReaderWriter-net_4_x.csproj", "{2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.XDocument-net_4_x", "mcs/class/Facades/System.Xml.XDocument/Facades_System.Xml.XDocument-net_4_x.csproj", "{D8643E47-F2D5-447B-840B-25FEB84C9EEC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.XmlSerializer-net_4_x", "mcs/class/Facades/System.Xml.XmlSerializer/Facades_System.Xml.XmlSerializer-net_4_x.csproj", "{E95FA58F-8086-45FF-8BD3-5A1FAF776709}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.Handles-net_4_x", "mcs/class/Facades/System.Runtime.Handles/Facades_System.Runtime.Handles-net_4_x.csproj", "{87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceModel.Duplex-net_4_x", "mcs/class/Facades/System.ServiceModel.Duplex/Facades_System.ServiceModel.Duplex-net_4_x.csproj", "{DE25A333-91AE-4F33-B483-A01D1D3D1675}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceModel.NetTcp-net_4_x", "mcs/class/Facades/System.ServiceModel.NetTcp/Facades_System.ServiceModel.NetTcp-net_4_x.csproj", "{0F83D60D-5AAA-425C-BC4E-01CA2018905C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_Microsoft.Win32.Primitives-net_4_x", "mcs/class/Facades/Microsoft.Win32.Primitives/Facades_Microsoft.Win32.Primitives-net_4_x.csproj", "{699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_Microsoft.Win32.Registry-net_4_x", "mcs/class/Facades/Microsoft.Win32.Registry/Facades_Microsoft.Win32.Registry-net_4_x.csproj", "{160B5B14-7A25-458E-B83F-35632C832866}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.AppContext-net_4_x", "mcs/class/Facades/System.AppContext/Facades_System.AppContext-net_4_x.csproj", "{B6B7A903-D696-43CF-AC42-39DCAAB00B9D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Collections.NonGeneric-net_4_x", "mcs/class/Facades/System.Collections.NonGeneric/Facades_System.Collections.NonGeneric-net_4_x.csproj", "{5F686C07-72CE-4A42-93B1-52B31227C3BB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Collections.Specialized-net_4_x", "mcs/class/Facades/System.Collections.Specialized/Facades_System.Collections.Specialized-net_4_x.csproj", "{5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ComponentModel.Primitives-net_4_x", "mcs/class/Facades/System.ComponentModel.Primitives/Facades_System.ComponentModel.Primitives-net_4_x.csproj", "{1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ComponentModel.TypeConverter-net_4_x", "mcs/class/Facades/System.ComponentModel.TypeConverter/Facades_System.ComponentModel.TypeConverter-net_4_x.csproj", "{FC19760B-00FF-4242-9760-9C8E9C87CCFB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Console-net_4_x", "mcs/class/Facades/System.Console/Facades_System.Console-net_4_x.csproj", "{6207AADB-0592-4B52-B71E-3565196EE893}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Data.Common-net_4_x", "mcs/class/Facades/System.Data.Common/Facades_System.Data.Common-net_4_x.csproj", "{360CDD70-6108-4406-9433-7BB178B0C3E3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Data.SqlClient-net_4_x", "mcs/class/Facades/System.Data.SqlClient/Facades_System.Data.SqlClient-net_4_x.csproj", "{575873BD-22DA-4A36-ABBD-B074EFEAB3AD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.FileVersionInfo-net_4_x", "mcs/class/Facades/System.Diagnostics.FileVersionInfo/Facades_System.Diagnostics.FileVersionInfo-net_4_x.csproj", "{D81BCBD3-415D-4309-A116-0B475D8A2FA8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.Process-net_4_x", "mcs/class/Facades/System.Diagnostics.Process/Facades_System.Diagnostics.Process-net_4_x.csproj", "{BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.TextWriterTraceListener-net_4_x", "mcs/class/Facades/System.Diagnostics.TextWriterTraceListener/Facades_System.Diagnostics.TextWriterTraceListener-net_4_x.csproj", "{EE8443AB-125D-4055-981A-143FB827C23C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.TraceEvent-net_4_x", "mcs/class/Facades/System.Diagnostics.TraceEvent/Facades_System.Diagnostics.TraceEvent-net_4_x.csproj", "{6460F8E8-775E-46B6-99E5-B48390591515}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.TraceSource-net_4_x", "mcs/class/Facades/System.Diagnostics.TraceSource/Facades_System.Diagnostics.TraceSource-net_4_x.csproj", "{530F1E68-3237-49E6-8D3B-06332F5AC055}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Globalization.Calendars-net_4_x", "mcs/class/Facades/System.Globalization.Calendars/Facades_System.Globalization.Calendars-net_4_x.csproj", "{BC71DA11-382F-459A-B3C3-F2F4267974FB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.Compression.ZipFile-net_4_x", "mcs/class/Facades/System.IO.Compression.ZipFile/Facades_System.IO.Compression.ZipFile-net_4_x.csproj", "{A8EB5499-FA67-4049-AA0A-241D82DA975C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.FileSystem-net_4_x", "mcs/class/Facades/System.IO.FileSystem/Facades_System.IO.FileSystem-net_4_x.csproj", "{3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.FileSystem.DriveInfo-net_4_x", "mcs/class/Facades/System.IO.FileSystem.DriveInfo/Facades_System.IO.FileSystem.DriveInfo-net_4_x.csproj", "{121F835D-CD32-4C19-ABA7-25EF4B84773F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.FileSystem.Primitives-net_4_x", "mcs/class/Facades/System.IO.FileSystem.Primitives/Facades_System.IO.FileSystem.Primitives-net_4_x.csproj", "{5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.IsolatedStorage-net_4_x", "mcs/class/Facades/System.IO.IsolatedStorage/Facades_System.IO.IsolatedStorage-net_4_x.csproj", "{A9B2D389-B9E5-4B0F-8115-2AADF285D217}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.MemoryMappedFiles-net_4_x", "mcs/class/Facades/System.IO.MemoryMappedFiles/Facades_System.IO.MemoryMappedFiles-net_4_x.csproj", "{18639F0F-74F1-4B61-81BF-D60B651F542A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.UnmanagedMemoryStream-net_4_x", "mcs/class/Facades/System.IO.UnmanagedMemoryStream/Facades_System.IO.UnmanagedMemoryStream-net_4_x.csproj", "{981E765A-9D68-4653-9079-69BFCD97F086}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.AuthenticationManager-net_4_x", "mcs/class/Facades/System.Net.AuthenticationManager/Facades_System.Net.AuthenticationManager-net_4_x.csproj", "{B6DBC302-E9DB-4464-979C-6D714B436A7E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Cache-net_4_x", "mcs/class/Facades/System.Net.Cache/Facades_System.Net.Cache-net_4_x.csproj", "{101D931B-24CE-44CE-8140-8B183D5CC46E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.HttpListener-net_4_x", "mcs/class/Facades/System.Net.HttpListener/Facades_System.Net.HttpListener-net_4_x.csproj", "{CC7A11AC-ACAA-4707-BEF1-1106938F19C7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Mail-net_4_x", "mcs/class/Facades/System.Net.Mail/Facades_System.Net.Mail-net_4_x.csproj", "{074DF29D-D38E-4FB9-86A0-18F47615CE72}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.NameResolution-net_4_x", "mcs/class/Facades/System.Net.NameResolution/Facades_System.Net.NameResolution-net_4_x.csproj", "{1219DA91-575A-45EA-9CC9-1471648A025F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Security-net_4_x", "mcs/class/Facades/System.Net.Security/Facades_System.Net.Security-net_4_x.csproj", "{601F297E-1242-4BC4-BD06-1111CE65D658}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.ServicePoint-net_4_x", "mcs/class/Facades/System.Net.ServicePoint/Facades_System.Net.ServicePoint-net_4_x.csproj", "{B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Sockets-net_4_x", "mcs/class/Facades/System.Net.Sockets/Facades_System.Net.Sockets-net_4_x.csproj", "{FC7570DA-CAE1-40AF-9EB4-9C9566746023}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Utilities-net_4_x", "mcs/class/Facades/System.Net.Utilities/Facades_System.Net.Utilities-net_4_x.csproj", "{6413D947-5660-473A-8C2C-9DF40BF8AEE1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.WebHeaderCollection-net_4_x", "mcs/class/Facades/System.Net.WebHeaderCollection/Facades_System.Net.WebHeaderCollection-net_4_x.csproj", "{A1B6CFFB-432C-4CB1-9A60-97B3CC859583}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.WebSockets-net_4_x", "mcs/class/Facades/System.Net.WebSockets/Facades_System.Net.WebSockets-net_4_x.csproj", "{C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.WebSockets.Client-net_4_x", "mcs/class/Facades/System.Net.WebSockets.Client/Facades_System.Net.WebSockets.Client-net_4_x.csproj", "{5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Resources.ReaderWriter-net_4_x", "mcs/class/Facades/System.Resources.ReaderWriter/Facades_System.Resources.ReaderWriter-net_4_x.csproj", "{2D720AF7-7104-46EF-93BC-B8BA133B6BF6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Runtime.CompilerServices.VisualC-net_4_x", "mcs/class/Facades/System.Runtime.CompilerServices.VisualC/Facades_System.Runtime.CompilerServices.VisualC-net_4_x.csproj", "{C1D26AE7-071A-4092-9866-0EE2D09CF342}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.AccessControl-net_4_x", "mcs/class/Facades/System.Security.AccessControl/Facades_System.Security.AccessControl-net_4_x.csproj", "{4867DFE7-C028-4518-B420-27C3E4582D0C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Claims-net_4_x", "mcs/class/Facades/System.Security.Claims/Facades_System.Security.Claims-net_4_x.csproj", "{4874E167-6B23-4FD6-B51D-048417A8054B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.DeriveBytes-net_4_x", "mcs/class/Facades/System.Security.Cryptography.DeriveBytes/Facades_System.Security.Cryptography.DeriveBytes-net_4_x.csproj", "{DB39DD76-4609-45D1-9615-57D4E436D7F1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Encoding-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Encoding/Facades_System.Security.Cryptography.Encoding-net_4_x.csproj", "{8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Encryption-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Encryption/Facades_System.Security.Cryptography.Encryption-net_4_x.csproj", "{EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Encryption.Aes-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Encryption.Aes/Facades_System.Security.Cryptography.Encryption.Aes-net_4_x.csproj", "{38BA78A4-9614-4000-80A7-DFCE31F10721}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Encryption.ECDiffieHellman/Facades_System.Security.Cryptography.Encryption.ECDiffieHellman-net_4_x.csproj", "{6499F7E3-64F3-495B-9900-E2D0AD47414F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Encryption.ECDsa/Facades_System.Security.Cryptography.Encryption.ECDsa-net_4_x.csproj", "{EFA0AABF-7830-4804-A92D-F6F31F86B826}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Hashing-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Hashing/Facades_System.Security.Cryptography.Hashing-net_4_x.csproj", "{C48B1038-4774-4D49-9D34-79DBBA725AA0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x", "mcs/class/Facades/System.Security.Cryptography.Hashing.Algorithms/Facades_System.Security.Cryptography.Hashing.Algorithms-net_4_x.csproj", "{0DBEDE3A-F06D-4C61-89DF-193C13393F7A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.RSA-net_4_x", "mcs/class/Facades/System.Security.Cryptography.RSA/Facades_System.Security.Cryptography.RSA-net_4_x.csproj", "{18EE2788-AC59-4A0C-A902-C6B64D285BB6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x", "mcs/class/Facades/System.Security.Cryptography.RandomNumberGenerator/Facades_System.Security.Cryptography.RandomNumberGenerator-net_4_x.csproj", "{C87878D2-CDEF-4EC9-8C94-C1381144F4EC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.X509Certificates-net_4_x", "mcs/class/Facades/System.Security.Cryptography.X509Certificates/Facades_System.Security.Cryptography.X509Certificates-net_4_x.csproj", "{C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Principal.Windows-net_4_x", "mcs/class/Facades/System.Security.Principal.Windows/Facades_System.Security.Principal.Windows-net_4_x.csproj", "{47977802-4193-48DC-AA0F-58D18AEDA405}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.Thread-net_4_x", "mcs/class/Facades/System.Threading.Thread/Facades_System.Threading.Thread-net_4_x.csproj", "{4D9EF694-5260-432D-BA34-503FFBE43B6C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.ThreadPool-net_4_x", "mcs/class/Facades/System.Threading.ThreadPool/Facades_System.Threading.ThreadPool-net_4_x.csproj", "{95B411AA-B13F-4621-B020-7F797E1F39F0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.XPath-net_4_x", "mcs/class/Facades/System.Xml.XPath/Facades_System.Xml.XPath-net_4_x.csproj", "{5C3F0B44-E169-4441-91F9-7285048F4946}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.XmlDocument-net_4_x", "mcs/class/Facades/System.Xml.XmlDocument/Facades_System.Xml.XmlDocument-net_4_x.csproj", "{D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.Xsl.Primitives-net_4_x", "mcs/class/Facades/System.Xml.Xsl.Primitives/Facades_System.Xml.Xsl.Primitives-net_4_x.csproj", "{653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_Microsoft.Win32.Registry.AccessControl-net_4_x", "mcs/class/Facades/Microsoft.Win32.Registry.AccessControl/Facades_Microsoft.Win32.Registry.AccessControl-net_4_x.csproj", "{7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.StackTrace-net_4_x", "mcs/class/Facades/System.Diagnostics.StackTrace/Facades_System.Diagnostics.StackTrace-net_4_x.csproj", "{871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Globalization.Extensions-net_4_x", "mcs/class/Facades/System.Globalization.Extensions/Facades_System.Globalization.Extensions-net_4_x.csproj", "{B875622B-BEA2-4D1C-8242-3A1FCECF5890}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.FileSystem.AccessControl-net_4_x", "mcs/class/Facades/System.IO.FileSystem.AccessControl/Facades_System.IO.FileSystem.AccessControl-net_4_x.csproj", "{321A53F3-A681-4CA5-A093-1C6650243F6A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Private.CoreLib.InteropServices-net_4_x", "mcs/class/Facades/System.Private.CoreLib.InteropServices/Facades_System.Private.CoreLib.InteropServices-net_4_x.csproj", "{5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Private.CoreLib.Threading-net_4_x", "mcs/class/Facades/System.Private.CoreLib.Threading/Facades_System.Private.CoreLib.Threading-net_4_x.csproj", "{642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.TypeExtensions-net_4_x", "mcs/class/Facades/System.Reflection.TypeExtensions/Facades_System.Reflection.TypeExtensions-net_4_x.csproj", "{C315A617-25A4-447F-AA4F-0E0E7E35F919}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.SecureString-net_4_x", "mcs/class/Facades/System.Security.SecureString/Facades_System.Security.SecureString-net_4_x.csproj", "{57C02AD3-1118-4982-BCE3-53158D30F4E9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.AccessControl-net_4_x", "mcs/class/Facades/System.Threading.AccessControl/Facades_System.Threading.AccessControl-net_4_x.csproj", "{FB663BC8-162E-43E7-9674-ECD2BEE82CC1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Threading.Overlapped-net_4_x", "mcs/class/Facades/System.Threading.Overlapped/Facades_System.Threading.Overlapped-net_4_x.csproj", "{E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Xml.XPath.XDocument-net_4_x", "mcs/class/Facades/System.Xml.XPath.XDocument/Facades_System.Xml.XPath.XDocument-net_4_x.csproj", "{38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.Emit.ILGeneration-net_4_x", "mcs/class/Facades/System.Reflection.Emit.ILGeneration/Facades_System.Reflection.Emit.ILGeneration-net_4_x.csproj", "{ACF5E339-FB52-48E0-A859-2CE75756DFE8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.Emit.Lightweight-net_4_x", "mcs/class/Facades/System.Reflection.Emit.Lightweight/Facades_System.Reflection.Emit.Lightweight-net_4_x.csproj", "{03B29131-9D1A-4446-92F2-237F9EF70C5C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Reflection.Emit-net_4_x", "mcs/class/Facades/System.Reflection.Emit/Facades_System.Reflection.Emit-net_4_x.csproj", "{5327CF02-204D-45CD-A68D-3D836470E439}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Diagnostics.PerformanceCounter-net_4_x", "mcs/class/Facades/System.Diagnostics.PerformanceCounter/Facades_System.Diagnostics.PerformanceCounter-net_4_x.csproj", "{BA0C64F1-3762-437D-8B58-75F68A5B4E7E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.FileSystem.Watcher-net_4_x", "mcs/class/Facades/System.IO.FileSystem.Watcher/Facades_System.IO.FileSystem.Watcher-net_4_x.csproj", "{44647FAA-F785-44DE-B6B2-ABC2B9768233}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.IO.Pipes-net_4_x", "mcs/class/Facades/System.IO.Pipes/Facades_System.IO.Pipes-net_4_x.csproj", "{D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Security.Cryptography.ProtectedData-net_4_x", "mcs/class/Facades/System.Security.Cryptography.ProtectedData/Facades_System.Security.Cryptography.ProtectedData-net_4_x.csproj", "{66B88E44-F7DA-4C83-B028-A49D4D3EBD16}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.ServiceProcess.ServiceController-net_4_x", "mcs/class/Facades/System.ServiceProcess.ServiceController/Facades_System.ServiceProcess.ServiceController-net_4_x.csproj", "{8C71A924-2561-434B-A792-2F84ABA1C0C2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Facades_System.Net.Http.WebRequestHandler-net_4_x", "mcs/class/Facades/System.Net.Http.WebRequestHandler/Facades_System.Net.Http.WebRequestHandler-net_4_x.csproj", "{ACA10642-1D5B-443D-99BE-65C31491C54F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NUnit.Framework-net_4_x", "mcs/nunit24/NUnitFramework/framework/NUnit.Framework-net_4_x.csproj", "{B2272696-96AA-4638-B17C-60A4BA37CA0E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.core.interfaces-net_4_x", "mcs/nunit24/NUnitCore/interfaces/nunit.core.interfaces-net_4_x.csproj", "{A950C3AB-D62D-4B20-BFB8-5671DE20E535}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.core-net_4_x", "mcs/nunit24/NUnitCore/core/nunit.core-net_4_x.csproj", "{257D35DE-7F06-42BA-B82E-734991FFE949}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.util-net_4_x", "mcs/nunit24/ClientUtilities/util/nunit.util-net_4_x.csproj", "{52B1E1ED-1F77-4AEC-9CB2-141B8795949F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.mocks-net_4_x", "mcs/nunit24/NUnitMocks/mocks/nunit.mocks-net_4_x.csproj", "{E072B33B-F3C5-4B2F-ABAA-1339CF716143}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.framework.extensions-net_4_x", "mcs/nunit24/NUnitExtensions/framework/nunit.framework.extensions-net_4_x.csproj", "{59253F15-7E2A-483D-8214-58F03681A3B6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit.core.extensions-net_4_x", "mcs/nunit24/NUnitExtensions/core/nunit.core.extensions-net_4_x.csproj", "{7DEADBAC-1F4D-4799-8174-01E175C869FC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit-console-runner-net_4_x", "mcs/nunit24/ConsoleRunner/nunit-console/nunit-console-runner-net_4_x.csproj", "{B0078000-EF01-4AA3-B5DD-47145B4527EE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunit-console-net_4_x", "mcs/nunit24/ConsoleRunner/nunit-console-exe/nunit-console-net_4_x.csproj", "{4FB9199D-D57E-4007-AA72-0200296AE55F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ilasm-net_4_x", "mcs/ilasm/ilasm-net_4_x.csproj", "{D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "gacutil-net_4_x", "mcs/tools/gacutil/gacutil-net_4_x.csproj", "{6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "culevel-net_4_x", "mcs/tools/culevel/culevel-net_4_x.csproj", "{ED867AC1-079C-4B5E-ADF9-E7722053B360}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cil-stringreplacer-net_4_x", "mcs/tools/cil-stringreplacer/cil-stringreplacer-net_4_x.csproj", "{FD725431-CB26-466D-BD55-C739485A50C9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "commoncryptogenerator-net_4_x", "mcs/tools/commoncryptogenerator/commoncryptogenerator-net_4_x.csproj", "{12527E95-60D3-4A66-91C6-7F8031519299}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "al-net_4_x", "mcs/tools/al/al-net_4_x.csproj", "{D237CE6E-EA8F-4E8E-8413-295B27714AC6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "monolinker-net_4_x", "mcs/tools/linker/monolinker-net_4_x.csproj", "{FA920637-C202-4E75-AC0F-1A8DBD631DF1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Tuner-net_4_x", "mcs/tools/tuner/Mono.Tuner-net_4_x.csproj", "{8CCE7044-3466-4599-B09E-9F8E0C2F4614}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "genxs-net_4_x", "mcs/tools/genxs/genxs-net_4_x.csproj", "{DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mkbundle-net_4_x", "mcs/tools/mkbundle/mkbundle-net_4_x.csproj", "{3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "monop-net_4_x", "mcs/tools/monop/monop-net_4_x.csproj", "{78B1A752-432B-4764-9E63-E95CCB23554F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-service-net_4_x", "mcs/tools/mono-service/mono-service-net_4_x.csproj", "{612FEFDB-12FA-4441-9094-236B05D645A4}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "xsd-net_4_x", "mcs/tools/mono-xsd/xsd-net_4_x.csproj", "{3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "wsdl-net_4_x", "mcs/tools/wsdl/wsdl-net_4_x.csproj", "{69D00FEC-59AA-43A0-90AD-87F400B8613C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-net_4_x", "mcs/tools/csharp/csharp-net_4_x.csproj", "{3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-api-info-net_4_x", "mcs/tools/corcompare/mono-api-info-net_4_x.csproj", "{4391CB6E-F09B-4D13-BA34-547E15FA7847}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-api-html-net_4_x", "mcs/tools/mono-api-html/mono-api-html-net_4_x.csproj", "{76A06DA3-F3B5-498C-9D75-72F325BB6656}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "compiler-tester-net_4_x", "mcs/tools/compiler-tester/compiler-tester-net_4_x.csproj", "{93602011-38AA-46AC-8203-571D620A228C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-xmltool-net_4_x", "mcs/tools/mono-xmltool/mono-xmltool-net_4_x.csproj", "{25CAFA51-9FE0-43AD-A642-B3D59BE2B377}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-shlib-cop-net_4_x", "mcs/tools/mono-shlib-cop/mono-shlib-cop-net_4_x.csproj", "{7E28A830-EB3C-48E3-B0FB-6DDAAF698115}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "sgen-net_4_x", "mcs/tools/sgen/sgen-net_4_x.csproj", "{8A516908-7CA0-40A7-86DD-0BEE1F4496C6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mconfig-net_4_x", "mcs/tools/mconfig/mconfig-net_4_x.csproj", "{8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "installutil-net_4_x", "mcs/tools/installutil/installutil-net_4_x.csproj", "{503D43D5-65AF-401A-9D50-53B514724152}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "nunitreport-net_4_x", "mcs/tools/nunitreport/nunitreport-net_4_x.csproj", "{DAE62F67-EE88-4192-8CB8-314E9E955BE9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "pdb2mdb-net_4_x", "mcs/tools/pdb2mdb/pdb2mdb-net_4_x.csproj", "{F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "sqlsharp-net_4_x", "mcs/tools/SqlSharp/sqlsharp-net_4_x.csproj", "{DCCC3618-803B-4492-A968-010E2C0851E8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "sqlmetal-net_4_x", "mcs/tools/sqlmetal/sqlmetal-net_4_x.csproj", "{71A04260-D8F6-4E97-898D-5F3D5A2F3D94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "svcutil-net_4_x", "mcs/tools/svcutil/svcutil-net_4_x.csproj", "{496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ictool-net_4_x", "mcs/tools/ictool/ictool-net_4_x.csproj", "{92EBF79E-AB94-4543-B130-6FEE6D0B3526}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "disco-net_4_x", "mcs/tools/disco/disco-net_4_x.csproj", "{49D19955-330A-4FF2-BE94-4AEAE6745EBE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "soapsuds-net_4_x", "mcs/tools/soapsuds/soapsuds-net_4_x.csproj", "{84ABC688-04BE-4F0B-9FD0-0332437C435F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "browsercaps-updater-net_4_x", "mcs/tools/browsercaps-updater/browsercaps-updater-net_4_x.csproj", "{01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-cil-strip-net_4_x", "mcs/tools/cil-strip/mono-cil-strip-net_4_x.csproj", "{2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "macpack-net_4_x", "mcs/tools/macpack/macpack-net_4_x.csproj", "{420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dtd2rng-net_4_x", "mcs/tools/dtd2rng/dtd2rng-net_4_x.csproj", "{60674A50-F2E0-4BC7-A917-8976821888ED}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "dtd2xsd-net_4_x", "mcs/tools/dtd2xsd/dtd2xsd-net_4_x.csproj", "{D22ABC86-1275-431C-911C-D14EE2A20FD7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mdoc-net_4_x", "mcs/tools/mdoc/mdoc-net_4_x.csproj", "{15871CCA-A500-4AE3-89D7-1F3429614403}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mod-net_4_x", "mcs/tools/mod/mod-net_4_x.csproj", "{135520B4-D83D-4726-B043-3B4FBF306F94}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "installvst-net_4_x", "mcs/tools/installvst/installvst-net_4_x.csproj", "{DC8E3822-546F-4D5F-BEAF-61C9855FF50B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "lc-net_4_x", "mcs/tools/lc/lc-net_4_x.csproj", "{427F59C0-5770-4C73-83B0-F445303C26CB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Configuration.Crypto-net_4_x", "mcs/tools/mono-configuration-crypto/lib/Mono.Configuration.Crypto-net_4_x.csproj", "{19AC03F2-0198-4512-BCFD-7CBB3129F9D2}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-configuration-crypto-net_4_x", "mcs/tools/mono-configuration-crypto/cli/mono-configuration-crypto-net_4_x.csproj", "{462A56EE-6371-46F8-9B83-18AFDEEF4BAD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ccrewrite-net_4_x", "mcs/tools/ccrewrite/ccrewrite-net_4_x.csproj", "{3A2CEA44-B631-40CB-B1B5-001AEC0C825E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cccheck-net_4_x", "mcs/tools/cccheck/cccheck-net_4_x.csproj", "{BA3136DD-E843-4F57-8FBB-1782D3D08BC8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mdbrebase-net_4_x", "mcs/tools/mdbrebase/mdbrebase-net_4_x.csproj", "{01B02BFF-0DC3-4265-BFAA-EDE405950796}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ikdasm-net_4_x", "mcs/tools/ikdasm/ikdasm-net_4_x.csproj", "{921F19B8-7276-446C-B096-A29AAAB83E12}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "mono-symbolicate-net_4_x", "mcs/tools/mono-symbolicate/mono-symbolicate-net_4_x.csproj", "{63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "linkeranalyzer-net_4_x", "mcs/tools/linker-analyzer/linkeranalyzer-net_4_x.csproj", "{D7789C48-C33A-4FE5-BD42-4DBAB2850796}"
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Any CPU = Debug|Any CPU
+               Release|Any CPU = Release|Any CPU
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {322A755A-ED38-4295-979D-E49EBAFA2852}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {322A755A-ED38-4295-979D-E49EBAFA2852}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {322A755A-ED38-4295-979D-E49EBAFA2852}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {322A755A-ED38-4295-979D-E49EBAFA2852}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2CA6026B-2DC8-4C4C-A12C-1E8234049DB7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2762E921-91A8-4C87-91E9-BA628013F753}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2762E921-91A8-4C87-91E9-BA628013F753}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2762E921-91A8-4C87-91E9-BA628013F753}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2762E921-91A8-4C87-91E9-BA628013F753}.Release|Any CPU.Build.0 = Release|Any CPU
+               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {87FD2F0F-5222-4AE6-BD63-2D4975E11E5B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {19954F80-065E-4D46-8FEF-62BA4D6CFDAD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A5216031-11A3-44DD-B2FF-A14AE63BD0C3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {483DB7F6-9145-4AE2-B9B2-2B5EE6FDEFB4}.Release|Any CPU.Build.0 = Release|Any CPU
+               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {42D59DE7-586F-4ACF-BDD5-E7869E39E3EF}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D5CDC09C-F19A-4811-A6C8-70F51CBFB644}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3ED36717-A9D1-4289-8949-9B7F39766DEB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {359142A1-D80F-401E-AA64-7167C9317649}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {359142A1-D80F-401E-AA64-7167C9317649}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {359142A1-D80F-401E-AA64-7167C9317649}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {359142A1-D80F-401E-AA64-7167C9317649}.Release|Any CPU.Build.0 = Release|Any CPU
+               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {66DBB049-785B-4C2E-9EF6-C9E163F7DDD1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {88177C4B-894F-485D-B95A-44199C06BE9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {88177C4B-894F-485D-B95A-44199C06BE9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {88177C4B-894F-485D-B95A-44199C06BE9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {88177C4B-894F-485D-B95A-44199C06BE9F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {1EC0EBC0-0B35-454C-89AE-3F8F0FDD9705}.Release|Any CPU.Build.0 = Release|Any CPU
+               {647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {647DC12E-A4EE-424A-9EC7-CE6643EE2EF7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6187D26C-54C8-4298-829E-A99B0E6036B1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9E61FF2E-493E-4CA0-BBDA-2EF96A4CB058}.Release|Any CPU.Build.0 = Release|Any CPU
+               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {584A5E46-2958-4CB2-8DF9-188B420D0BB0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3821C69F-220D-4231-992C-0FE05311A005}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3821C69F-220D-4231-992C-0FE05311A005}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3821C69F-220D-4231-992C-0FE05311A005}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3821C69F-220D-4231-992C-0FE05311A005}.Release|Any CPU.Build.0 = Release|Any CPU
+               {61E3D008-E273-4E12-860A-8ADA031098C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {61E3D008-E273-4E12-860A-8ADA031098C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {61E3D008-E273-4E12-860A-8ADA031098C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {61E3D008-E273-4E12-860A-8ADA031098C2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {39F59AE4-1381-4275-B14E-16D786F40B93}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {39F59AE4-1381-4275-B14E-16D786F40B93}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {39F59AE4-1381-4275-B14E-16D786F40B93}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {39F59AE4-1381-4275-B14E-16D786F40B93}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BD2FFDDC-BD89-4041-82F5-A696C941C7BE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B05362C2-C85F-43A5-93D7-49A45892438D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B05362C2-C85F-43A5-93D7-49A45892438D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B05362C2-C85F-43A5-93D7-49A45892438D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B05362C2-C85F-43A5-93D7-49A45892438D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EC439BB8-FFED-4A32-A05D-2FA3A70CAD64}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8F86C287-38A5-49F8-BE6D-1E0E3D74AF39}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E51283DC-7090-479E-B723-01C0953F18EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E51283DC-7090-479E-B723-01C0953F18EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E51283DC-7090-479E-B723-01C0953F18EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E51283DC-7090-479E-B723-01C0953F18EA}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B6DD737B-421C-4201-A852-8022328FE59D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B6DD737B-421C-4201-A852-8022328FE59D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B6DD737B-421C-4201-A852-8022328FE59D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B6DD737B-421C-4201-A852-8022328FE59D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A157AD69-59D4-49DE-94B3-DB883B2BEAA5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {108227C7-8ED9-4483-949D-07BF0DA1A201}.Release|Any CPU.Build.0 = Release|Any CPU
+               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {371560EA-7BD3-4025-90CB-F1B112403CF2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {928432BE-3518-4103-97F6-48B9658588A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {928432BE-3518-4103-97F6-48B9658588A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {928432BE-3518-4103-97F6-48B9658588A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {928432BE-3518-4103-97F6-48B9658588A6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B424FF7F-8F49-45F5-BFD5-6319F818816F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CC4F3F73-E0A6-49EE-8F7D-BD8B9F293A72}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9DB806CB-B828-49B7-BAE2-2E52402CB4DC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E43ADBA7-5DB9-466B-90C6-FFFDA520848D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DE51B021-D51C-4F26-99EE-B0729D97631E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DCE556E9-EF89-45F3-A51F-83D3C3E0FEF5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EFEDC380-2CB0-4B40-9566-D2302867A4D9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F19F77AE-1A81-4676-BAB8-6C1DA243A961}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B144ACD4-089D-4769-8605-583FBEDB5B7C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A81C8BB6-5799-49BC-849A-CB422D3F8DB9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0029417C-ED54-4162-8D8C-D935C760D89D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0029417C-ED54-4162-8D8C-D935C760D89D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0029417C-ED54-4162-8D8C-D935C760D89D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0029417C-ED54-4162-8D8C-D935C760D89D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2AB43CEE-0BE1-46EF-971E-3678330BEA13}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FFFE76FE-98EE-4FF7-81D9-35C0FE1D3718}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F89761CF-5915-45E5-8C9C-E4F883EC5FA5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4AC19C4C-5998-4F55-9C65-55ACB8D71AB2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CF24A609-AEF3-4E7A-95FC-C7A3CEAA7CC3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BAC9BBAE-661E-4B6E-97BC-4045D34E887E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4903F98F-B4C9-467A-8FBA-39E7F91D9327}.Release|Any CPU.Build.0 = Release|Any CPU
+               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {83DC05C9-3C7E-44D9-8D56-5619CF832BC5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6D021ADB-0407-42C9-9CC9-6613D94C61AE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F0A0BBA8-FFB1-4278-B4EF-84BCEAF69133}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5769B536-7E8E-4C2A-8671-6B256D0F620B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8B8C3ED9-96F9-49B3-B355-9FD3D29DD3AD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D845AD9D-3CCB-49CB-9543-028678E94938}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D845AD9D-3CCB-49CB-9543-028678E94938}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D845AD9D-3CCB-49CB-9543-028678E94938}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D845AD9D-3CCB-49CB-9543-028678E94938}.Release|Any CPU.Build.0 = Release|Any CPU
+               {526286D5-38D9-4579-B001-471440D57752}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {526286D5-38D9-4579-B001-471440D57752}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {526286D5-38D9-4579-B001-471440D57752}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {526286D5-38D9-4579-B001-471440D57752}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E6EE9E9A-42BA-4202-8813-FCF40E9061BF}.Release|Any CPU.Build.0 = Release|Any CPU
+               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {79D6E70D-8FD8-4EAA-9E81-B32B5C2815FB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EBD67AE3-F249-4768-A143-6B2F9E56BC39}.Release|Any CPU.Build.0 = Release|Any CPU
+               {67822258-3D1E-449F-ACDD-BE1918B44458}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {67822258-3D1E-449F-ACDD-BE1918B44458}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {67822258-3D1E-449F-ACDD-BE1918B44458}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {67822258-3D1E-449F-ACDD-BE1918B44458}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FA718FA9-32C2-4BAC-BAAB-DB3A7A326D4C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BBA32980-B28C-476D-AEB0-892F1B1DFB5E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FE596C31-BDA2-4850-8F79-F8F4DF70F44A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7A23227C-591B-4F80-9D62-4D0271073D82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7A23227C-591B-4F80-9D62-4D0271073D82}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7A23227C-591B-4F80-9D62-4D0271073D82}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7A23227C-591B-4F80-9D62-4D0271073D82}.Release|Any CPU.Build.0 = Release|Any CPU
+               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {88C258E1-F0AF-47DA-96C8-7FA6421067CD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EE582CE1-A692-47AC-B838-3A78955898BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EE582CE1-A692-47AC-B838-3A78955898BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EE582CE1-A692-47AC-B838-3A78955898BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EE582CE1-A692-47AC-B838-3A78955898BE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {288BFBFF-D78E-4EB3-ABF4-A5BCBB1BD9C9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E5E3F230-57CA-4685-B1C4-A164F0876755}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BEFCA993-98B4-48E9-8D68-1ACCB1FA7200}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A455F1BB-6273-4BAE-985C-563BED11D529}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A455F1BB-6273-4BAE-985C-563BED11D529}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A455F1BB-6273-4BAE-985C-563BED11D529}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A455F1BB-6273-4BAE-985C-563BED11D529}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D315DFE8-0E95-45D9-9EDB-9DCF70E5152F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DABF9F75-63AD-4991-9D2B-9234E7032B32}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4E79FA59-8344-4053-8E3B-B9619BA26513}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A8F39368-ECD9-41A5-A562-CC7C82B3CC86}.Release|Any CPU.Build.0 = Release|Any CPU
+               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {55BBC4F8-6DA2-4B3D-8714-F45A255F8BCC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2D03C898-0B45-4CAA-A333-B2463B81C37B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2FE2D8C6-B7B8-4067-A2C0-9D1DEA020FD8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CD409902-9DA0-48A3-B360-C09060168CB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CD409902-9DA0-48A3-B360-C09060168CB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CD409902-9DA0-48A3-B360-C09060168CB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CD409902-9DA0-48A3-B360-C09060168CB5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {54F4FA23-5AF3-4312-9294-3DB109F644CC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F1636C0A-FC68-4362-918F-9CCC789FED13}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A98B5CC3-EAFC-4EFD-ABC6-2F2A65BE98F5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {11928A85-4C26-4258-AC86-2AFB0A69DED2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {12C344E9-64D1-4F94-BAB6-1231B863EE6C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D4EAC129-92AB-432C-941D-4B8481097060}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D4EAC129-92AB-432C-941D-4B8481097060}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D4EAC129-92AB-432C-941D-4B8481097060}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D4EAC129-92AB-432C-941D-4B8481097060}.Release|Any CPU.Build.0 = Release|Any CPU
+               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {55F0BCD6-4B0B-408C-BE98-4BFF82157048}.Release|Any CPU.Build.0 = Release|Any CPU
+               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {14D0E9AA-AF30-4E40-983F-8BE66423E6AF}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5883D056-B748-4D13-A7E3-2D2756CDC6BC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6DDAE502-A602-410C-B182-C18D5100DDB0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0E705D1C-A4C4-41C2-832D-C812F3D4CB3C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2AF7E697-07BA-439E-89BF-076AEE4AE04C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0BB4541F-9B1A-4CBC-BEB1-00B31B37F74E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C8B8E524-BB3A-44E2-8C22-E3313E9F477C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5E39A911-F4E6-4B4B-B8AC-111BB1DD80C6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8E5728E0-CEAF-431F-963E-EB1DEE15C506}.Release|Any CPU.Build.0 = Release|Any CPU
+               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {75DFF196-FA56-48CD-9A1A-CEA3BEC618AB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3FA2C1F8-62D9-421D-8EEE-B4E651B8588C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {979FCA08-E170-4BA6-969B-30213135BEA3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {979FCA08-E170-4BA6-969B-30213135BEA3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {979FCA08-E170-4BA6-969B-30213135BEA3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {979FCA08-E170-4BA6-969B-30213135BEA3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {124B6594-F3EC-4FE3-B5A8-2A5CB4D5BC5A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {34443C71-09F1-4F21-ABB4-82822376F74F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {34443C71-09F1-4F21-ABB4-82822376F74F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {34443C71-09F1-4F21-ABB4-82822376F74F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {34443C71-09F1-4F21-ABB4-82822376F74F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E831A310-28EE-4433-B916-FF38A0FCDBE6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3516F613-9194-4B95-B7B2-3F9B37A87B30}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CF9EC4FE-1FBF-4583-ADE9-D0E6554D4528}.Release|Any CPU.Build.0 = Release|Any CPU
+               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {990903B9-BEDF-472C-97B8-221F8AA0A731}.Release|Any CPU.Build.0 = Release|Any CPU
+               {83227E53-5469-412F-B936-74AD08CDD9D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {83227E53-5469-412F-B936-74AD08CDD9D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {83227E53-5469-412F-B936-74AD08CDD9D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {83227E53-5469-412F-B936-74AD08CDD9D9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4742C0FA-2C03-4598-A3F2-4E7D9CDFF81B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {11DD6F15-65AB-4CBD-9EFE-2C9626388C53}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D76A0C93-56FE-4339-99A8-B7A3D49D6DDE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2C0D558F-0B38-4691-967E-A910A1B995C1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CF14D34A-F69B-47FB-A99C-D25C77198F30}.Release|Any CPU.Build.0 = Release|Any CPU
+               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {57B5039F-30CC-4EAA-9D55-1B9A07AC8A69}.Release|Any CPU.Build.0 = Release|Any CPU
+               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {61B86230-B170-4B03-A8CA-D5AF77858D7E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {1A2B6016-1EEF-4C06-943D-EB3E94A31EB9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {115711B0-D1F2-4E50-83F9-63128E70CE05}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9DD41BEA-E086-42C4-9FB8-85ABEDDA7F37}.Release|Any CPU.Build.0 = Release|Any CPU
+               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {85EC1EAD-8AA5-4CF8-A0CE-3882FEB7C57B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9BE8D62B-471D-4538-8287-691B4ECE3209}.Release|Any CPU.Build.0 = Release|Any CPU
+               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {18E55AE4-6B9B-44EF-94C9-1084D5472E63}.Release|Any CPU.Build.0 = Release|Any CPU
+               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {994BF3A4-85FD-4FDB-9120-C3A3B44A57CD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D2A49790-9CFD-492B-9CFA-58B9AEDA1B75}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8A378E82-8FA2-4DC9-A2F7-CD5CACC3F8F6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FF19FF42-C95D-4BB7-A0D7-05A94C07276E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5428F1E0-B0ED-46D6-B429-27D1A1C175C0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C6A36476-0B2B-45BA-B4DD-05C39E63F3BE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0DA7868F-C598-4E45-B33C-86FBB482DB76}.Release|Any CPU.Build.0 = Release|Any CPU
+               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {52F7F1BD-9D67-494E-A53A-C291FF5424B4}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EE5FC05D-135B-460A-9F0D-7F5084F4DBD7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {00CF93F7-B48C-4AF7-B8D5-58DFFAD22845}.Release|Any CPU.Build.0 = Release|Any CPU
+               {22187CB5-7451-45B4-B21B-337D956FF05D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {22187CB5-7451-45B4-B21B-337D956FF05D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {22187CB5-7451-45B4-B21B-337D956FF05D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {22187CB5-7451-45B4-B21B-337D956FF05D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7675D4A6-F017-4D20-BFE3-295B86F166CD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9DA5F2F9-AF47-4D48-BA58-2FAFD12538C7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {52C2AE83-A947-42CC-ADEF-9F54042D85D5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7D16E76F-3B1D-415E-AD93-5D4D86B451A0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {20E6619C-E88D-442C-AFA8-2216A73CF8D2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8EB36024-5DB5-4854-8425-8D95A8059F2D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2FFB9A8F-DB7B-41FF-9398-15DF81AE1BC8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5A287CAF-8FA4-42F7-976D-EE16D76CF2F1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A559EE60-2FE6-47DD-B4B8-0097BD242D86}.Release|Any CPU.Build.0 = Release|Any CPU
+               {64D286EF-32EA-4494-9DD6-36609597A11A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {64D286EF-32EA-4494-9DD6-36609597A11A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {64D286EF-32EA-4494-9DD6-36609597A11A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {64D286EF-32EA-4494-9DD6-36609597A11A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E6A6B9F7-BD0C-4F8D-8AFE-2EF76A2FB3AD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {70A422C5-17AF-48EE-8DD8-CF88D482606C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9091B5ED-8AFF-4B93-801A-9A33E0895A2B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3F6EB6D4-602E-43C2-A3E1-4AD98E8C86EE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2210873E-99FC-48A2-A261-D650BAE33A1C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {391EDD2B-85AC-4FCA-B607-AAD6C51E6799}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E485E885-59B1-4081-BC66-56AAAFD8771A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EF08F249-31A1-4E62-8391-ECBA5227B686}.Release|Any CPU.Build.0 = Release|Any CPU
+               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {ACA2694D-9F07-4AE2-9171-9AB5DD1A8C18}.Release|Any CPU.Build.0 = Release|Any CPU
+               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {25552E1C-6EE1-4D73-A309-A1ED7FA26E94}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0248869F-8D3B-4AB2-B976-B2A9AF1319A9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E378448B-0D48-4338-BAE0-CEB9A7CB3B80}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E378448B-0D48-4338-BAE0-CEB9A7CB3B80}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E378448B-0D48-4338-BAE0-CEB9A7CB3B80}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E378448B-0D48-4338-BAE0-CEB9A7CB3B80}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E676BC22-5B81-4518-8243-3946BB57D665}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E676BC22-5B81-4518-8243-3946BB57D665}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E676BC22-5B81-4518-8243-3946BB57D665}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E676BC22-5B81-4518-8243-3946BB57D665}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9B52B7BD-1E14-4300-BEC5-241513810554}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9B52B7BD-1E14-4300-BEC5-241513810554}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9B52B7BD-1E14-4300-BEC5-241513810554}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9B52B7BD-1E14-4300-BEC5-241513810554}.Release|Any CPU.Build.0 = Release|Any CPU
+               {29FCE500-BC83-4BF0-AED0-4E96932182F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {29FCE500-BC83-4BF0-AED0-4E96932182F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {29FCE500-BC83-4BF0-AED0-4E96932182F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {29FCE500-BC83-4BF0-AED0-4E96932182F7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3424BA74-B0AE-4C5E-A2C6-6FF86369D510}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3424BA74-B0AE-4C5E-A2C6-6FF86369D510}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3424BA74-B0AE-4C5E-A2C6-6FF86369D510}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3424BA74-B0AE-4C5E-A2C6-6FF86369D510}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E4180397-83B3-4F7B-9878-6891698F7C52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E4180397-83B3-4F7B-9878-6891698F7C52}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E4180397-83B3-4F7B-9878-6891698F7C52}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E4180397-83B3-4F7B-9878-6891698F7C52}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EFD0287C-3651-4D42-B8CA-430776CB1E6D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EFD0287C-3651-4D42-B8CA-430776CB1E6D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EFD0287C-3651-4D42-B8CA-430776CB1E6D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EFD0287C-3651-4D42-B8CA-430776CB1E6D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2597261D-EC05-4333-928D-1CA44AB1A5D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2597261D-EC05-4333-928D-1CA44AB1A5D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2597261D-EC05-4333-928D-1CA44AB1A5D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2597261D-EC05-4333-928D-1CA44AB1A5D2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B26700A5-4A9A-4358-8C84-51AD67C706BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B26700A5-4A9A-4358-8C84-51AD67C706BA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B26700A5-4A9A-4358-8C84-51AD67C706BA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B26700A5-4A9A-4358-8C84-51AD67C706BA}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6871A822-F21C-4C0E-B97B-178FF6C3DB46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6871A822-F21C-4C0E-B97B-178FF6C3DB46}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6871A822-F21C-4C0E-B97B-178FF6C3DB46}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6871A822-F21C-4C0E-B97B-178FF6C3DB46}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3FA73846-3666-4769-B431-1A7538B08F39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3FA73846-3666-4769-B431-1A7538B08F39}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3FA73846-3666-4769-B431-1A7538B08F39}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3FA73846-3666-4769-B431-1A7538B08F39}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8892480E-A4C6-4C4C-8722-21C5483F8851}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8892480E-A4C6-4C4C-8722-21C5483F8851}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8892480E-A4C6-4C4C-8722-21C5483F8851}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8892480E-A4C6-4C4C-8722-21C5483F8851}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7221EF5D-7340-4E8C-99F0-9EE9C55AA189}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7221EF5D-7340-4E8C-99F0-9EE9C55AA189}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7221EF5D-7340-4E8C-99F0-9EE9C55AA189}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7221EF5D-7340-4E8C-99F0-9EE9C55AA189}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B33966AB-7211-43B4-B5C0-3F818869CB08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B33966AB-7211-43B4-B5C0-3F818869CB08}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B33966AB-7211-43B4-B5C0-3F818869CB08}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B33966AB-7211-43B4-B5C0-3F818869CB08}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5B299463-3E19-48C1-8625-31E12E1CC146}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5B299463-3E19-48C1-8625-31E12E1CC146}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5B299463-3E19-48C1-8625-31E12E1CC146}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5B299463-3E19-48C1-8625-31E12E1CC146}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E48CEF36-3218-477B-A8B5-014519207FF2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E48CEF36-3218-477B-A8B5-014519207FF2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E48CEF36-3218-477B-A8B5-014519207FF2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E48CEF36-3218-477B-A8B5-014519207FF2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5F313CA5-F0FC-4EA3-AC8D-8EF1C7FC8ABE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6C8B94F6-E589-472C-80CA-BD55DAFAC523}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6C8B94F6-E589-472C-80CA-BD55DAFAC523}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6C8B94F6-E589-472C-80CA-BD55DAFAC523}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6C8B94F6-E589-472C-80CA-BD55DAFAC523}.Release|Any CPU.Build.0 = Release|Any CPU
+               {24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {24ADB02E-2E84-4EF4-BDD4-F20C87AEA6A3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CFF3822F-E829-4AEF-899A-963C4EAF6941}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CFF3822F-E829-4AEF-899A-963C4EAF6941}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CFF3822F-E829-4AEF-899A-963C4EAF6941}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CFF3822F-E829-4AEF-899A-963C4EAF6941}.Release|Any CPU.Build.0 = Release|Any CPU
+               {49E80FC1-1707-4715-8D94-CBDC79B007E9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {49E80FC1-1707-4715-8D94-CBDC79B007E9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {49E80FC1-1707-4715-8D94-CBDC79B007E9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {49E80FC1-1707-4715-8D94-CBDC79B007E9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9F1C9D98-4C32-4698-B26F-10A38B5073B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9F1C9D98-4C32-4698-B26F-10A38B5073B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9F1C9D98-4C32-4698-B26F-10A38B5073B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9F1C9D98-4C32-4698-B26F-10A38B5073B0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B6AE3A72-1756-46BF-9105-C4D815A5C044}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B6AE3A72-1756-46BF-9105-C4D815A5C044}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B6AE3A72-1756-46BF-9105-C4D815A5C044}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B6AE3A72-1756-46BF-9105-C4D815A5C044}.Release|Any CPU.Build.0 = Release|Any CPU
+               {79BB52C8-198A-4238-B2F6-62CEEBD7D228}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {79BB52C8-198A-4238-B2F6-62CEEBD7D228}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {79BB52C8-198A-4238-B2F6-62CEEBD7D228}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {79BB52C8-198A-4238-B2F6-62CEEBD7D228}.Release|Any CPU.Build.0 = Release|Any CPU
+               {538C60BD-0652-4780-AA7C-338C2DD82448}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {538C60BD-0652-4780-AA7C-338C2DD82448}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {538C60BD-0652-4780-AA7C-338C2DD82448}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {538C60BD-0652-4780-AA7C-338C2DD82448}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D14B21CE-AC35-445E-930F-9C7F6E032EE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D14B21CE-AC35-445E-930F-9C7F6E032EE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D14B21CE-AC35-445E-930F-9C7F6E032EE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D14B21CE-AC35-445E-930F-9C7F6E032EE8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B6D0F01A-1585-464E-850A-502EB4BBA8A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B6D0F01A-1585-464E-850A-502EB4BBA8A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B6D0F01A-1585-464E-850A-502EB4BBA8A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B6D0F01A-1585-464E-850A-502EB4BBA8A2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D60D1AB4-D664-4B1F-9724-962A2D205B07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D60D1AB4-D664-4B1F-9724-962A2D205B07}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D60D1AB4-D664-4B1F-9724-962A2D205B07}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D60D1AB4-D664-4B1F-9724-962A2D205B07}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BE1CD06E-F08E-46EE-9DFD-91E1557F4121}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BE1CD06E-F08E-46EE-9DFD-91E1557F4121}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BE1CD06E-F08E-46EE-9DFD-91E1557F4121}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BE1CD06E-F08E-46EE-9DFD-91E1557F4121}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9F980E30-92CE-466A-BCB1-2C2F1E8FC09D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {1215B717-BE9D-4D53-AEB9-35522519BC75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {1215B717-BE9D-4D53-AEB9-35522519BC75}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {1215B717-BE9D-4D53-AEB9-35522519BC75}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {1215B717-BE9D-4D53-AEB9-35522519BC75}.Release|Any CPU.Build.0 = Release|Any CPU
+               {71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {71A8C7C9-ED84-44E5-8814-F5FA5DA6EC5A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {521A60CF-50DF-4EF1-88B2-418BD39BDEC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {521A60CF-50DF-4EF1-88B2-418BD39BDEC4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {521A60CF-50DF-4EF1-88B2-418BD39BDEC4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {521A60CF-50DF-4EF1-88B2-418BD39BDEC4}.Release|Any CPU.Build.0 = Release|Any CPU
+               {AEB47FF6-C50D-4985-A57F-17F71F63694A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {AEB47FF6-C50D-4985-A57F-17F71F63694A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {AEB47FF6-C50D-4985-A57F-17F71F63694A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {AEB47FF6-C50D-4985-A57F-17F71F63694A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {88B512E6-3E9D-4F87-A9E4-5F9239848665}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {88B512E6-3E9D-4F87-A9E4-5F9239848665}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {88B512E6-3E9D-4F87-A9E4-5F9239848665}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {88B512E6-3E9D-4F87-A9E4-5F9239848665}.Release|Any CPU.Build.0 = Release|Any CPU
+               {49BB9015-6989-4BD0-AF82-9184BE637D57}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {49BB9015-6989-4BD0-AF82-9184BE637D57}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {49BB9015-6989-4BD0-AF82-9184BE637D57}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {49BB9015-6989-4BD0-AF82-9184BE637D57}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C948B3D4-0BEE-4363-B4A7-635A169C8D63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C948B3D4-0BEE-4363-B4A7-635A169C8D63}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C948B3D4-0BEE-4363-B4A7-635A169C8D63}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C948B3D4-0BEE-4363-B4A7-635A169C8D63}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CFB32425-69C5-425B-BF9A-66CB3AC52D71}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CFB32425-69C5-425B-BF9A-66CB3AC52D71}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CFB32425-69C5-425B-BF9A-66CB3AC52D71}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CFB32425-69C5-425B-BF9A-66CB3AC52D71}.Release|Any CPU.Build.0 = Release|Any CPU
+               {9040CA8B-4352-4621-A2B3-5C32A383DE15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {9040CA8B-4352-4621-A2B3-5C32A383DE15}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {9040CA8B-4352-4621-A2B3-5C32A383DE15}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {9040CA8B-4352-4621-A2B3-5C32A383DE15}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4EE0B25C-F7D7-40A9-AE37-5B874791D3C1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {524B10FC-880D-4131-8CAE-027BC3A68B6F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {524B10FC-880D-4131-8CAE-027BC3A68B6F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {524B10FC-880D-4131-8CAE-027BC3A68B6F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {524B10FC-880D-4131-8CAE-027BC3A68B6F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F937A550-0A4A-4A10-9FD9-E8DE7696671F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F937A550-0A4A-4A10-9FD9-E8DE7696671F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F937A550-0A4A-4A10-9FD9-E8DE7696671F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F937A550-0A4A-4A10-9FD9-E8DE7696671F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {28CEA696-8466-4826-9128-B83318184EF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {28CEA696-8466-4826-9128-B83318184EF4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {28CEA696-8466-4826-9128-B83318184EF4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {28CEA696-8466-4826-9128-B83318184EF4}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0CD67EE4-42D8-43A6-880F-2C038E368C98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0CD67EE4-42D8-43A6-880F-2C038E368C98}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0CD67EE4-42D8-43A6-880F-2C038E368C98}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0CD67EE4-42D8-43A6-880F-2C038E368C98}.Release|Any CPU.Build.0 = Release|Any CPU
+               {490EF039-5913-4181-84CD-1F882968FC8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {490EF039-5913-4181-84CD-1F882968FC8C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {490EF039-5913-4181-84CD-1F882968FC8C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {490EF039-5913-4181-84CD-1F882968FC8C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0F8CA9A9-62A4-4829-925E-002F0B93EE79}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0F8CA9A9-62A4-4829-925E-002F0B93EE79}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0F8CA9A9-62A4-4829-925E-002F0B93EE79}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0F8CA9A9-62A4-4829-925E-002F0B93EE79}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F322318E-D053-45C9-AFDF-2AEEE1E0E006}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F322318E-D053-45C9-AFDF-2AEEE1E0E006}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F322318E-D053-45C9-AFDF-2AEEE1E0E006}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F322318E-D053-45C9-AFDF-2AEEE1E0E006}.Release|Any CPU.Build.0 = Release|Any CPU
+               {30F7C900-122A-42A6-9669-D5606B9105A5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {30F7C900-122A-42A6-9669-D5606B9105A5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {30F7C900-122A-42A6-9669-D5606B9105A5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {30F7C900-122A-42A6-9669-D5606B9105A5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {35258CFB-0308-493D-B2BD-B044EAFD5AD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {35258CFB-0308-493D-B2BD-B044EAFD5AD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {35258CFB-0308-493D-B2BD-B044EAFD5AD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {35258CFB-0308-493D-B2BD-B044EAFD5AD1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2C447238-E7CE-4AF2-9A6C-EDC8E02E554B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D8643E47-F2D5-447B-840B-25FEB84C9EEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D8643E47-F2D5-447B-840B-25FEB84C9EEC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D8643E47-F2D5-447B-840B-25FEB84C9EEC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D8643E47-F2D5-447B-840B-25FEB84C9EEC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E95FA58F-8086-45FF-8BD3-5A1FAF776709}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E95FA58F-8086-45FF-8BD3-5A1FAF776709}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E95FA58F-8086-45FF-8BD3-5A1FAF776709}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E95FA58F-8086-45FF-8BD3-5A1FAF776709}.Release|Any CPU.Build.0 = Release|Any CPU
+               {87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {87C01EDD-05AF-4E1A-8EEE-27D7B83689EC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DE25A333-91AE-4F33-B483-A01D1D3D1675}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DE25A333-91AE-4F33-B483-A01D1D3D1675}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DE25A333-91AE-4F33-B483-A01D1D3D1675}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DE25A333-91AE-4F33-B483-A01D1D3D1675}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0F83D60D-5AAA-425C-BC4E-01CA2018905C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0F83D60D-5AAA-425C-BC4E-01CA2018905C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0F83D60D-5AAA-425C-BC4E-01CA2018905C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0F83D60D-5AAA-425C-BC4E-01CA2018905C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {699E0DB5-EDD0-4E6A-87C9-D396DCDAF620}.Release|Any CPU.Build.0 = Release|Any CPU
+               {160B5B14-7A25-458E-B83F-35632C832866}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {160B5B14-7A25-458E-B83F-35632C832866}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {160B5B14-7A25-458E-B83F-35632C832866}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {160B5B14-7A25-458E-B83F-35632C832866}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B6B7A903-D696-43CF-AC42-39DCAAB00B9D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B6B7A903-D696-43CF-AC42-39DCAAB00B9D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B6B7A903-D696-43CF-AC42-39DCAAB00B9D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B6B7A903-D696-43CF-AC42-39DCAAB00B9D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5F686C07-72CE-4A42-93B1-52B31227C3BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5F686C07-72CE-4A42-93B1-52B31227C3BB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5F686C07-72CE-4A42-93B1-52B31227C3BB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5F686C07-72CE-4A42-93B1-52B31227C3BB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5A238E60-587C-4C5C-8CA4-0443B1DBF1F6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {1DF9021C-DC67-4D7B-BEC9-10D7FBC12972}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FC19760B-00FF-4242-9760-9C8E9C87CCFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FC19760B-00FF-4242-9760-9C8E9C87CCFB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FC19760B-00FF-4242-9760-9C8E9C87CCFB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FC19760B-00FF-4242-9760-9C8E9C87CCFB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6207AADB-0592-4B52-B71E-3565196EE893}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6207AADB-0592-4B52-B71E-3565196EE893}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6207AADB-0592-4B52-B71E-3565196EE893}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6207AADB-0592-4B52-B71E-3565196EE893}.Release|Any CPU.Build.0 = Release|Any CPU
+               {360CDD70-6108-4406-9433-7BB178B0C3E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {360CDD70-6108-4406-9433-7BB178B0C3E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {360CDD70-6108-4406-9433-7BB178B0C3E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {360CDD70-6108-4406-9433-7BB178B0C3E3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {575873BD-22DA-4A36-ABBD-B074EFEAB3AD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {575873BD-22DA-4A36-ABBD-B074EFEAB3AD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {575873BD-22DA-4A36-ABBD-B074EFEAB3AD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {575873BD-22DA-4A36-ABBD-B074EFEAB3AD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D81BCBD3-415D-4309-A116-0B475D8A2FA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D81BCBD3-415D-4309-A116-0B475D8A2FA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D81BCBD3-415D-4309-A116-0B475D8A2FA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D81BCBD3-415D-4309-A116-0B475D8A2FA8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BFE6F5CE-725C-4F96-8AC6-F66B7C56E972}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EE8443AB-125D-4055-981A-143FB827C23C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EE8443AB-125D-4055-981A-143FB827C23C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EE8443AB-125D-4055-981A-143FB827C23C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EE8443AB-125D-4055-981A-143FB827C23C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6460F8E8-775E-46B6-99E5-B48390591515}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6460F8E8-775E-46B6-99E5-B48390591515}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6460F8E8-775E-46B6-99E5-B48390591515}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6460F8E8-775E-46B6-99E5-B48390591515}.Release|Any CPU.Build.0 = Release|Any CPU
+               {530F1E68-3237-49E6-8D3B-06332F5AC055}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {530F1E68-3237-49E6-8D3B-06332F5AC055}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {530F1E68-3237-49E6-8D3B-06332F5AC055}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {530F1E68-3237-49E6-8D3B-06332F5AC055}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BC71DA11-382F-459A-B3C3-F2F4267974FB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BC71DA11-382F-459A-B3C3-F2F4267974FB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BC71DA11-382F-459A-B3C3-F2F4267974FB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BC71DA11-382F-459A-B3C3-F2F4267974FB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A8EB5499-FA67-4049-AA0A-241D82DA975C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A8EB5499-FA67-4049-AA0A-241D82DA975C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A8EB5499-FA67-4049-AA0A-241D82DA975C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A8EB5499-FA67-4049-AA0A-241D82DA975C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3CBF9A55-86B6-4E0B-A73E-E352C79D85E8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {121F835D-CD32-4C19-ABA7-25EF4B84773F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {121F835D-CD32-4C19-ABA7-25EF4B84773F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {121F835D-CD32-4C19-ABA7-25EF4B84773F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {121F835D-CD32-4C19-ABA7-25EF4B84773F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5DF20007-FD1D-4BD8-A492-D1C4F7CAD2BF}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A9B2D389-B9E5-4B0F-8115-2AADF285D217}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A9B2D389-B9E5-4B0F-8115-2AADF285D217}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A9B2D389-B9E5-4B0F-8115-2AADF285D217}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A9B2D389-B9E5-4B0F-8115-2AADF285D217}.Release|Any CPU.Build.0 = Release|Any CPU
+               {18639F0F-74F1-4B61-81BF-D60B651F542A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {18639F0F-74F1-4B61-81BF-D60B651F542A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {18639F0F-74F1-4B61-81BF-D60B651F542A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {18639F0F-74F1-4B61-81BF-D60B651F542A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {981E765A-9D68-4653-9079-69BFCD97F086}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {981E765A-9D68-4653-9079-69BFCD97F086}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {981E765A-9D68-4653-9079-69BFCD97F086}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {981E765A-9D68-4653-9079-69BFCD97F086}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B6DBC302-E9DB-4464-979C-6D714B436A7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B6DBC302-E9DB-4464-979C-6D714B436A7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B6DBC302-E9DB-4464-979C-6D714B436A7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B6DBC302-E9DB-4464-979C-6D714B436A7E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {101D931B-24CE-44CE-8140-8B183D5CC46E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {101D931B-24CE-44CE-8140-8B183D5CC46E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {101D931B-24CE-44CE-8140-8B183D5CC46E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {101D931B-24CE-44CE-8140-8B183D5CC46E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {CC7A11AC-ACAA-4707-BEF1-1106938F19C7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {CC7A11AC-ACAA-4707-BEF1-1106938F19C7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {CC7A11AC-ACAA-4707-BEF1-1106938F19C7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {CC7A11AC-ACAA-4707-BEF1-1106938F19C7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {074DF29D-D38E-4FB9-86A0-18F47615CE72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {074DF29D-D38E-4FB9-86A0-18F47615CE72}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {074DF29D-D38E-4FB9-86A0-18F47615CE72}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {074DF29D-D38E-4FB9-86A0-18F47615CE72}.Release|Any CPU.Build.0 = Release|Any CPU
+               {1219DA91-575A-45EA-9CC9-1471648A025F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {1219DA91-575A-45EA-9CC9-1471648A025F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {1219DA91-575A-45EA-9CC9-1471648A025F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {1219DA91-575A-45EA-9CC9-1471648A025F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {601F297E-1242-4BC4-BD06-1111CE65D658}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {601F297E-1242-4BC4-BD06-1111CE65D658}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {601F297E-1242-4BC4-BD06-1111CE65D658}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {601F297E-1242-4BC4-BD06-1111CE65D658}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B0CF71F6-DCD4-4C7B-BE36-BF9CB0CB366C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FC7570DA-CAE1-40AF-9EB4-9C9566746023}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FC7570DA-CAE1-40AF-9EB4-9C9566746023}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FC7570DA-CAE1-40AF-9EB4-9C9566746023}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FC7570DA-CAE1-40AF-9EB4-9C9566746023}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6413D947-5660-473A-8C2C-9DF40BF8AEE1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6413D947-5660-473A-8C2C-9DF40BF8AEE1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6413D947-5660-473A-8C2C-9DF40BF8AEE1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6413D947-5660-473A-8C2C-9DF40BF8AEE1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A1B6CFFB-432C-4CB1-9A60-97B3CC859583}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A1B6CFFB-432C-4CB1-9A60-97B3CC859583}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A1B6CFFB-432C-4CB1-9A60-97B3CC859583}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A1B6CFFB-432C-4CB1-9A60-97B3CC859583}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C46AD937-B0E8-4AB6-B98C-C8C37A746ED7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5B58ED88-02A5-469A-82A0-DF97F3A5FBB0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2D720AF7-7104-46EF-93BC-B8BA133B6BF6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2D720AF7-7104-46EF-93BC-B8BA133B6BF6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2D720AF7-7104-46EF-93BC-B8BA133B6BF6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2D720AF7-7104-46EF-93BC-B8BA133B6BF6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C1D26AE7-071A-4092-9866-0EE2D09CF342}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C1D26AE7-071A-4092-9866-0EE2D09CF342}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C1D26AE7-071A-4092-9866-0EE2D09CF342}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C1D26AE7-071A-4092-9866-0EE2D09CF342}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4867DFE7-C028-4518-B420-27C3E4582D0C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4867DFE7-C028-4518-B420-27C3E4582D0C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4867DFE7-C028-4518-B420-27C3E4582D0C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4867DFE7-C028-4518-B420-27C3E4582D0C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4874E167-6B23-4FD6-B51D-048417A8054B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4874E167-6B23-4FD6-B51D-048417A8054B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4874E167-6B23-4FD6-B51D-048417A8054B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4874E167-6B23-4FD6-B51D-048417A8054B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DB39DD76-4609-45D1-9615-57D4E436D7F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DB39DD76-4609-45D1-9615-57D4E436D7F1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DB39DD76-4609-45D1-9615-57D4E436D7F1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DB39DD76-4609-45D1-9615-57D4E436D7F1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8B19E0DB-E0EA-4BED-B4E7-AED8A4ED0C62}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EDF9D7E8-5BAC-4264-BB98-1AE586B0A889}.Release|Any CPU.Build.0 = Release|Any CPU
+               {38BA78A4-9614-4000-80A7-DFCE31F10721}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {38BA78A4-9614-4000-80A7-DFCE31F10721}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {38BA78A4-9614-4000-80A7-DFCE31F10721}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {38BA78A4-9614-4000-80A7-DFCE31F10721}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6499F7E3-64F3-495B-9900-E2D0AD47414F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6499F7E3-64F3-495B-9900-E2D0AD47414F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6499F7E3-64F3-495B-9900-E2D0AD47414F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6499F7E3-64F3-495B-9900-E2D0AD47414F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {EFA0AABF-7830-4804-A92D-F6F31F86B826}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {EFA0AABF-7830-4804-A92D-F6F31F86B826}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {EFA0AABF-7830-4804-A92D-F6F31F86B826}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {EFA0AABF-7830-4804-A92D-F6F31F86B826}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C48B1038-4774-4D49-9D34-79DBBA725AA0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C48B1038-4774-4D49-9D34-79DBBA725AA0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C48B1038-4774-4D49-9D34-79DBBA725AA0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C48B1038-4774-4D49-9D34-79DBBA725AA0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {0DBEDE3A-F06D-4C61-89DF-193C13393F7A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {0DBEDE3A-F06D-4C61-89DF-193C13393F7A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {0DBEDE3A-F06D-4C61-89DF-193C13393F7A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {0DBEDE3A-F06D-4C61-89DF-193C13393F7A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {18EE2788-AC59-4A0C-A902-C6B64D285BB6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {18EE2788-AC59-4A0C-A902-C6B64D285BB6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {18EE2788-AC59-4A0C-A902-C6B64D285BB6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {18EE2788-AC59-4A0C-A902-C6B64D285BB6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C87878D2-CDEF-4EC9-8C94-C1381144F4EC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C87878D2-CDEF-4EC9-8C94-C1381144F4EC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C87878D2-CDEF-4EC9-8C94-C1381144F4EC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C87878D2-CDEF-4EC9-8C94-C1381144F4EC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C2E71C2B-A806-4FEB-AE2D-A5BE884E3BA7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {47977802-4193-48DC-AA0F-58D18AEDA405}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {47977802-4193-48DC-AA0F-58D18AEDA405}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {47977802-4193-48DC-AA0F-58D18AEDA405}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {47977802-4193-48DC-AA0F-58D18AEDA405}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4D9EF694-5260-432D-BA34-503FFBE43B6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4D9EF694-5260-432D-BA34-503FFBE43B6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4D9EF694-5260-432D-BA34-503FFBE43B6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4D9EF694-5260-432D-BA34-503FFBE43B6C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {95B411AA-B13F-4621-B020-7F797E1F39F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {95B411AA-B13F-4621-B020-7F797E1F39F0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {95B411AA-B13F-4621-B020-7F797E1F39F0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {95B411AA-B13F-4621-B020-7F797E1F39F0}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5C3F0B44-E169-4441-91F9-7285048F4946}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5C3F0B44-E169-4441-91F9-7285048F4946}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5C3F0B44-E169-4441-91F9-7285048F4946}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5C3F0B44-E169-4441-91F9-7285048F4946}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D7F840DE-EDFD-4DB5-ACDB-9328AB7E6C6C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {653C4BDE-F194-4A4F-A1CE-1FF955DE43D6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7B15C4D7-8C02-408E-9EFB-5E9E9FB4410D}.Release|Any CPU.Build.0 = Release|Any CPU
+               {871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {871BE2C6-2F56-4E05-93E8-9B3FDD4711DB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B875622B-BEA2-4D1C-8242-3A1FCECF5890}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B875622B-BEA2-4D1C-8242-3A1FCECF5890}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B875622B-BEA2-4D1C-8242-3A1FCECF5890}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B875622B-BEA2-4D1C-8242-3A1FCECF5890}.Release|Any CPU.Build.0 = Release|Any CPU
+               {321A53F3-A681-4CA5-A093-1C6650243F6A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {321A53F3-A681-4CA5-A093-1C6650243F6A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {321A53F3-A681-4CA5-A093-1C6650243F6A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {321A53F3-A681-4CA5-A093-1C6650243F6A}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5D05F5E2-7378-4A35-B1A3-76ABEB4A71C3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {642A1B9E-1A2F-4C55-B184-E22F8C2E95B5}.Release|Any CPU.Build.0 = Release|Any CPU
+               {C315A617-25A4-447F-AA4F-0E0E7E35F919}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {C315A617-25A4-447F-AA4F-0E0E7E35F919}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {C315A617-25A4-447F-AA4F-0E0E7E35F919}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {C315A617-25A4-447F-AA4F-0E0E7E35F919}.Release|Any CPU.Build.0 = Release|Any CPU
+               {57C02AD3-1118-4982-BCE3-53158D30F4E9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {57C02AD3-1118-4982-BCE3-53158D30F4E9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {57C02AD3-1118-4982-BCE3-53158D30F4E9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {57C02AD3-1118-4982-BCE3-53158D30F4E9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FB663BC8-162E-43E7-9674-ECD2BEE82CC1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FB663BC8-162E-43E7-9674-ECD2BEE82CC1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FB663BC8-162E-43E7-9674-ECD2BEE82CC1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FB663BC8-162E-43E7-9674-ECD2BEE82CC1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E8BFEFD2-AAB9-45E6-8523-1F6AEB1918A2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {38F046A2-EEBD-4FE7-B70E-636F5DB4BBF3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {ACF5E339-FB52-48E0-A859-2CE75756DFE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {ACF5E339-FB52-48E0-A859-2CE75756DFE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {ACF5E339-FB52-48E0-A859-2CE75756DFE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {ACF5E339-FB52-48E0-A859-2CE75756DFE8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {03B29131-9D1A-4446-92F2-237F9EF70C5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {03B29131-9D1A-4446-92F2-237F9EF70C5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {03B29131-9D1A-4446-92F2-237F9EF70C5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {03B29131-9D1A-4446-92F2-237F9EF70C5C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {5327CF02-204D-45CD-A68D-3D836470E439}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {5327CF02-204D-45CD-A68D-3D836470E439}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {5327CF02-204D-45CD-A68D-3D836470E439}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {5327CF02-204D-45CD-A68D-3D836470E439}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BA0C64F1-3762-437D-8B58-75F68A5B4E7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BA0C64F1-3762-437D-8B58-75F68A5B4E7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BA0C64F1-3762-437D-8B58-75F68A5B4E7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BA0C64F1-3762-437D-8B58-75F68A5B4E7E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {44647FAA-F785-44DE-B6B2-ABC2B9768233}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {44647FAA-F785-44DE-B6B2-ABC2B9768233}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {44647FAA-F785-44DE-B6B2-ABC2B9768233}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {44647FAA-F785-44DE-B6B2-ABC2B9768233}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D835F3A9-C4FE-4162-8AB5-DC26D06AC81F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {66B88E44-F7DA-4C83-B028-A49D4D3EBD16}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {66B88E44-F7DA-4C83-B028-A49D4D3EBD16}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {66B88E44-F7DA-4C83-B028-A49D4D3EBD16}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {66B88E44-F7DA-4C83-B028-A49D4D3EBD16}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8C71A924-2561-434B-A792-2F84ABA1C0C2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8C71A924-2561-434B-A792-2F84ABA1C0C2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8C71A924-2561-434B-A792-2F84ABA1C0C2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8C71A924-2561-434B-A792-2F84ABA1C0C2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {ACA10642-1D5B-443D-99BE-65C31491C54F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {ACA10642-1D5B-443D-99BE-65C31491C54F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {ACA10642-1D5B-443D-99BE-65C31491C54F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {ACA10642-1D5B-443D-99BE-65C31491C54F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B2272696-96AA-4638-B17C-60A4BA37CA0E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B2272696-96AA-4638-B17C-60A4BA37CA0E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B2272696-96AA-4638-B17C-60A4BA37CA0E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B2272696-96AA-4638-B17C-60A4BA37CA0E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {A950C3AB-D62D-4B20-BFB8-5671DE20E535}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {A950C3AB-D62D-4B20-BFB8-5671DE20E535}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {A950C3AB-D62D-4B20-BFB8-5671DE20E535}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {A950C3AB-D62D-4B20-BFB8-5671DE20E535}.Release|Any CPU.Build.0 = Release|Any CPU
+               {257D35DE-7F06-42BA-B82E-734991FFE949}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {257D35DE-7F06-42BA-B82E-734991FFE949}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {257D35DE-7F06-42BA-B82E-734991FFE949}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {257D35DE-7F06-42BA-B82E-734991FFE949}.Release|Any CPU.Build.0 = Release|Any CPU
+               {52B1E1ED-1F77-4AEC-9CB2-141B8795949F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {52B1E1ED-1F77-4AEC-9CB2-141B8795949F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {52B1E1ED-1F77-4AEC-9CB2-141B8795949F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {52B1E1ED-1F77-4AEC-9CB2-141B8795949F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {E072B33B-F3C5-4B2F-ABAA-1339CF716143}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {E072B33B-F3C5-4B2F-ABAA-1339CF716143}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {E072B33B-F3C5-4B2F-ABAA-1339CF716143}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {E072B33B-F3C5-4B2F-ABAA-1339CF716143}.Release|Any CPU.Build.0 = Release|Any CPU
+               {59253F15-7E2A-483D-8214-58F03681A3B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {59253F15-7E2A-483D-8214-58F03681A3B6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {59253F15-7E2A-483D-8214-58F03681A3B6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {59253F15-7E2A-483D-8214-58F03681A3B6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7DEADBAC-1F4D-4799-8174-01E175C869FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7DEADBAC-1F4D-4799-8174-01E175C869FC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7DEADBAC-1F4D-4799-8174-01E175C869FC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7DEADBAC-1F4D-4799-8174-01E175C869FC}.Release|Any CPU.Build.0 = Release|Any CPU
+               {B0078000-EF01-4AA3-B5DD-47145B4527EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {B0078000-EF01-4AA3-B5DD-47145B4527EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {B0078000-EF01-4AA3-B5DD-47145B4527EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {B0078000-EF01-4AA3-B5DD-47145B4527EE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4FB9199D-D57E-4007-AA72-0200296AE55F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4FB9199D-D57E-4007-AA72-0200296AE55F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4FB9199D-D57E-4007-AA72-0200296AE55F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4FB9199D-D57E-4007-AA72-0200296AE55F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D32B01EF-8E8D-41C1-848D-6DAEAA3FCA6C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {6B9993FC-E28D-4D55-8F96-C8A35B2BC6E7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {ED867AC1-079C-4B5E-ADF9-E7722053B360}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {ED867AC1-079C-4B5E-ADF9-E7722053B360}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {ED867AC1-079C-4B5E-ADF9-E7722053B360}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {ED867AC1-079C-4B5E-ADF9-E7722053B360}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FD725431-CB26-466D-BD55-C739485A50C9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FD725431-CB26-466D-BD55-C739485A50C9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FD725431-CB26-466D-BD55-C739485A50C9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FD725431-CB26-466D-BD55-C739485A50C9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {12527E95-60D3-4A66-91C6-7F8031519299}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {12527E95-60D3-4A66-91C6-7F8031519299}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {12527E95-60D3-4A66-91C6-7F8031519299}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {12527E95-60D3-4A66-91C6-7F8031519299}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D237CE6E-EA8F-4E8E-8413-295B27714AC6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D237CE6E-EA8F-4E8E-8413-295B27714AC6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D237CE6E-EA8F-4E8E-8413-295B27714AC6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D237CE6E-EA8F-4E8E-8413-295B27714AC6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {FA920637-C202-4E75-AC0F-1A8DBD631DF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {FA920637-C202-4E75-AC0F-1A8DBD631DF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {FA920637-C202-4E75-AC0F-1A8DBD631DF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {FA920637-C202-4E75-AC0F-1A8DBD631DF1}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8CCE7044-3466-4599-B09E-9F8E0C2F4614}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8CCE7044-3466-4599-B09E-9F8E0C2F4614}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8CCE7044-3466-4599-B09E-9F8E0C2F4614}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8CCE7044-3466-4599-B09E-9F8E0C2F4614}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DCD2613C-B1A0-489B-BCA1-79BEBB9B9541}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3A3DAEC2-3DF4-4968-A191-8D6F207ABA5E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {78B1A752-432B-4764-9E63-E95CCB23554F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {78B1A752-432B-4764-9E63-E95CCB23554F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {78B1A752-432B-4764-9E63-E95CCB23554F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {78B1A752-432B-4764-9E63-E95CCB23554F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {612FEFDB-12FA-4441-9094-236B05D645A4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {612FEFDB-12FA-4441-9094-236B05D645A4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {612FEFDB-12FA-4441-9094-236B05D645A4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {612FEFDB-12FA-4441-9094-236B05D645A4}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3CB8E3C0-0EFA-4AB3-9F60-02DC274F77F8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {69D00FEC-59AA-43A0-90AD-87F400B8613C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {69D00FEC-59AA-43A0-90AD-87F400B8613C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {69D00FEC-59AA-43A0-90AD-87F400B8613C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {69D00FEC-59AA-43A0-90AD-87F400B8613C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3E3DE804-DF6C-43D0-9DFC-13C7FFD949CA}.Release|Any CPU.Build.0 = Release|Any CPU
+               {4391CB6E-F09B-4D13-BA34-547E15FA7847}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {4391CB6E-F09B-4D13-BA34-547E15FA7847}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {4391CB6E-F09B-4D13-BA34-547E15FA7847}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {4391CB6E-F09B-4D13-BA34-547E15FA7847}.Release|Any CPU.Build.0 = Release|Any CPU
+               {76A06DA3-F3B5-498C-9D75-72F325BB6656}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {76A06DA3-F3B5-498C-9D75-72F325BB6656}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {76A06DA3-F3B5-498C-9D75-72F325BB6656}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {76A06DA3-F3B5-498C-9D75-72F325BB6656}.Release|Any CPU.Build.0 = Release|Any CPU
+               {93602011-38AA-46AC-8203-571D620A228C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {93602011-38AA-46AC-8203-571D620A228C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {93602011-38AA-46AC-8203-571D620A228C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {93602011-38AA-46AC-8203-571D620A228C}.Release|Any CPU.Build.0 = Release|Any CPU
+               {25CAFA51-9FE0-43AD-A642-B3D59BE2B377}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {25CAFA51-9FE0-43AD-A642-B3D59BE2B377}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {25CAFA51-9FE0-43AD-A642-B3D59BE2B377}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {25CAFA51-9FE0-43AD-A642-B3D59BE2B377}.Release|Any CPU.Build.0 = Release|Any CPU
+               {7E28A830-EB3C-48E3-B0FB-6DDAAF698115}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {7E28A830-EB3C-48E3-B0FB-6DDAAF698115}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {7E28A830-EB3C-48E3-B0FB-6DDAAF698115}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {7E28A830-EB3C-48E3-B0FB-6DDAAF698115}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8A516908-7CA0-40A7-86DD-0BEE1F4496C6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8A516908-7CA0-40A7-86DD-0BEE1F4496C6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8A516908-7CA0-40A7-86DD-0BEE1F4496C6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8A516908-7CA0-40A7-86DD-0BEE1F4496C6}.Release|Any CPU.Build.0 = Release|Any CPU
+               {8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {8B85F71C-81E2-4732-8A85-CBBFA8E09FF3}.Release|Any CPU.Build.0 = Release|Any CPU
+               {503D43D5-65AF-401A-9D50-53B514724152}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {503D43D5-65AF-401A-9D50-53B514724152}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {503D43D5-65AF-401A-9D50-53B514724152}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {503D43D5-65AF-401A-9D50-53B514724152}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DAE62F67-EE88-4192-8CB8-314E9E955BE9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DAE62F67-EE88-4192-8CB8-314E9E955BE9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DAE62F67-EE88-4192-8CB8-314E9E955BE9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DAE62F67-EE88-4192-8CB8-314E9E955BE9}.Release|Any CPU.Build.0 = Release|Any CPU
+               {F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {F7C83E4F-C1C4-4939-8BA3-3EF6E3631E08}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DCCC3618-803B-4492-A968-010E2C0851E8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DCCC3618-803B-4492-A968-010E2C0851E8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DCCC3618-803B-4492-A968-010E2C0851E8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DCCC3618-803B-4492-A968-010E2C0851E8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {71A04260-D8F6-4E97-898D-5F3D5A2F3D94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {71A04260-D8F6-4E97-898D-5F3D5A2F3D94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {71A04260-D8F6-4E97-898D-5F3D5A2F3D94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {71A04260-D8F6-4E97-898D-5F3D5A2F3D94}.Release|Any CPU.Build.0 = Release|Any CPU
+               {496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {496CFCD3-5F5A-46D1-BD8F-6642BD4E61D2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {92EBF79E-AB94-4543-B130-6FEE6D0B3526}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {92EBF79E-AB94-4543-B130-6FEE6D0B3526}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {92EBF79E-AB94-4543-B130-6FEE6D0B3526}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {92EBF79E-AB94-4543-B130-6FEE6D0B3526}.Release|Any CPU.Build.0 = Release|Any CPU
+               {49D19955-330A-4FF2-BE94-4AEAE6745EBE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {49D19955-330A-4FF2-BE94-4AEAE6745EBE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {49D19955-330A-4FF2-BE94-4AEAE6745EBE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {49D19955-330A-4FF2-BE94-4AEAE6745EBE}.Release|Any CPU.Build.0 = Release|Any CPU
+               {84ABC688-04BE-4F0B-9FD0-0332437C435F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {84ABC688-04BE-4F0B-9FD0-0332437C435F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {84ABC688-04BE-4F0B-9FD0-0332437C435F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {84ABC688-04BE-4F0B-9FD0-0332437C435F}.Release|Any CPU.Build.0 = Release|Any CPU
+               {01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {01D2746E-CB83-4FE7-981D-DF9B0CE33EFB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {2AEAE157-B22D-480F-B7B9-F6DF0773EF0B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {420CBB84-F8F6-4F77-8AE1-6B886D5DEDAB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {60674A50-F2E0-4BC7-A917-8976821888ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {60674A50-F2E0-4BC7-A917-8976821888ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {60674A50-F2E0-4BC7-A917-8976821888ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {60674A50-F2E0-4BC7-A917-8976821888ED}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D22ABC86-1275-431C-911C-D14EE2A20FD7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D22ABC86-1275-431C-911C-D14EE2A20FD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D22ABC86-1275-431C-911C-D14EE2A20FD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D22ABC86-1275-431C-911C-D14EE2A20FD7}.Release|Any CPU.Build.0 = Release|Any CPU
+               {15871CCA-A500-4AE3-89D7-1F3429614403}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {15871CCA-A500-4AE3-89D7-1F3429614403}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {15871CCA-A500-4AE3-89D7-1F3429614403}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {15871CCA-A500-4AE3-89D7-1F3429614403}.Release|Any CPU.Build.0 = Release|Any CPU
+               {135520B4-D83D-4726-B043-3B4FBF306F94}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {135520B4-D83D-4726-B043-3B4FBF306F94}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {135520B4-D83D-4726-B043-3B4FBF306F94}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {135520B4-D83D-4726-B043-3B4FBF306F94}.Release|Any CPU.Build.0 = Release|Any CPU
+               {DC8E3822-546F-4D5F-BEAF-61C9855FF50B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {DC8E3822-546F-4D5F-BEAF-61C9855FF50B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {DC8E3822-546F-4D5F-BEAF-61C9855FF50B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {DC8E3822-546F-4D5F-BEAF-61C9855FF50B}.Release|Any CPU.Build.0 = Release|Any CPU
+               {427F59C0-5770-4C73-83B0-F445303C26CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {427F59C0-5770-4C73-83B0-F445303C26CB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {427F59C0-5770-4C73-83B0-F445303C26CB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {427F59C0-5770-4C73-83B0-F445303C26CB}.Release|Any CPU.Build.0 = Release|Any CPU
+               {19AC03F2-0198-4512-BCFD-7CBB3129F9D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {19AC03F2-0198-4512-BCFD-7CBB3129F9D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {19AC03F2-0198-4512-BCFD-7CBB3129F9D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {19AC03F2-0198-4512-BCFD-7CBB3129F9D2}.Release|Any CPU.Build.0 = Release|Any CPU
+               {462A56EE-6371-46F8-9B83-18AFDEEF4BAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {462A56EE-6371-46F8-9B83-18AFDEEF4BAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {462A56EE-6371-46F8-9B83-18AFDEEF4BAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {462A56EE-6371-46F8-9B83-18AFDEEF4BAD}.Release|Any CPU.Build.0 = Release|Any CPU
+               {3A2CEA44-B631-40CB-B1B5-001AEC0C825E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {3A2CEA44-B631-40CB-B1B5-001AEC0C825E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {3A2CEA44-B631-40CB-B1B5-001AEC0C825E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {3A2CEA44-B631-40CB-B1B5-001AEC0C825E}.Release|Any CPU.Build.0 = Release|Any CPU
+               {BA3136DD-E843-4F57-8FBB-1782D3D08BC8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {BA3136DD-E843-4F57-8FBB-1782D3D08BC8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {BA3136DD-E843-4F57-8FBB-1782D3D08BC8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {BA3136DD-E843-4F57-8FBB-1782D3D08BC8}.Release|Any CPU.Build.0 = Release|Any CPU
+               {01B02BFF-0DC3-4265-BFAA-EDE405950796}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {01B02BFF-0DC3-4265-BFAA-EDE405950796}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {01B02BFF-0DC3-4265-BFAA-EDE405950796}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {01B02BFF-0DC3-4265-BFAA-EDE405950796}.Release|Any CPU.Build.0 = Release|Any CPU
+               {921F19B8-7276-446C-B096-A29AAAB83E12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {921F19B8-7276-446C-B096-A29AAAB83E12}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {921F19B8-7276-446C-B096-A29AAAB83E12}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {921F19B8-7276-446C-B096-A29AAAB83E12}.Release|Any CPU.Build.0 = Release|Any CPU
+               {63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {63E373FB-CE4B-4F7B-A421-5CE8ED7BD851}.Release|Any CPU.Build.0 = Release|Any CPU
+               {D7789C48-C33A-4FE5-BD42-4DBAB2850796}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {D7789C48-C33A-4FE5-BD42-4DBAB2850796}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {D7789C48-C33A-4FE5-BD42-4DBAB2850796}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {D7789C48-C33A-4FE5-BD42-4DBAB2850796}.Release|Any CPU.Build.0 = Release|Any CPU
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+EndGlobal
index be4d6b164a009018668e73beac1c186eb1666e03..fa2d8378bbf8dc85dcc279bf8c1a0cadf5e9790b 100644 (file)
@@ -160,7 +160,9 @@ EXTRA_DIST =                        \
        mono-heapviz            \
        $(MDOC_COMPAT)          \
        get-cygwin-deps.sh      \
-       mono-configuration-crypto.in
+       mono-configuration-crypto.in    \
+       submodules/versions.mk  \
+       submodules/versions.py
 
 mono_interp = mono
 
index eebaaffcea7c2ed7a46fa329d4509c30b7944640..ad2fe82914140b24f6daa4d5025b2f5b7bd995c5 100755 (executable)
@@ -3,18 +3,29 @@
 TESTCMD=`dirname "${BASH_SOURCE[0]}"`/run-step.sh
 
 export TEST_HARNESS_VERBOSE=1
+if [[ ${label} == w* ]]; then
+    # Passing -ggdb3 on Cygwin breaks linking against libmonosgen-x.y.dll
+    export CFLAGS="-g -O2"
+else
+    export CFLAGS="-ggdb3 -O2"
+fi
 
-if [[ ${CI_TAGS} == *'coop-gc'* ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-cooperative-gc=yes"; fi
+if [[ ${CI_TAGS} == *'coop-gc'* ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-cooperative-gc=yes"; export MONO_CHECK_MODE=gc,thread; fi
 
-if [[ ${label} == 'osx-i386' ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-libgdiplus=/Library/Frameworks/Mono.framework/Versions/Current/lib/libgdiplus.dylib --enable-nls=no --build=i386-apple-darwin11.2.0"; fi
-if [[ ${label} == 'osx-amd64' ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-libgdiplus=/Library/Frameworks/Mono.framework/Versions/Current/lib/libgdiplus.dylib --enable-nls=no"; fi
-if [[ ${label} == 'w32' ]]; then PLATFORM=Win32; EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --host=i686-pc-mingw32"; export MONO_EXECUTABLE="`cygpath -u ${WORKSPACE}\\\msvc\\\Win32\\\bin\\\Release_SGen\\\mono-sgen.exe`";fi
-if [[ ${label} == 'w64' ]]; then PLATFORM=x64; EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --host=i686-pc-mingw32"; export MONO_EXECUTABLE="`cygpath -u ${WORKSPACE}\\\msvc\\\x64\\\bin\\\Release_SGen\\\mono-sgen.exe`"; fi
+if [[ ${label} == 'osx-i386' ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-libgdiplus=/Library/Frameworks/Mono.framework/Versions/Current/lib/libgdiplus.dylib --build=i386-apple-darwin11.2.0"; fi
+if [[ ${label} == 'osx-amd64' ]]; then EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-libgdiplus=/Library/Frameworks/Mono.framework/Versions/Current/lib/libgdiplus.dylib "; fi
+if [[ ${label} == 'w32' ]]; then PLATFORM=Win32; EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --host=i686-w64-mingw32"; export MONO_EXECUTABLE="`cygpath -u ${WORKSPACE}\\\msvc\\\build\\\sgen\\\Win32\\\bin\\\Release\\\mono-sgen.exe`"; fi
+if [[ ${label} == 'w64' ]]; then PLATFORM=x64; EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --host=x86_64-w64-mingw32 --disable-boehm"; export MONO_EXECUTABLE="`cygpath -u ${WORKSPACE}\\\msvc\\\build\\\sgen\\\x64\\\bin\\\Release\\\mono-sgen.exe`"; fi
 
-if [[ ${label} != w* ]] && [[ ${label} != 'debian-ppc64el' ]] && [[ ${label} != 'centos-s390x' ]];
+if [[ ${CI_TAGS} == 'mobile_static' ]];
+    then
+    EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-runtime_preset=mobile_static";
+elif [[ ${label} != w* ]] && [[ ${label} != 'debian-ppc64el' ]] && [[ ${label} != 'centos-s390x' ]];
     then
-    EXTRA_CONF_FLAGS="$EXTRA_CONF_FLAGS --with-monodroid --with-monotouch --with-monotouch_watch --with-monotouch_tv --with-xammac --with-mobile_static"
+    # Override the defaults to skip profiles
     # only enable the mobile profiles and mobile_static on the main architectures
+    # only enable the concurrent collector by default on main unix archs
+    EXTRA_CONF_FLAGS="${EXTRA_CONF_FLAGS} --with-runtime_preset=all --with-sgen-default-concurrent=yes"
 fi
 
 if [ -x "/usr/bin/dpkg-architecture" ];
@@ -23,11 +34,16 @@ if [ -x "/usr/bin/dpkg-architecture" ];
        #force build arch = dpkg arch, sometimes misdetected
 fi
 
+
 ${TESTCMD} --label=configure --timeout=60m --fatal ./autogen.sh $EXTRA_CONF_FLAGS
+if [[ ${label} == 'w32' ]];
+    then
+       # only build boehm on w32 (only windows platform supporting boehm).
+    ${TESTCMD} --label=make-msvc --timeout=60m --fatal /cygdrive/c/Program\ Files\ \(x86\)/MSBuild/14.0/Bin/MSBuild.exe /p:PlatformToolset=v140 /p:Platform=${PLATFORM} /p:Configuration=Release /p:MONO_TARGET_GC=boehm msvc/mono.sln
+fi
 if [[ ${label} == w* ]];
     then
-    ${TESTCMD} --label=make-msvc --timeout=60m --fatal /cygdrive/c/Program\ Files\ \(x86\)/MSBuild/12.0/Bin/MSBuild.exe /p:Platform=${PLATFORM} /p:Configuration=Release msvc/mono.sln
-    ${TESTCMD} --label=make-msvc-sgen --timeout=60m --fatal /cygdrive/c/Program\ Files\ \(x86\)/MSBuild/12.0/Bin/MSBuild.exe /p:Platform=${PLATFORM} /p:Configuration=Release_SGen msvc/mono.sln
+    ${TESTCMD} --label=make-msvc-sgen --timeout=60m --fatal /cygdrive/c/Program\ Files\ \(x86\)/MSBuild/14.0/Bin/MSBuild.exe /p:PlatformToolset=v140 /p:Platform=${PLATFORM} /p:Configuration=Release /p:MONO_TARGET_GC=sgen msvc/mono.sln
 fi
 ${TESTCMD} --label=make --timeout=300m --fatal make -w V=1
 if [[ -n "${ghprbPullId}" ]] && [[ ${label} == w* ]];
@@ -35,81 +51,5 @@ if [[ -n "${ghprbPullId}" ]] && [[ ${label} == w* ]];
     exit 0
     # we don't run the test suite on Windows PRs, we just ensure the build succeeds, so end here
 fi
-${TESTCMD} --label=mini --timeout=5m make -w -C mono/mini -k check
-${TESTCMD} --label=runtime --timeout=120m make -w -C mono/tests -k test-wrench V=1 CI=1
-${TESTCMD} --label=corlib --timeout=30m make -w -C mcs/class/corlib run-test
-${TESTCMD} --label=verify --timeout=15m make -w -C runtime mcs-compileall
-${TESTCMD} --label=profiler --timeout=30m make -w -C mono/profiler -k check
-${TESTCMD} --label=compiler --timeout=30m make -w -C mcs/tests run-test
-${TESTCMD} --label=compiler-errors --timeout=30m make -w -C mcs/errors run-test
-${TESTCMD} --label=System --timeout=10m make -w -C mcs/class/System run-test
-${TESTCMD} --label=System.XML --timeout=5m make -w -C mcs/class/System.XML run-test
-${TESTCMD} --label=Mono.Security --timeout=5m make -w -C mcs/class/Mono.Security run-test
-${TESTCMD} --label=System.Security --timeout=5m make -w -C mcs/class/System.Security run-test
-${TESTCMD} --label=System.Drawing --timeout=5m make -w -C mcs/class/System.Drawing run-test
-if [[ ${label} == osx-* ]]
-then ${TESTCMD} --label=Windows.Forms --skip
-else ${TESTCMD} --label=Windows.Forms --timeout=5m make -w -C mcs/class/System.Windows.Forms run-test
-fi
-${TESTCMD} --label=System.Data --timeout=5m make -w -C mcs/class/System.Data run-test
-${TESTCMD} --label=System.Data.OracleClient --timeout=5m make -w -C mcs/class/System.Data.OracleClient run-test
-${TESTCMD} --label=System.Design --timeout=5m make -w -C mcs/class/System.Design run-test
-${TESTCMD} --label=Mono.Posix --timeout=5m make -w -C mcs/class/Mono.Posix run-test
-${TESTCMD} --label=System.Web --timeout=30m make -w -C mcs/class/System.Web run-test
-${TESTCMD} --label=System.Web.Services --timeout=5m make -w -C mcs/class/System.Web.Services run-test
-${TESTCMD} --label=System.Runtime.SFS --timeout=5m make -w -C mcs/class/System.Runtime.Serialization.Formatters.Soap run-test
-${TESTCMD} --label=System.Runtime.Remoting --timeout=5m make -w -C mcs/class/System.Runtime.Remoting run-test
-${TESTCMD} --label=Cscompmgd --timeout=5m make -w -C mcs/class/Cscompmgd run-test
-${TESTCMD} --label=Commons.Xml.Relaxng --timeout=5m make -w -C mcs/class/Commons.Xml.Relaxng run-test
-${TESTCMD} --label=System.ServiceProcess --timeout=5m make -w -C mcs/class/System.ServiceProcess run-test
-${TESTCMD} --label=I18N.CJK --timeout=5m make -w -C mcs/class/I18N/CJK run-test
-${TESTCMD} --label=I18N.West --timeout=5m make -w -C mcs/class/I18N/West run-test
-${TESTCMD} --label=I18N.MidEast --timeout=5m make -w -C mcs/class/I18N/MidEast run-test
-${TESTCMD} --label=System.DirectoryServices --timeout=5m make -w -C mcs/class/System.DirectoryServices run-test
-${TESTCMD} --label=Microsoft.Build.Engine --timeout=5m make -w -C mcs/class/Microsoft.Build.Engine run-test
-${TESTCMD} --label=Microsoft.Build.Framework --timeout=5m make -w -C mcs/class/Microsoft.Build.Framework run-test
-${TESTCMD} --label=Microsoft.Build.Tasks --timeout=5m make -w -C mcs/class/Microsoft.Build.Tasks run-test
-${TESTCMD} --label=Microsoft.Build.Utilities --timeout=5m make -w -C mcs/class/Microsoft.Build.Utilities run-test
-${TESTCMD} --label=Mono.C5 --timeout=5m make -w -C mcs/class/Mono.C5 run-test
-${TESTCMD} --label=System.Configuration --timeout=5m make -w -C mcs/class/System.Configuration run-test
-${TESTCMD} --label=System.Transactions --timeout=5m make -w -C mcs/class/System.Transactions run-test
-${TESTCMD} --label=System.Web.Extensions --timeout=5m make -w -C mcs/class/System.Web.Extensions run-test
-${TESTCMD} --label=System.Core --timeout=15m make -w -C mcs/class/System.Core run-test
-${TESTCMD} --label=symbolicate --timeout=60m make -w -C mcs/tools/mono-symbolicate check
-${TESTCMD} --label=System.Xml.Linq --timeout=5m make -w -C mcs/class/System.Xml.Linq run-test
-${TESTCMD} --label=System.Data.DSE --timeout=5m make -w -C mcs/class/System.Data.DataSetExtensions run-test
-${TESTCMD} --label=System.Web.Abstractions --timeout=5m make -w -C mcs/class/System.Web.Abstractions run-test
-${TESTCMD} --label=System.Web.Routing --timeout=5m make -w -C mcs/class/System.Web.Routing run-test
-${TESTCMD} --label=System.Runtime.Serialization --timeout=5m make -w -C mcs/class/System.Runtime.Serialization run-test
-${TESTCMD} --label=System.IdentityModel --timeout=5m make -w -C mcs/class/System.IdentityModel run-test
-${TESTCMD} --label=System.ServiceModel --timeout=15m make -w -C mcs/class/System.ServiceModel run-test
-${TESTCMD} --label=System.ServiceModel.Web --timeout=5m make -w -C mcs/class/System.ServiceModel.Web run-test
-${TESTCMD} --label=System.Web.Extensions-standalone --timeout=5m make -w -C mcs/class/System.Web.Extensions run-standalone-test
-${TESTCMD} --label=System.ComponentModel.DataAnnotations --timeout=5m make -w -C mcs/class/System.ComponentModel.DataAnnotations run-test
-${TESTCMD} --label=Mono.CodeContracts --timeout=5m make -w -C mcs/class/Mono.CodeContracts run-test
-${TESTCMD} --label=System.Runtime.Caching --timeout=5m make -w -C mcs/class/System.Runtime.Caching run-test
-${TESTCMD} --label=System.Data.Services --timeout=5m make -w -C mcs/class/System.Data.Services run-test
-${TESTCMD} --label=System.Web.DynamicData --timeout=5m make -w -C mcs/class/System.Web.DynamicData run-test
-${TESTCMD} --label=Mono.CSharp --timeout=5m make -w -C mcs/class/Mono.CSharp run-test
-${TESTCMD} --label=WindowsBase --timeout=5m make -w -C mcs/class/WindowsBase run-test
-${TESTCMD} --label=System.Numerics --timeout=5m make -w -C mcs/class/System.Numerics run-test
-${TESTCMD} --label=System.Runtime.DurableInstancing --timeout=5m make -w -C mcs/class/System.Runtime.DurableInstancing run-test
-${TESTCMD} --label=System.ServiceModel.Discovery --timeout=5m make -w -C mcs/class/System.ServiceModel.Discovery run-test
-${TESTCMD} --label=System.Xaml --timeout=5m make -w -C mcs/class/System.Xaml run-test
-${TESTCMD} --label=System.Net.Http --timeout=5m make -w -C mcs/class/System.Net.Http run-test
-${TESTCMD} --label=System.Json --timeout=5m make -w -C mcs/class/System.Json run-test
-${TESTCMD} --label=System.Threading.Tasks.Dataflow --timeout=5m make -w -C mcs/class/System.Threading.Tasks.Dataflow run-test
-${TESTCMD} --label=Mono.Debugger.Soft --timeout=5m make -w -C mcs/class/Mono.Debugger.Soft run-test
-${TESTCMD} --label=Microsoft.Build --timeout=5m make -w -C mcs/class/Microsoft.Build run-test
-${TESTCMD} --label=monodoc --timeout=10m make -w -C mcs/tools/mdoc run-test
-${TESTCMD} --label=Microsoft.Build-12 --timeout=10m make -w -C mcs/class/Microsoft.Build run-test PROFILE=xbuild_12
-${TESTCMD} --label=Microsoft.Build.Engine-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Engine run-test PROFILE=xbuild_12
-${TESTCMD} --label=Microsoft.Build.Framework-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Framework run-test PROFILE=xbuild_12
-${TESTCMD} --label=Microsoft.Build.Tasks-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Tasks run-test PROFILE=xbuild_12
-${TESTCMD} --label=Microsoft.Build.Utilities-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Utilities run-test PROFILE=xbuild_12
-${TESTCMD} --label=Microsoft.Build-14 --timeout=60m make -w -C mcs/class/Microsoft.Build run-test PROFILE=xbuild_14
-${TESTCMD} --label=Microsoft.Build.Engine-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Engine run-test PROFILE=xbuild_14
-${TESTCMD} --label=Microsoft.Build.Framework-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Framework run-test PROFILE=xbuild_14
-${TESTCMD} --label=Microsoft.Build.Tasks-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Tasks run-test PROFILE=xbuild_14
-${TESTCMD} --label=Microsoft.Build.Utilities-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Utilities run-test PROFILE=xbuild_14
-rm -fr /tmp/jenkins-temp-aspnet*
+
+make check-ci
diff --git a/scripts/ci/run-test-default.sh b/scripts/ci/run-test-default.sh
new file mode 100755 (executable)
index 0000000..bcce919
--- /dev/null
@@ -0,0 +1,86 @@
+#!/bin/bash -e
+
+export TESTCMD=`dirname "${BASH_SOURCE[0]}"`/run-step.sh
+
+${TESTCMD} --label=mini --timeout=5m make -w -C mono/mini -k check
+${TESTCMD} --label=runtime --timeout=160m make -w -C mono/tests -k test-wrench V=1 CI=1
+${TESTCMD} --label=corlib --timeout=30m make -w -C mcs/class/corlib run-test
+${TESTCMD} --label=verify --timeout=15m make -w -C runtime mcs-compileall
+${TESTCMD} --label=profiler --timeout=30m make -w -C mono/profiler -k check
+${TESTCMD} --label=compiler --timeout=30m make -w -C mcs/tests run-test
+${TESTCMD} --label=compiler-errors --timeout=30m make -w -C mcs/errors run-test
+${TESTCMD} --label=System --timeout=10m make -w -C mcs/class/System run-test
+${TESTCMD} --label=System.XML --timeout=5m make -w -C mcs/class/System.XML run-test
+${TESTCMD} --label=Mono.Security --timeout=5m make -w -C mcs/class/Mono.Security run-test
+${TESTCMD} --label=System.Security --timeout=5m make -w -C mcs/class/System.Security run-test;
+${TESTCMD} --label=System.Drawing --timeout=5m make -w -C mcs/class/System.Drawing run-test
+if [[ ${label} == osx-* ]]
+then ${TESTCMD} --label=Windows.Forms --skip;
+else ${TESTCMD} --label=Windows.Forms --timeout=5m make -w -C mcs/class/System.Windows.Forms run-test
+fi
+${TESTCMD} --label=System.Data --timeout=5m make -w -C mcs/class/System.Data run-test
+${TESTCMD} --label=System.Data.OracleClient --timeout=5m make -w -C mcs/class/System.Data.OracleClient run-test;
+${TESTCMD} --label=System.Design --timeout=5m make -w -C mcs/class/System.Design run-test;
+${TESTCMD} --label=Mono.Posix --timeout=5m make -w -C mcs/class/Mono.Posix run-test
+${TESTCMD} --label=System.Web --timeout=30m make -w -C mcs/class/System.Web run-test
+${TESTCMD} --label=System.Web.Services --timeout=5m make -w -C mcs/class/System.Web.Services run-test
+${TESTCMD} --label=System.Runtime.SFS --timeout=5m make -w -C mcs/class/System.Runtime.Serialization.Formatters.Soap run-test;
+${TESTCMD} --label=System.Runtime.Remoting --timeout=5m make -w -C mcs/class/System.Runtime.Remoting run-test;
+${TESTCMD} --label=Cscompmgd --timeout=5m make -w -C mcs/class/Cscompmgd run-test;
+${TESTCMD} --label=Commons.Xml.Relaxng --timeout=5m make -w -C mcs/class/Commons.Xml.Relaxng run-test;
+${TESTCMD} --label=System.ServiceProcess --timeout=5m make -w -C mcs/class/System.ServiceProcess run-test;
+${TESTCMD} --label=I18N.CJK --timeout=5m make -w -C mcs/class/I18N/CJK run-test
+${TESTCMD} --label=I18N.West --timeout=5m make -w -C mcs/class/I18N/West run-test
+${TESTCMD} --label=I18N.MidEast --timeout=5m make -w -C mcs/class/I18N/MidEast run-test
+${TESTCMD} --label=System.DirectoryServices --timeout=5m make -w -C mcs/class/System.DirectoryServices run-test
+${TESTCMD} --label=Microsoft.Build.Engine --timeout=5m make -w -C mcs/class/Microsoft.Build.Engine run-test
+${TESTCMD} --label=Microsoft.Build.Framework --timeout=5m make -w -C mcs/class/Microsoft.Build.Framework run-test
+${TESTCMD} --label=Microsoft.Build.Tasks --timeout=5m make -w -C mcs/class/Microsoft.Build.Tasks run-test
+${TESTCMD} --label=Microsoft.Build.Utilities --timeout=5m make -w -C mcs/class/Microsoft.Build.Utilities run-test
+${TESTCMD} --label=Mono.C5 --timeout=5m make -w -C mcs/class/Mono.C5 run-test
+${TESTCMD} --label=System.Configuration --timeout=5m make -w -C mcs/class/System.Configuration run-test
+${TESTCMD} --label=System.Transactions --timeout=5m make -w -C mcs/class/System.Transactions run-test
+${TESTCMD} --label=System.Web.Extensions --timeout=5m make -w -C mcs/class/System.Web.Extensions run-test
+${TESTCMD} --label=System.Core --timeout=15m make -w -C mcs/class/System.Core run-test
+${TESTCMD} --label=symbolicate --timeout=60m make -w -C mcs/tools/mono-symbolicate check
+${TESTCMD} --label=System.Xml.Linq --timeout=5m make -w -C mcs/class/System.Xml.Linq run-test
+${TESTCMD} --label=System.Data.DSE --timeout=5m make -w -C mcs/class/System.Data.DataSetExtensions run-test
+${TESTCMD} --label=System.Web.Abstractions --timeout=5m make -w -C mcs/class/System.Web.Abstractions run-test
+${TESTCMD} --label=System.Web.Routing --timeout=5m make -w -C mcs/class/System.Web.Routing run-test
+${TESTCMD} --label=System.Runtime.Serialization --timeout=5m make -w -C mcs/class/System.Runtime.Serialization run-test
+${TESTCMD} --label=System.IdentityModel --timeout=5m make -w -C mcs/class/System.IdentityModel run-test
+${TESTCMD} --label=System.ServiceModel --timeout=15m make -w -C mcs/class/System.ServiceModel run-test
+${TESTCMD} --label=System.ServiceModel.Web --timeout=5m make -w -C mcs/class/System.ServiceModel.Web run-test
+${TESTCMD} --label=System.Web.Extensions-standalone --timeout=5m make -w -C mcs/class/System.Web.Extensions run-standalone-test
+${TESTCMD} --label=System.ComponentModel.DataAnnotations --timeout=5m make -w -C mcs/class/System.ComponentModel.DataAnnotations run-test
+${TESTCMD} --label=Mono.CodeContracts --timeout=5m make -w -C mcs/class/Mono.CodeContracts run-test
+${TESTCMD} --label=System.Runtime.Caching --timeout=5m make -w -C mcs/class/System.Runtime.Caching run-test
+${TESTCMD} --label=System.Data.Services --timeout=5m make -w -C mcs/class/System.Data.Services run-test
+${TESTCMD} --label=System.Web.DynamicData --timeout=5m make -w -C mcs/class/System.Web.DynamicData run-test
+${TESTCMD} --label=Mono.CSharp --timeout=5m make -w -C mcs/class/Mono.CSharp run-test
+${TESTCMD} --label=WindowsBase --timeout=5m make -w -C mcs/class/WindowsBase run-test
+${TESTCMD} --label=System.Numerics --timeout=5m make -w -C mcs/class/System.Numerics run-test
+${TESTCMD} --label=System.Runtime.DurableInstancing --timeout=5m make -w -C mcs/class/System.Runtime.DurableInstancing run-test
+${TESTCMD} --label=System.ServiceModel.Discovery --timeout=5m make -w -C mcs/class/System.ServiceModel.Discovery run-test
+${TESTCMD} --label=System.Xaml --timeout=5m make -w -C mcs/class/System.Xaml run-test
+${TESTCMD} --label=System.Net.Http --timeout=5m make -w -C mcs/class/System.Net.Http run-test
+${TESTCMD} --label=System.Json --timeout=5m make -w -C mcs/class/System.Json run-test
+${TESTCMD} --label=System.Threading.Tasks.Dataflow --timeout=5m make -w -C mcs/class/System.Threading.Tasks.Dataflow run-test
+${TESTCMD} --label=Mono.Debugger.Soft --timeout=5m make -w -C mcs/class/Mono.Debugger.Soft run-test
+${TESTCMD} --label=Microsoft.Build --timeout=5m make -w -C mcs/class/Microsoft.Build run-test
+${TESTCMD} --label=monodoc --timeout=10m make -w -C mcs/tools/mdoc run-test
+${TESTCMD} --label=Microsoft.Build-12 --timeout=10m make -w -C mcs/class/Microsoft.Build run-test PROFILE=xbuild_12
+${TESTCMD} --label=Microsoft.Build.Engine-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Engine run-test PROFILE=xbuild_12
+${TESTCMD} --label=Microsoft.Build.Framework-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Framework run-test PROFILE=xbuild_12
+${TESTCMD} --label=Microsoft.Build.Tasks-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Tasks run-test PROFILE=xbuild_12
+${TESTCMD} --label=Microsoft.Build.Utilities-12 --timeout=60m make -w -C mcs/class/Microsoft.Build.Utilities run-test PROFILE=xbuild_12
+${TESTCMD} --label=Microsoft.Build-14 --timeout=60m make -w -C mcs/class/Microsoft.Build run-test PROFILE=xbuild_14
+${TESTCMD} --label=Microsoft.Build.Engine-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Engine run-test PROFILE=xbuild_14
+${TESTCMD} --label=Microsoft.Build.Framework-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Framework run-test PROFILE=xbuild_14
+${TESTCMD} --label=Microsoft.Build.Tasks-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Tasks run-test PROFILE=xbuild_14
+${TESTCMD} --label=Microsoft.Build.Utilities-14 --timeout=60m make -w -C mcs/class/Microsoft.Build.Utilities run-test PROFILE=xbuild_14
+if [[ ${label} == osx-* ]]
+then ${TESTCMD} --label=ms-test-suite --timeout=15m make -w -C acceptance-tests check-ms-test-suite
+else ${TESTCMD} --label=ms-test-suite --skip;
+fi
+rm -fr /tmp/jenkins-temp-aspnet*
diff --git a/scripts/ci/run-test-mobile_static.sh b/scripts/ci/run-test-mobile_static.sh
new file mode 100755 (executable)
index 0000000..168fd8c
--- /dev/null
@@ -0,0 +1,38 @@
+#!/bin/bash -e
+
+TESTCMD=`dirname "${BASH_SOURCE[0]}"`/run-step.sh
+
+if test -n "${MONO_LLVMONLY}";
+then
+${TESTCMD} --label=mini --timeout=5m make -w -C mono/mini -k llvmonlycheck
+else
+${TESTCMD} --label=mini --timeout=5m make -w -C mono/mini -k fullaotcheck
+fi
+
+${TESTCMD} --label=runtime --timeout=160m make -w -C mono/tests -k test-wrench V=1 CI=1
+${TESTCMD} --label=corlib --timeout=30m make -w -C mcs/class/corlib run-test
+${TESTCMD} --label=verify --timeout=15m make -w -C runtime mcs-compileall
+${TESTCMD} --label=profiler --timeout=30m make -w -C mono/profiler -k check
+${TESTCMD} --label=compiler --timeout=30m make -w -C mcs/tests run-test
+${TESTCMD} --label=compiler-errors --timeout=30m make -w -C mcs/errors run-test
+${TESTCMD} --label=System --timeout=10m make -w -C mcs/class/System run-test
+${TESTCMD} --label=System.XML --timeout=5m make -w -C mcs/class/System.XML run-test
+${TESTCMD} --label=Mono.Security --timeout=5m make -w -C mcs/class/Mono.Security run-test
+${TESTCMD} --label=System.Data --timeout=5m make -w -C mcs/class/System.Data run-test
+${TESTCMD} --label=System.Web.Services --timeout=5m make -w -C mcs/class/System.Web.Services run-test
+${TESTCMD} --label=I18N.CJK --timeout=5m make -w -C mcs/class/I18N/CJK run-test
+${TESTCMD} --label=I18N.West --timeout=5m make -w -C mcs/class/I18N/West run-test
+${TESTCMD} --label=I18N.MidEast --timeout=5m make -w -C mcs/class/I18N/MidEast run-test
+${TESTCMD} --label=System.Transactions --timeout=5m make -w -C mcs/class/System.Transactions run-test
+${TESTCMD} --label=System.Core --timeout=15m make -w -C mcs/class/System.Core run-test
+${TESTCMD} --label=System.Xml.Linq --timeout=5m make -w -C mcs/class/System.Xml.Linq run-test
+${TESTCMD} --label=System.Runtime.Serialization --timeout=5m make -w -C mcs/class/System.Runtime.Serialization run-test
+${TESTCMD} --label=System.ServiceModel --timeout=15m make -w -C mcs/class/System.ServiceModel run-test
+${TESTCMD} --label=System.ServiceModel.Web --timeout=5m make -w -C mcs/class/System.ServiceModel.Web run-test
+${TESTCMD} --label=System.ComponentModel.DataAnnotations --timeout=5m make -w -C mcs/class/System.ComponentModel.DataAnnotations run-test
+${TESTCMD} --label=Mono.CSharp --timeout=5m make -w -C mcs/class/Mono.CSharp run-test
+${TESTCMD} --label=System.Numerics --timeout=5m make -w -C mcs/class/System.Numerics run-test
+${TESTCMD} --label=System.Net.Http --timeout=5m make -w -C mcs/class/System.Net.Http run-test
+${TESTCMD} --label=System.Json --timeout=5m make -w -C mcs/class/System.Json run-test
+
+rm -fr /tmp/jenkins-temp-aspnet*
diff --git a/scripts/submodules/versions.mk b/scripts/submodules/versions.mk
new file mode 100644 (file)
index 0000000..3d429b8
--- /dev/null
@@ -0,0 +1,123 @@
+#
+# This is a python script and a set of make targets to implement support for conditional submodules
+# There should be a SUBMODULES.json file which contains information about the submodules.
+#
+
+CONFIG=SUBMODULES.json
+SCRIPT=$(top_srcdir)/scripts/submodules/versions.py
+
+# usage $(call ValidateVersionTemplate (name,MAKEFILE VAR,repo name))
+# usage $(call ValidateVersionTemplate (mono,MONO,mono))
+
+define ValidateVersionTemplate
+#$(eval REPOSITORY_$(2):=$(shell test -z $(3) && echo $(1) || echo "$(3)"))
+#$(eval DIRECTORY_$(2):=$(shell python $(SCRIPT) get-dir $(1)))
+#$(eval DIRECTORY_$(2):=$(shell test -z $(DIRECTORY_$(2)) && echo $(1) || echo $(DIRECTORY_$(2))))
+#$(eval MODULE_$(2):=$(shell python $(SCRIPT) get-url $(1)))
+#$(eval NEEDED_$(2)_VERSION:=$(shell python $(SCRIPT) get-rev $(1)))
+#$(eval $(2)_BRANCH_AND_REMOTE:=$(shell python $(SCRIPT) get-remote-branch $(1)))
+
+#$(eval $(2)_VERSION:=$$$$(shell cd $($(2)_PATH) 2>/dev/null && git rev-parse HEAD ))
+
+#$(eval NEEDED_$(2)_BRANCH:=$(word 2, $(subst /, ,$($(2)_BRANCH_AND_REMOTE))))
+#$(eval NEEDED_$(2)_REMOTE:=$(word 1, $(subst /, ,$($(2)_BRANCH_AND_REMOTE))))
+#$(eval $(2)_BRANCH:=$$$$(shell cd $($(2)_PATH) 2>/dev/null && git symbolic-ref --short HEAD 2>/dev/null))
+
+validate-$(1)::
+       @if test x$$(IGNORE_$(2)_VERSION) = "x"; then \
+           if test ! -d $($(2)_PATH); then \
+                       if test x$$(RESET_VERSIONS) != "x"; then \
+                               $(MAKE) reset-$(1) || exit 1; \
+                       else \
+                               echo "Your $(1) checkout is missing, please run 'make reset-$(1)'"; \
+                               touch .validate-versions-failure; \
+                       fi; \
+           else \
+                       if test "x$($(2)_VERSION)" != "x$(NEEDED_$(2)_VERSION)" ; then \
+                               if test x$$(RESET_VERSIONS) != "x"; then \
+                                       $(MAKE) reset-$(1) || exit 1; \
+                               else \
+                                   echo "Your $(1) version is out of date, please run 'make reset-$(1)' (found $($(2)_VERSION), expected $(NEEDED_$(2)_VERSION))"; \
+                                   test -z "$(BUILD_REVISION)" || $(MAKE) test-$(1); \
+                               touch .validate-versions-failure; \
+                               fi; \
+               elif test "x$($(2)_BRANCH)" != "x$(NEEDED_$(2)_BRANCH)" ; then \
+                               if test x$$(RESET_VERSIONS) != "x"; then \
+                                       test -z "$(BUILD_REVISION)" || $(MAKE) test-$(1); \
+                                       $(MAKE) reset-$(1) || exit 1; \
+                               else \
+                                   echo "Your $(1) branch is out of date, please run 'make reset-$(1)' (found $($(2)_BRANCH), expected $(NEEDED_$(2)_BRANCH))"; \
+                               touch .validate-versions-failure; \
+                               fi; \
+              fi; \
+           fi; \
+       fi
+
+test-$(1)::
+       @echo $(1)
+       @echo "   REPOSITORY_$(2)=$(REPOSITORY_$(2))"
+       @echo "   DIRECTORY_$(2)=$(DIRECTORY_$(2))"
+       @echo "   MODULE_$(2)=$(MODULE_$(2))"
+       @echo "   NEEDED_$(2)_VERSION=$(NEEDED_$(2)_VERSION)"
+       @echo "   $(2)_VERSION=$($(2)_VERSION)"
+       @echo "   $(2)_BRANCH_AND_REMOTE=$($(2)_BRANCH_AND_REMOTE)"
+       @echo "   NEEDED_$(2)_BRANCH=$(NEEDED_$(2)_BRANCH)"
+       @echo "   NEEDED_$(2)_REMOTE=$(NEEDED_$(2)_REMOTE)"
+       @echo "   $(2)_BRANCH=$($(2)_BRANCH)"
+       @echo "   $(2)_PATH=$($(2)_PATH) => $(abspath $($(2)_PATH))"
+
+reset-$(1)::
+       @if test -d $($(2)_PATH); then \
+               if ! (cd $($(2)_PATH) && git show $(NEEDED_$(2)_VERSION) >/dev/null 2>&1 && git log -1 $(NEEDED_$(2)_REMOTE/NEEDED_$(2)_BRANCH) >/dev/null 2>&1) ; then \
+                       echo "*** git fetch `basename $$($(2)_PATH)`" && (cd $($(2)_PATH) && git fetch); \
+               fi;  \
+       else \
+               echo "*** git clone $(MODULE_$(2)) --recursive $(DIRECTORY_$(2))" && (cd `dirname $($(2)_PATH)` && git clone $(MODULE_$(2)) --recursive $(DIRECTORY_$(2)) || exit 1 ); \
+       fi
+       @if test x$$(IGNORE_$(2)_VERSION) = "x"; then \
+               echo "*** [$(1)] git checkout -f" $(NEEDED_$(2)_BRANCH) && (cd $($(2)_PATH) ; git checkout -f $(NEEDED_$(2)_BRANCH) || git checkout -f -b $($(2)_BRANCH_AND_REMOTE)); \
+               echo "*** [$(1)] git reset --hard $(NEEDED_$(2)_VERSION)" && (cd $($(2)_PATH) && git reset --hard $(NEEDED_$(2)_VERSION)); \
+       fi
+       @echo "*** [$(1)] git submodule update --init --recursive" && (cd $($(2)_PATH) && git submodule update --init --recursive)
+
+print-$(1)::
+       @printf "*** %-16s %-45s %s (%s)\n" "$(DIRECTORY_$(2))" "$(MODULE_$(2))" "$(NEEDED_$(2)_VERSION)" "$(NEEDED_$(2)_BRANCH)"
+
+.PHONY: validate-$(1) reset-$(1) print-$(1)
+
+reset-versions:: reset-$(1)
+validate-versions:: validate-$(1)
+print-versions:: print-$(1)
+
+endef
+
+reset-versions::
+
+validate-versions::
+       @if test -e .validate-versions-failure; then  \
+               rm .validate-versions-failure; \
+               echo One or more modules needs update;  \
+               exit 1; \
+       else \
+               echo All dependent modules up to date;  \
+       fi
+
+reset:
+       @$(MAKE) validate-versions RESET_VERSIONS=1
+
+__bump-version-%:
+       @if [ "$(REV)" = "" ]; then echo "Usage: make bump-version-$* REV=<ref>"; exit 1; fi
+       python $(SCRIPT) set-rev $* $(REV)
+       @if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to pick up $(REV)." | git commit -F - $(CONFIG); fi
+
+__bump-branch-%:
+       @if [ "$(BRANCH)" = "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+       @if [ "$(REMOTE_BRANCH)" == "" ]; then echo "Usage: make bump-branch-$* BRANCH=<branch> REMOTE_BRANCH=<remote branch>"; exit 1; fi
+       python $(SCRIPT) set-branch $* $(BRANCH)
+       python $(SCRIPT) set-remote-branch $* $(REMOTE_BRANCH)
+       @if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to switch to $(BRANCH) $(REMOTE BRANCH)." | git commit -F - $(CONFIG); fi
+
+__bump-current-version-%:
+       REV=$(shell cd $(ACCEPTANCE_TESTS_PATH)/$* && git log -1 --pretty=format:%H); \
+       python $(SCRIPT) set-rev $* $$REV; \
+       if [ "$(COMMIT)" = "1" ]; then echo "[submodules] Bump $* to pick up $$REV:" | git commit -F - $(CONFIG); fi
diff --git a/scripts/submodules/versions.py b/scripts/submodules/versions.py
new file mode 100755 (executable)
index 0000000..35ded0c
--- /dev/null
@@ -0,0 +1,52 @@
+#!/usr/bin/env python
+
+import sys
+import json
+
+def find_module(submodules, name):
+    for item in submodules:
+        if item["name"] == name:
+            return item
+
+    print("Not found")
+    sys.exit(1)
+
+
+if len(sys.argv) < 2:
+    print("Usage: versions.py <command>")
+    sys.exit(1)
+
+CONFIG_FILE = "SUBMODULES.json"
+command = sys.argv[1]
+
+submodules = json.load(open(CONFIG_FILE))
+
+if command == "get-rev":
+    mod = find_module(submodules, sys.argv[2])
+    print(mod["rev"])
+elif command == "get-url":
+    mod = find_module(submodules, sys.argv[2])
+    print(mod["url"])
+elif command == "get-dir":
+    mod = find_module(submodules, sys.argv[2])
+    print(mod["directory"])
+elif command == "get-remote-branch":
+    mod = find_module(submodules, sys.argv[2])
+    print(mod["remote-branch"])
+elif command == "set-rev":
+    mod = find_module(submodules, sys.argv[2])
+    mod["rev"] = sys.argv[3]
+    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
+elif command == "set-branch":
+    mod = find_module(submodules, sys.argv[2])
+    mod["branch"] = sys.argv[3]
+    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
+elif command == "set-remote-branch":
+    mod = find_module(submodules, sys.argv[2])
+    mod["remote-branch"] = sys.argv[3]
+    json.dump(submodules, open(CONFIG_FILE, "w"), indent = 2)
+elif command == "cat":
+    print(json.dumps(submodules, indent = 2))
+else:
+    print("Unknown command "" + command + "".")
+    sys.exit(1)
index 3b30bc16f83c4375cb87ec9f0ba6b6bb119870a3..9aebe325e6e7506634247e6e38bd61c17ae371e2 100644 (file)
@@ -1,3 +1,3 @@
-SUBDIRS = locale-builder sgen monograph
+SUBDIRS = locale-builder sgen monograph pedump
 
 
index 123d63d2fb1e4353e385d15752b59816663d5417..3c52afc663451226a7b6b16a459081eec5e1bb7b 100644 (file)
@@ -6,18 +6,14 @@ endif
 if DISABLE_EXECUTABLES
 runtime_lib=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
 else
-if !SHARED_MONO
 static_libs=   \
-       $(top_builddir)/mono/metadata/libmonoruntime-static.la  \
+       $(top_builddir)/mono/metadata/libmonoruntimesgen-static.la      \
        $(top_builddir)/mono/io-layer/libwapi.la        \
        $(top_builddir)/mono/utils/libmonoutils.la \
        $(GLIB_LIBS) $(LIBICONV) \
        $(LIBGC_STATIC_LIBS)
 
 runtime_lib=$(top_builddir)/mono/mini/$(LIBMONO_LA) $(static_libs)
-else
-runtime_lib=$(top_builddir)/mono/mini/$(LIBMONO_LA)
-endif
 endif
 
 if DISABLE_EXECUTABLES
@@ -26,7 +22,7 @@ else
 if DISABLE_LIBRARIES
 bin_PROGRAMS =
 else
-if SUPPORT_BOEHM
+if SUPPORT_SGEN
 bin_PROGRAMS = monograph
 endif
 endif
index 64863625da2110e86aec1c37874467bde5810715..b4c6b68c22369b55c3ffcb20899241328b3287f5 100644 (file)
@@ -11,8 +11,7 @@ MONO_OPTIONS_SRC = $(SRC_ROOT)/mcs/class/Mono.Options/Mono.Options/Options.cs
 
 .stamp-clone:
        @if [ ! -d $(CPPSHARP_DIR) ]; then \
-               git clone git@github.com:xamarin/CppSharpBinaries.git $(CPPSHARP_DIR); \
-               touch $@; \
+               git clone git://github.com/xamarin/CppSharpBinaries.git $(CPPSHARP_DIR) && touch $@; \
        fi
 
 MonoAotOffsetsDumper.exe: .stamp-clone MonoAotOffsetsDumper.cs $(MONO_OPTIONS_SRC)
index a5320ba473b1d26bd6825f746255aab4dcbf3cb0..e83ea3e561c2945c7a7b3e08e3b13a5097870eeb 100644 (file)
@@ -764,7 +764,8 @@ namespace CppSharp
                 "MonoException",
                 "MonoTypedRef",
                 "MonoThreadsSync",
-                "SgenThreadInfo"
+                "SgenThreadInfo",
+                "SgenClientThreadInfo"
             };
 
             DumpClasses(writer, ctx, types);
diff --git a/tools/pedump/.gitignore b/tools/pedump/.gitignore
new file mode 100644 (file)
index 0000000..a73a752
--- /dev/null
@@ -0,0 +1,5 @@
+/Makefile.in
+/Makefile
+/pedump
+/pedump.exe
+
diff --git a/tools/pedump/Makefile.am b/tools/pedump/Makefile.am
new file mode 100644 (file)
index 0000000..d329d1f
--- /dev/null
@@ -0,0 +1,31 @@
+
+AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/mono $(LIBGC_CPPFLAGS) $(GLIB_CFLAGS) $(SHARED_CFLAGS)
+
+if DISABLE_EXECUTABLES
+bin_PROGRAMS =
+else
+if DISABLE_LIBRARIES
+bin_PROGRAMS =
+else
+if SUPPORT_SGEN
+bin_PROGRAMS = pedump
+endif
+endif
+endif
+
+pedump_SOURCES =               \
+       pedump.c
+
+pedump_LDADD =                         \
+       $(top_builddir)/mono/metadata/libmonoruntimesgen-static.la \
+       $(top_builddir)/mono/sgen/libmonosgen-static.la \
+       $(top_builddir)/mono/io-layer/libwapi.la        \
+       $(top_builddir)/mono/utils/libmonoutils.la \
+       $(LLVM_LIBS)                    \
+       $(LLVM_LDFLAGS)                 \
+       $(GLIB_LIBS)                    \
+       $(LIBICONV)
+
+if PLATFORM_DARWIN
+pedump_LDFLAGS=-framework CoreFoundation -framework Foundation
+endif
diff --git a/tools/pedump/pedump.c b/tools/pedump/pedump.c
new file mode 100644 (file)
index 0000000..4bbcc69
--- /dev/null
@@ -0,0 +1,750 @@
+/*
+ * pedump.c: Dumps the contents of an extended PE/COFF file
+ *
+ * Author:
+ *   Miguel de Icaza (miguel@ximian.com)
+ *
+ * Copyright 2001-2003 Ximian, Inc (http://www.ximian.com)
+ * Copyright 2004-2009 Novell, Inc (http://www.novell.com)
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
+ */
+#include <config.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <mono/metadata/image.h>
+#include <glib.h>
+#include <mono/metadata/cil-coff.h>
+#include <mono/metadata/mono-endian.h>
+#include <mono/metadata/verify.h>
+#include <mono/metadata/class.h>
+#include <mono/metadata/debug-helpers.h>
+#include <mono/metadata/tokentype.h>
+#include <mono/metadata/appdomain.h>
+#include <mono/metadata/assembly.h>
+#include <mono/metadata/metadata-internals.h>
+#include <mono/metadata/class-internals.h>
+#include <mono/metadata/verify-internals.h>
+#include <mono/metadata/marshal.h>
+#include "mono/utils/mono-digest.h"
+#include <mono/utils/mono-mmap.h>
+#include <mono/utils/mono-counters.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
+gboolean dump_data = TRUE;
+gboolean verify_pe = FALSE;
+gboolean verify_metadata = FALSE;
+gboolean verify_code = FALSE;
+gboolean verify_partial_md = FALSE;
+
+static MonoAssembly *pedump_preload (MonoAssemblyName *aname, gchar **assemblies_path, gpointer user_data);
+static void pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data);
+static MonoAssembly *pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data);
+
+/* unused
+static void
+hex_dump (const char *buffer, int base, int count)
+{
+       int i;
+       
+       for (i = 0; i < count; i++){
+               if ((i % 16) == 0)
+                       printf ("\n0x%08x: ", (unsigned char) base + i);
+
+               printf ("%02x ", (unsigned char) (buffer [i]));
+       }
+}
+*/
+
+static void
+hex8 (const char *label, unsigned char x)
+{
+       printf ("\t%s: 0x%02x\n", label, (unsigned char) x);
+}
+
+static void
+hex16 (const char *label, guint16 x)
+{
+       printf ("\t%s: 0x%04x\n", label, x);
+}
+
+static void
+hex32 (const char *label, guint32 x)
+{
+       printf ("\t%s: 0x%08x\n", label, x);
+}
+
+static void
+dump_coff_header (MonoCOFFHeader *coff)
+{
+       printf ("\nCOFF Header:\n");
+       hex16 ("                Machine", coff->coff_machine);
+       hex16 ("               Sections", coff->coff_sections);
+       hex32 ("             Time stamp", coff->coff_time);
+       hex32 ("Pointer to Symbol Table", coff->coff_symptr);
+       hex32 ("           Symbol Count", coff->coff_symcount);
+       hex16 ("   Optional Header Size", coff->coff_opt_header_size);
+       hex16 ("        Characteristics", coff->coff_attributes);
+
+}
+
+static void
+dump_pe_header (MonoPEHeader *pe)
+{
+       printf ("\nPE Header:\n");
+       hex16 ("         Magic (0x010b)", pe->pe_magic);
+       hex8  ("             LMajor (6)", pe->pe_major);
+       hex8  ("             LMinor (0)", pe->pe_minor);
+       hex32 ("              Code Size", pe->pe_code_size);
+       hex32 ("  Initialized Data Size", pe->pe_data_size);
+       hex32 ("Uninitialized Data Size", pe->pe_uninit_data_size);
+       hex32 ("        Entry Point RVA", pe->pe_rva_entry_point);
+       hex32 ("          Code Base RVA", pe->pe_rva_code_base);
+       hex32 ("          Data Base RVA", pe->pe_rva_data_base);
+       printf ("\n");
+}
+
+static void
+dump_nt_header (MonoPEHeaderNT *nt)
+{
+       printf ("\nNT Header:\n");
+
+       hex32 ("   Image Base (0x400000)", nt->pe_image_base);
+       hex32 ("Section Alignment (8192)", nt->pe_section_align);
+       hex32 ("   File Align (512/4096)", nt->pe_file_alignment);
+       hex16 ("            OS Major (4)", nt->pe_os_major);
+       hex16 ("            OS Minor (0)", nt->pe_os_minor);
+       hex16 ("          User Major (0)", nt->pe_user_major);
+       hex16 ("          User Minor (0)", nt->pe_user_minor);
+       hex16 ("        Subsys major (4)", nt->pe_subsys_major);
+       hex16 ("        Subsys minor (0)", nt->pe_subsys_minor);
+       hex32 ("               Reserverd", nt->pe_reserved_1);
+       hex32 ("              Image Size", nt->pe_image_size);
+       hex32 ("             Header Size", nt->pe_header_size);
+       hex32 ("            Checksum (0)", nt->pe_checksum);
+       hex16 ("               Subsystem", nt->pe_subsys_required);
+       hex16 ("           DLL Flags (0)", nt->pe_dll_flags);
+       hex32 (" Stack Reserve Size (1M)", nt->pe_stack_reserve);
+       hex32 ("Stack commit Size (4096)", nt->pe_stack_commit);
+       hex32 ("  Heap Reserve Size (1M)", nt->pe_heap_reserve);
+       hex32 (" Heap Commit Size (4096)", nt->pe_heap_commit);
+       hex32 ("      Loader flags (0x1)", nt->pe_loader_flags);
+       hex32 ("   Data Directories (16)", nt->pe_data_dir_count);
+}
+
+static void
+dent (const char *label, MonoPEDirEntry de)
+{
+       printf ("\t%s: 0x%08x [0x%08x]\n", label, de.rva, de.size);
+}
+
+static void
+dump_blob (const char *desc, const char* p, guint32 size)
+{
+       int i;
+
+       printf ("%s", desc);
+       if (!p) {
+               printf (" none\n");
+               return;
+       }
+
+       for (i = 0; i < size; ++i) {
+               if (!(i % 16))
+                       printf ("\n\t");
+               printf (" %02X", p [i] & 0xFF);
+       }
+       printf ("\n");
+}
+
+static void
+dump_public_key (MonoImage *m)
+{
+       guint32 size;
+       const char *p;
+
+       p = mono_image_get_public_key (m, &size);
+       dump_blob ("\nPublic key:", p, size);
+}
+
+static void
+dump_strong_name (MonoImage *m)
+{
+       guint32 size;
+       const char *p;
+
+       p = mono_image_get_strong_name (m, &size);
+       dump_blob ("\nStrong name:", p, size);
+}
+
+static void
+dump_datadir (MonoPEDatadir *dd)
+{
+       printf ("\nData directories:\n");
+       dent ("     Export Table", dd->pe_export_table);
+       dent ("     Import Table", dd->pe_import_table);
+       dent ("   Resource Table", dd->pe_resource_table);
+       dent ("  Exception Table", dd->pe_exception_table);
+       dent ("Certificate Table", dd->pe_certificate_table);
+       dent ("      Reloc Table", dd->pe_reloc_table);
+       dent ("            Debug", dd->pe_debug);
+       dent ("        Copyright", dd->pe_copyright);
+       dent ("       Global Ptr", dd->pe_global_ptr);
+       dent ("        TLS Table", dd->pe_tls_table);
+       dent ("Load Config Table", dd->pe_load_config_table);
+       dent ("     Bound Import", dd->pe_bound_import);
+       dent ("              IAT", dd->pe_iat);
+       dent ("Delay Import Desc", dd->pe_delay_import_desc);
+       dent ("       CLI Header", dd->pe_cli_header);
+}
+
+static void
+dump_dotnet_header (MonoDotNetHeader *header)
+{
+       dump_coff_header (&header->coff);
+       dump_pe_header (&header->pe);
+       dump_nt_header (&header->nt);
+       dump_datadir (&header->datadir);
+}
+
+static void
+dump_section_table (MonoSectionTable *st)
+{
+       guint32 flags = st->st_flags;
+               
+       printf ("\n\tName: %s\n", st->st_name);
+       hex32 ("   Virtual Size", st->st_virtual_size);
+       hex32 ("Virtual Address", st->st_virtual_address);
+       hex32 ("  Raw Data Size", st->st_raw_data_size);
+       hex32 ("   Raw Data Ptr", st->st_raw_data_ptr);
+       hex32 ("      Reloc Ptr", st->st_reloc_ptr);
+       hex32 ("     LineNo Ptr", st->st_lineno_ptr);
+       hex16 ("    Reloc Count", st->st_reloc_count);
+       hex16 ("     Line Count", st->st_line_count);
+
+       printf ("\tFlags: %s%s%s%s%s%s%s%s%s%s\n",
+               (flags & SECT_FLAGS_HAS_CODE) ? "code, " : "",
+               (flags & SECT_FLAGS_HAS_INITIALIZED_DATA) ? "data, " : "",
+               (flags & SECT_FLAGS_HAS_UNINITIALIZED_DATA) ? "bss, " : "",
+               (flags & SECT_FLAGS_MEM_DISCARDABLE) ? "discard, " : "",
+               (flags & SECT_FLAGS_MEM_NOT_CACHED) ? "nocache, " : "",
+               (flags & SECT_FLAGS_MEM_NOT_PAGED) ? "nopage, " : "",
+               (flags & SECT_FLAGS_MEM_SHARED) ? "shared, " : "",
+               (flags & SECT_FLAGS_MEM_EXECUTE) ? "exec, " : "",
+               (flags & SECT_FLAGS_MEM_READ) ? "read, " : "",
+               (flags & SECT_FLAGS_MEM_WRITE) ? "write" : "");
+}
+
+static void
+dump_sections (MonoCLIImageInfo *iinfo)
+{
+       const int top = iinfo->cli_header.coff.coff_sections;
+       int i;
+       
+       for (i = 0; i < top; i++)
+               dump_section_table (&iinfo->cli_section_tables [i]);
+}
+
+static void
+dump_cli_header (MonoCLIHeader *ch)
+{
+       printf ("\n");
+       printf ("          CLI header size: %d\n", ch->ch_size);
+       printf ("         Runtime required: %d.%d\n", ch->ch_runtime_major, ch->ch_runtime_minor);
+       printf ("                    Flags: %s, %s, %s, %s\n",
+               (ch->ch_flags & CLI_FLAGS_ILONLY ? "ilonly" : "contains native"),
+               (ch->ch_flags & CLI_FLAGS_32BITREQUIRED ? "32bits" : "32/64"),
+               (ch->ch_flags & CLI_FLAGS_TRACKDEBUGDATA ? "trackdebug" : "no-trackdebug"),
+               (ch->ch_flags & CLI_FLAGS_STRONGNAMESIGNED ? "strongnamesigned" : "notsigned"));
+       dent   ("         Metadata", ch->ch_metadata);
+       hex32  ("Entry Point Token", ch->ch_entry_point);
+       dent   ("     Resources at", ch->ch_resources);
+       dent   ("   Strong Name at", ch->ch_strong_name);
+       dent   ("  Code Manager at", ch->ch_code_manager_table);
+       dent   ("  VTableFixups at", ch->ch_vtable_fixups);
+       dent   ("     EAT jumps at", ch->ch_export_address_table_jumps);
+}      
+
+static void
+dsh (const char *label, MonoImage *meta, MonoStreamHeader *sh)
+{
+       printf ("%s: 0x%08x - 0x%08x [%d == 0x%08x]\n",
+               label,
+               (int)(sh->data - meta->raw_metadata), (int)(sh->data + sh->size - meta->raw_metadata),
+               sh->size, sh->size);
+}
+
+static void
+dump_metadata_header (MonoImage *meta)
+{
+       printf ("\nMetadata header:\n");
+       printf ("           Version: %d.%d\n", meta->md_version_major, meta->md_version_minor);
+       printf ("    Version string: %s\n", meta->version);
+}
+
+static void
+dump_metadata_ptrs (MonoImage *meta)
+{
+       printf ("\nMetadata pointers:\n");
+       dsh ("\tTables (#~)", meta, &meta->heap_tables);
+       dsh ("\t    Strings", meta, &meta->heap_strings);
+       dsh ("\t       Blob", meta, &meta->heap_blob);
+       dsh ("\tUser string", meta, &meta->heap_us);
+       dsh ("\t       GUID", meta, &meta->heap_guid);
+}
+
+static void
+dump_metadata (MonoImage *meta)
+{
+       int table;
+
+       dump_metadata_header (meta);
+
+       dump_metadata_ptrs (meta);
+
+       printf ("Rows:\n");
+       for (table = 0; table < MONO_TABLE_NUM; table++){
+               if (meta->tables [table].rows == 0)
+                       continue;
+               printf ("Table %s: %d records (%d bytes, at %x)\n",
+                       mono_meta_table_name (table),
+                       meta->tables [table].rows,
+                       meta->tables [table].row_size,
+                       (unsigned int)(meta->tables [table].base - meta->raw_data)
+                       );
+       }
+}
+
+static void
+dump_methoddef (MonoImage *metadata, guint32 token)
+{
+       const char *loc;
+
+       if (!token)
+               return;
+       loc = mono_metadata_locate_token (metadata, token);
+
+       printf ("RVA for Entry Point: 0x%08x\n", read32 (loc));
+}
+
+static void
+dump_dotnet_iinfo (MonoImage *image)
+{
+       MonoCLIImageInfo *iinfo = (MonoCLIImageInfo *)image->image_info;
+
+       dump_dotnet_header (&iinfo->cli_header);
+       dump_sections (iinfo);
+       dump_cli_header (&iinfo->cli_cli_header);
+       dump_strong_name (image);
+       dump_public_key (image);
+       dump_metadata (image);
+
+       dump_methoddef (image, iinfo->cli_cli_header.ch_entry_point);
+}
+
+static int
+dump_verify_info (MonoImage *image, int flags)
+{
+       GSList *errors, *tmp;
+       int count = 0, verifiable = 0;
+       const char* desc [] = {
+               "Ok", "Error", "Warning", NULL, "CLS", NULL, NULL, NULL, "Not Verifiable"
+       };
+
+       if (verify_code) { /* verify code */
+               int i;
+               MonoTableInfo *m = &image->tables [MONO_TABLE_METHOD];
+
+               for (i = 0; i < m->rows; ++i) {
+                       MonoMethod *method;
+                       MonoError error;
+
+                       method = mono_get_method_checked (image, MONO_TOKEN_METHOD_DEF | (i+1), NULL, NULL, &error);
+                       if (!method) {
+                               g_print ("Warning: Cannot lookup method with token 0x%08x due to %s\n", i + 1, mono_error_get_message (&error));
+                               mono_error_cleanup (&error);
+                               continue;
+                       }
+                       errors = mono_method_verify (method, flags);
+                       if (errors) {
+                               MonoClass *klass = mono_method_get_class (method);
+                               char *name = mono_type_full_name (&klass->byval_arg);
+                               if (mono_method_signature (method) == NULL) {
+                                       g_print ("In method: %s::%s(ERROR)\n", name, mono_method_get_name (method));
+                               } else {
+                                       char *sig;
+                                       sig = mono_signature_get_desc (mono_method_signature (method), FALSE);  
+                                       g_print ("In method: %s::%s(%s)\n", name, mono_method_get_name (method), sig);
+                                       g_free (sig);
+                               }
+                               g_free (name);
+                       }
+
+                       for (tmp = errors; tmp; tmp = tmp->next) {
+                               MonoVerifyInfo *info = (MonoVerifyInfo *)tmp->data;
+                               g_print ("%s: %s\n", desc [info->status], info->message);
+                               if (info->status == MONO_VERIFY_ERROR) {
+                                       count++;
+                                       verifiable = 3;
+                               }
+                               if(info->status == MONO_VERIFY_NOT_VERIFIABLE) {
+                                       if (verifiable < 2)
+                                               verifiable = 2; 
+                               }
+                       }
+                       mono_free_verify_list (errors);
+               }
+       }
+
+       if (count)
+               g_print ("Error count: %d\n", count);
+       return verifiable;
+}
+
+static void
+usage (void)
+{
+       printf ("Usage is: pedump [--verify error,warn,cls,all,code,fail-on-verifiable,non-strict,valid-only,metadata] file.exe\n");
+       exit (1);
+}
+
+static int
+verify_image_file (const char *fname)
+{
+       GSList *errors = NULL, *tmp;
+       MonoImage *image;
+       MonoTableInfo *table;
+       MonoAssembly *assembly;
+       MonoImageOpenStatus status;
+       int i, count = 0;
+       const char* desc [] = {
+               "Ok", "Error", "Warning", NULL, "CLS", NULL, NULL, NULL, "Not Verifiable"
+       };
+
+       image = mono_image_open_raw (fname, &status);
+       if (!image) {
+               printf ("Could not open %s\n", fname);
+               return 1;
+       }
+
+       if (!mono_verifier_verify_pe_data (image, &errors))
+               goto invalid_image;
+
+       if (!mono_image_load_pe_data (image)) {
+               printf ("Could not load pe data for assembly %s\n", fname);
+               return 1;
+       }
+
+       if (!mono_verifier_verify_cli_data (image, &errors))
+               goto invalid_image;
+
+       if (!mono_image_load_cli_data (image)) {
+               printf ("Could not load cli data for assembly %s\n", fname);
+               return 1;
+       }
+
+       if (!mono_verifier_verify_table_data (image, &errors))
+               goto invalid_image;
+
+       mono_image_load_names (image);
+
+       /*fake an assembly for class loading to work*/
+       assembly = g_new0 (MonoAssembly, 1);
+       assembly->in_gac = FALSE;
+       assembly->image = image;
+       image->assembly = assembly;
+       mono_assembly_fill_assembly_name (image, &assembly->aname);
+
+       /*Finish initializing the runtime*/
+       mono_install_assembly_load_hook (pedump_assembly_load_hook, NULL);
+       mono_install_assembly_search_hook (pedump_assembly_search_hook, NULL);
+
+       mono_init_version ("pedump", image->version);
+
+       mono_install_assembly_preload_hook (pedump_preload, GUINT_TO_POINTER (FALSE));
+
+       mono_icall_init ();
+       mono_marshal_init ();
+
+
+       if (!verify_partial_md && !mono_verifier_verify_full_table_data (image, &errors))
+               goto invalid_image;
+
+
+       table = &image->tables [MONO_TABLE_TYPEDEF];
+       for (i = 1; i <= table->rows; ++i) {
+               MonoError error;
+               guint32 token = i | MONO_TOKEN_TYPE_DEF;
+               MonoClass *klass = mono_class_get_checked (image, token, &error);
+               if (!klass) {
+                       printf ("Could not load class with token %x due to %s\n", token, mono_error_get_message (&error));
+                       mono_error_cleanup (&error);
+                       continue;
+               }
+               mono_class_init (klass);
+               if (mono_class_has_failure (klass)) {
+                       printf ("Error verifying class(0x%08x) %s.%s a type load error happened\n", token, klass->name_space, klass->name);
+                       ++count;
+               }
+
+               mono_class_setup_vtable (klass);
+               if (mono_class_has_failure (klass)) {
+                       printf ("Error verifying class(0x%08x) %s.%s a type load error happened\n", token, klass->name_space, klass->name);
+                       ++count;
+               }
+       }
+       if (count)
+               return 5;
+       return 0;
+
+invalid_image:
+       for (tmp = errors; tmp; tmp = tmp->next) {
+               MonoVerifyInfo *info = (MonoVerifyInfo *)tmp->data;
+               g_print ("%s: %s\n", desc [info->status], info->message);
+               if (info->status == MONO_VERIFY_ERROR)
+                       count++;
+       }
+       mono_free_verify_list (errors);
+       if (count)
+               g_print ("Error count: %d\n", count);
+       return 1;
+}
+
+static gboolean
+try_load_from (MonoAssembly **assembly, const gchar *path1, const gchar *path2,
+                                       const gchar *path3, const gchar *path4, gboolean refonly)
+{
+       gchar *fullpath;
+
+       *assembly = NULL;
+       fullpath = g_build_filename (path1, path2, path3, path4, NULL);
+       if (g_file_test (fullpath, G_FILE_TEST_IS_REGULAR))
+               *assembly = mono_assembly_open_full (fullpath, NULL, refonly);
+
+       g_free (fullpath);
+       return (*assembly != NULL);
+}
+
+static MonoAssembly *
+real_load (gchar **search_path, const gchar *culture, const gchar *name, gboolean refonly)
+{
+       MonoAssembly *result = NULL;
+       gchar **path;
+       gchar *filename;
+       const gchar *local_culture;
+       gint len;
+
+       if (!culture || *culture == '\0') {
+               local_culture = "";
+       } else {
+               local_culture = culture;
+       }
+
+       filename =  g_strconcat (name, ".dll", NULL);
+       len = strlen (filename);
+
+       for (path = search_path; *path; path++) {
+               if (**path == '\0')
+                       continue; /* Ignore empty ApplicationBase */
+
+               /* See test cases in bug #58992 and bug #57710 */
+               /* 1st try: [culture]/[name].dll (culture may be empty) */
+               strcpy (filename + len - 4, ".dll");
+               if (try_load_from (&result, *path, local_culture, "", filename, refonly))
+                       break;
+
+               /* 2nd try: [culture]/[name].exe (culture may be empty) */
+               strcpy (filename + len - 4, ".exe");
+               if (try_load_from (&result, *path, local_culture, "", filename, refonly))
+                       break;
+
+               /* 3rd try: [culture]/[name]/[name].dll (culture may be empty) */
+               strcpy (filename + len - 4, ".dll");
+               if (try_load_from (&result, *path, local_culture, name, filename, refonly))
+                       break;
+
+               /* 4th try: [culture]/[name]/[name].exe (culture may be empty) */
+               strcpy (filename + len - 4, ".exe");
+               if (try_load_from (&result, *path, local_culture, name, filename, refonly))
+                       break;
+       }
+
+       g_free (filename);
+       return result;
+}
+
+/*
+ * Try to load referenced assemblies from assemblies_path.
+ */
+static MonoAssembly *
+pedump_preload (MonoAssemblyName *aname,
+                                gchar **assemblies_path,
+                                gpointer user_data)
+{
+       MonoAssembly *result = NULL;
+       gboolean refonly = GPOINTER_TO_UINT (user_data);
+
+       if (assemblies_path && assemblies_path [0] != NULL) {
+               result = real_load (assemblies_path, aname->culture, aname->name, refonly);
+       }
+
+       return result;
+}
+
+static GList *loaded_assemblies = NULL;
+
+static void
+pedump_assembly_load_hook (MonoAssembly *assembly, gpointer user_data)
+{
+       loaded_assemblies = g_list_prepend (loaded_assemblies, assembly);
+}
+
+static MonoAssembly *
+pedump_assembly_search_hook (MonoAssemblyName *aname, gpointer user_data)
+{
+        GList *tmp;
+
+       for (tmp = loaded_assemblies; tmp; tmp = tmp->next) {
+               MonoAssembly *ass = (MonoAssembly *)tmp->data;
+               if (mono_assembly_names_equal (aname, &ass->aname))
+                      return ass;
+       }
+       return NULL;
+}
+
+#define VALID_ONLY_FLAG 0x08000000
+#define VERIFY_CODE_ONLY MONO_VERIFY_ALL + 1 
+#define VERIFY_METADATA_ONLY VERIFY_CODE_ONLY + 1
+#define VERIFY_PARTIAL_METADATA VERIFY_CODE_ONLY + 2
+
+int
+main (int argc, char *argv [])
+{
+       int image_result = 0;
+       MonoImage *image;
+       char *file = NULL;
+       char *flags = NULL;
+       MiniVerifierMode verifier_mode = MONO_VERIFIER_MODE_VERIFIABLE;
+       const char *flag_desc [] = {"error", "warn", "cls", "all", "code", "fail-on-verifiable", "non-strict", "valid-only", "metadata", "partial-md", NULL};
+       guint flag_vals [] = {MONO_VERIFY_ERROR, MONO_VERIFY_WARNING, MONO_VERIFY_CLS, MONO_VERIFY_ALL, VERIFY_CODE_ONLY, MONO_VERIFY_FAIL_FAST, MONO_VERIFY_NON_STRICT, VALID_ONLY_FLAG, VERIFY_METADATA_ONLY, VERIFY_PARTIAL_METADATA, 0};
+       int i, verify_flags = MONO_VERIFY_REPORT_ALL_ERRORS, run_new_metadata_verifier = 0;
+       
+       for (i = 1; i < argc; i++){
+               if (argv [i][0] != '-'){
+                       file = argv [i];
+                       continue;
+               }
+
+               if (strcmp (argv [i], "--help") == 0)
+                       usage ();
+               else if (strcmp (argv [i], "--verify") == 0) {
+                       verify_pe = 1;
+                       dump_data = 0;
+                       ++i;
+                       flags = argv [i];
+               } else {
+                       usage ();
+               }
+       }
+       
+       if (!file)
+               usage ();
+
+#ifndef DISABLE_PERFCOUNTERS
+       mono_perfcounters_init ();
+#endif
+       mono_counters_init ();
+       mono_metadata_init ();
+       mono_images_init ();
+       mono_assemblies_init ();
+       mono_loader_init ();
+       if (verify_pe) {
+               char *tok = strtok (flags, ",");
+
+               verify_metadata = 1;
+               verify_code = 0;
+               while (tok) {
+                       for (i = 0; flag_desc [i]; ++i) {
+                               if (strcmp (tok, flag_desc [i]) == 0) {
+                                       if (flag_vals [i] == VERIFY_CODE_ONLY) {
+                                               verify_metadata = 0;
+                                               verify_code = 1;
+                                       } else if(flag_vals [i] == MONO_VERIFY_ALL) {
+                                               verify_code = 1;
+                                       } else if(flag_vals [i] == VERIFY_METADATA_ONLY) {
+                                               verify_metadata = 0;
+                                               run_new_metadata_verifier = 1;
+                                       } else if(flag_vals [i] == VERIFY_PARTIAL_METADATA) {
+                                               verify_partial_md = 1;
+                                       }
+                                       if (flag_vals [i] == VALID_ONLY_FLAG)
+                                               verifier_mode = MONO_VERIFIER_MODE_VALID;
+                                       else
+                                               verify_flags |= flag_vals [i];
+                                       break;
+                               }
+                       }
+                       if (!flag_desc [i])
+                               g_print ("Unknown verify flag %s\n", tok);
+                       tok = strtok (NULL, ",");
+               }
+
+               mono_verifier_set_mode (verifier_mode);
+               /**/
+       }
+
+       if (verify_pe || run_new_metadata_verifier) {
+               run_new_metadata_verifier = 1;
+       }
+       
+       if (run_new_metadata_verifier) {
+               mono_verifier_set_mode (verifier_mode);
+
+               image_result = verify_image_file (file);
+               if (image_result == 1 || !verify_code)
+                       return image_result;
+       }
+
+       image = mono_image_open (file, NULL);
+       if (!image){
+               fprintf (stderr, "Cannot open image %s\n", file);
+               exit (1);
+       }
+
+       if (dump_data)
+               dump_dotnet_iinfo (image);
+       if (verify_pe) {
+               MonoAssembly *assembly;
+               MonoImage *image;
+               MonoImageOpenStatus status;
+               int code_result;
+
+               mono_verifier_set_mode (verifier_mode);
+
+               assembly = mono_assembly_open (file, NULL);
+               /*fake an assembly for netmodules so the verifier works*/
+               if (!assembly && (image = mono_image_open (file, &status)) && image->tables [MONO_TABLE_ASSEMBLY].rows == 0) {
+                       assembly = g_new0 (MonoAssembly, 1);
+                       assembly->in_gac = FALSE;
+                       assembly->image = image;
+                       image->assembly = assembly;
+               }
+
+               if (!assembly) {
+                       g_print ("Could not open assembly %s\n", file);
+                       return 4;
+               }
+
+               code_result = dump_verify_info (assembly->image, verify_flags);
+               return code_result ? code_result : image_result;
+       } else
+               mono_image_close (image);
+       
+       return 0;
+}
+
index f5d2a72139742369c24805e39e3eb138bfc5e811..e80e90020170ca10e5e40aa65c008b9c9bd94bd8 100644 (file)
@@ -3,3 +3,4 @@ Makefile
 Makefile.in
 /sgen-grep-binprot
 /*.o
+/*.a
index 582cbae3189dbcf4356cbd2f9d737661801e4cdf..c14346f088c28fa88b0b434d4ef80d084634e979 100644 (file)
@@ -2,8 +2,18 @@ bin_PROGRAMS = sgen-grep-binprot
 
 AM_CPPFLAGS =  $(GLIB_CFLAGS) -I$(top_srcdir)
 
+noinst_LIBRARIES = libsgen-grep-binprot.a libsgen-grep-binprot32p.a libsgen-grep-binprot64p.a
+libsgen_grep_binprot_a_SOURCES = sgen-grep-binprot.c sgen-grep-binprot.h
+libsgen_grep_binprot_a_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir)
+libsgen_grep_binprot32p_a_SOURCES = sgen-grep-binprot.c sgen-grep-binprot.h
+libsgen_grep_binprot32p_a_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir) -DBINPROT_SIZEOF_VOID_P=4 -DBINPROT_HAS_HEADER
+libsgen_grep_binprot64p_a_SOURCES = sgen-grep-binprot.c sgen-grep-binprot.h
+libsgen_grep_binprot64p_a_CPPFLAGS = $(GLIB_CFLAGS) -I$(top_srcdir) -DBINPROT_SIZEOF_VOID_P=8 -DBINPROT_HAS_HEADER
+
 sgen_grep_binprot_SOURCES = \
-       sgen-grep-binprot.c
+       sgen-grep-binprot-main.c        \
+       sgen-entry-stream.c     \
+       sgen-entry-stream.h
 
 sgen_grep_binprot_LDADD = \
-       $(GLIB_LIBS) $(LIBICONV)
+       $(GLIB_LIBS) $(LIBICONV) libsgen-grep-binprot.a libsgen-grep-binprot32p.a libsgen-grep-binprot64p.a
index 52f0ab26ee3557c0b070fe2456c780d454bb5ebb..27eb6276fadbd15d1166548a14c936d4b4928a4d 100755 (executable)
@@ -11,21 +11,25 @@ import subprocess
 
 parser = OptionParser (usage = "Usage: %prog [options] BINARY-PROTOCOL")
 parser.add_option ('--histogram', action = 'store_true', dest = 'histogram', help = "pause time histogram")
+parser.add_option ('--scatter', action = 'store_true', dest = 'scatter', help = "pause time scatterplot")
 parser.add_option ('--minor', action = 'store_true', dest = 'minor', help = "only show minor collections in histogram")
 parser.add_option ('--major', action = 'store_true', dest = 'major', help = "only show major collections in histogram")
 (options, files) = parser.parse_args ()
 
 show_histogram = False
+show_scatter = False
 show_minor = True
 show_major = True
 if options.minor:
-    show_histogram = True
     show_major = False
 if options.major:
-    show_histogram = True
     show_minor = False
 if options.histogram:
     show_histogram = True
+if options.scatter:
+    show_scatter = True
+if (options.minor or options.major) and not options.scatter:
+    show_histogram = True
 
 script_path = os.path.realpath (__file__)
 sgen_grep_path = os.path.join (os.path.dirname (script_path), 'sgen-grep-binprot')
@@ -129,7 +133,7 @@ class ConcurrentMajorGCEventGroup(MajorGCEventGroup):
 def parse_next_major_gc(data, i):
     assert i >= 0
     # Find start or full event.
-    while i < len(data) and data[i].gc_type not in ['start', 'full']:
+    while i < len(data) and data[i].gc_type not in ['start', 'full', 'nursery+update']:
         i += 1
     if i == len(data):
         return None
@@ -160,31 +164,71 @@ def parse_major_gcs(data):
         event_group, i = maybe_event_group
         major_gc_events.append(event_group)
 
-if show_histogram:
-    minor_pausetimes = []
-    major_pausetimes = []
+if show_histogram or show_scatter:
+    bin_data_minor = []
+    bin_data_both = []
+    bin_data_major = []
+    bin_names = []
+
+    timeline_x = []
+    timeline_y = []
+    timeline_c = []
 
     for rec in data:
         pause = rec.stop - rec.start
-        if rec.minor_work and rec.major_work and show_minor and show_major:
-            major_pausetimes.append (pause)
-        else:
+
+        color = None
+        if rec.major_work:
             if rec.minor_work:
-                minor_pausetimes.append (pause)
-            if rec.major_work:
-                major_pausetimes.append (pause)
+                color = 'purple'
+            else:
+                color = 'red' if show_major else None
+        else:
+            color = 'blue' if show_minor else None
+
+        if color:
+            timeline_x.append(rec.start)
+            timeline_y.append(pause)
+            timeline_c.append(color)
 
-    pausetimes = []
-    colors = []
-    if show_minor:
-        pausetimes.append(minor_pausetimes)
-        colors.append('blue')
-    if show_major:
-        pausetimes.append(major_pausetimes)
-        colors.append('red')
+        for i in range(100):
+            time = (1.3)**(i+6)
+            prev_time = 0 if i==0 else (1.3)**(i+5)
+            if len(bin_names) <= i:
+                bin_data_minor.append(0)
+                bin_data_both.append(0)
+                bin_data_major.append(0)
+                bin_names.append('%d-%dms' % (int(prev_time), int(time)))
+            if pause <= time:
+                if rec.major_work:
+                    if rec.minor_work:
+                        bin_data_both[i] += pause
+                    else:
+                        bin_data_major[i] += pause
+                else:
+                    bin_data_minor[i] += pause
+                break
+
+    bin_data_minor=np.array(bin_data_minor)
+    bin_data_both=np.array(bin_data_both)
+    bin_data_major=np.array(bin_data_major)
 
-    plt.hist (pausetimes, 100, stacked=True, log=True, color=colors)
-    plt.xlabel ('Pause time in msec')
+    if show_scatter:
+        plt.scatter(timeline_x, timeline_y, c=timeline_c)
+    else:
+        if show_minor:
+            plt.bar(range(len(bin_data_minor)), bin_data_minor, color='blue', label="minor")  #, align='center')
+            plt.bar(range(len(bin_data_both)), bin_data_both, bottom=bin_data_minor, color='purple', label="minor & major")
+            if show_major:
+                plt.bar(range(len(bin_data_major)), bin_data_major, bottom=(bin_data_minor+bin_data_both), color='red', label="only major")
+        else:
+            plt.bar(range(len(bin_data_both)), bin_data_both, color='purple', label="minor & major")
+            plt.bar(range(len(bin_data_major)), bin_data_major, bottom=bin_data_both, color='red')
+        plt.xticks(range(len(bin_names)), bin_names)
+        plt.ylabel('Cumulative time spent in GC pauses (ms)')
+        plt.xlabel('GC pause length')
+        plt.xticks(rotation=60)
+        plt.legend(loc='upper left')
 else:
     major_gc_event_groups = parse_major_gcs(data)
 
diff --git a/tools/sgen/sgen-entry-stream.c b/tools/sgen/sgen-entry-stream.c
new file mode 100644 (file)
index 0000000..479f0c2
--- /dev/null
@@ -0,0 +1,67 @@
+/*
+ * sgen-entry-stream.c: EntryStream implementation
+ *
+ * Copyright (C) 2016 Xamarin Inc
+ *
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
+ */
+
+#include <stdlib.h>
+#include <unistd.h>
+#include <glib.h>
+#include "sgen-entry-stream.h"
+
+#define BUFFER_SIZE (1 << 20)
+
+void
+init_stream (EntryStream *stream, int file)
+{
+       stream->file = file;
+       stream->buffer = g_malloc0 (BUFFER_SIZE);
+       stream->end = stream->buffer + BUFFER_SIZE;
+       stream->pos = stream->end;
+}
+
+void
+reset_stream (EntryStream *stream)
+{
+       stream->end = stream->buffer + BUFFER_SIZE;
+       stream->pos = stream->end;
+       lseek (stream->file, 0, SEEK_SET);
+}
+
+void
+close_stream (EntryStream *stream)
+{
+       g_free (stream->buffer);
+}
+
+gboolean
+refill_stream (EntryStream *in, size_t size)
+{
+       size_t remainder = in->end - in->pos;
+       ssize_t refilled;
+       g_assert (size > 0);
+       g_assert (in->pos >= in->buffer);
+       if (in->pos + size <= in->end)
+               return TRUE;
+       memmove (in->buffer, in->pos, remainder);
+       in->pos = in->buffer;
+       refilled = read (in->file, in->buffer + remainder, BUFFER_SIZE - remainder);
+       if (refilled < 0)
+               return FALSE;
+       g_assert (refilled + remainder <= BUFFER_SIZE);
+       in->end = in->buffer + refilled + remainder;
+       return in->end - in->buffer >= size;
+}
+
+ssize_t
+read_stream (EntryStream *stream, void *out, size_t size)
+{
+       if (refill_stream (stream, size)) {
+               memcpy (out, stream->pos, size);
+               stream->pos += size;
+               return size;
+       }
+       return 0;
+}
diff --git a/tools/sgen/sgen-entry-stream.h b/tools/sgen/sgen-entry-stream.h
new file mode 100644 (file)
index 0000000..93dd2bf
--- /dev/null
@@ -0,0 +1,20 @@
+/*
+ * sgen-entry-stream.h: EntryStream definitions
+ *
+ * Copyright (C) 2016 Xamarin Inc
+ *
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
+ */
+
+typedef struct {
+       int file;
+       char *buffer;
+       const char *end;
+       const char *pos;
+} EntryStream;
+
+void init_stream (EntryStream *stream, int file);
+void reset_stream (EntryStream *stream);
+void close_stream (EntryStream *stream);
+gboolean refill_stream (EntryStream *in, size_t size);
+ssize_t read_stream (EntryStream *stream, void *out, size_t size);
diff --git a/tools/sgen/sgen-grep-binprot-main.c b/tools/sgen/sgen-grep-binprot-main.c
new file mode 100644 (file)
index 0000000..bcfbb54
--- /dev/null
@@ -0,0 +1,108 @@
+/*
+ * sgen-grep-binprot-main.c: Binary protocol entries reader 
+ *
+ * Copyright (C) 2016 Xamarin Inc
+ *
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <assert.h>
+#include <glib.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include "sgen-entry-stream.h"
+#include "sgen-grep-binprot.h"
+
+/* FIXME Add grepers for specific endianness */
+GrepEntriesFunction grepers [] = {
+       sgen_binary_protocol_grep_entries32p, /* We have header, structures are packed, 32 bit word */
+       sgen_binary_protocol_grep_entries64p, /* We have header, structures are packed, 64 bit word */
+       sgen_binary_protocol_grep_entries /* No header, uses default word size and structure layout */
+};
+
+int
+main (int argc, char *argv[])
+{
+       int num_args = argc - 1;
+       int num_nums = 0;
+       int num_vtables = 0;
+       int i;
+       long nums [num_args];
+       long vtables [num_args];
+       gboolean dump_all = FALSE;
+       gboolean color_output = FALSE;
+       gboolean pause_times = FALSE;
+       const char *input_path = NULL;
+       int input_file;
+       EntryStream stream;
+       unsigned long long first_entry_to_consider = 0;
+
+       for (i = 0; i < num_args; ++i) {
+               char *arg = argv [i + 1];
+               char *next_arg = argv [i + 2];
+               if (!strcmp (arg, "--all")) {
+                       dump_all = TRUE;
+               } else if (!strcmp (arg, "--pause-times")) {
+                       pause_times = TRUE;
+               } else if (!strcmp (arg, "-v") || !strcmp (arg, "--vtable")) {
+                       vtables [num_vtables++] = strtoul (next_arg, NULL, 16);
+                       ++i;
+               } else if (!strcmp (arg, "-s") || !strcmp (arg, "--start-at")) {
+                       first_entry_to_consider = strtoull (next_arg, NULL, 10);
+                       ++i;
+               } else if (!strcmp (arg, "-c") || !strcmp (arg, "--color")) {
+                       color_output = TRUE;
+               } else if (!strcmp (arg, "-i") || !strcmp (arg, "--input")) {
+                       input_path = next_arg;
+                       ++i;
+               } else if (!strcmp (arg, "--help")) {
+                       printf (
+                               "\n"
+                               "Usage:\n"
+                               "\n"
+                               "\tsgen-grep-binprot [options] [pointer...]\n"
+                               "\n"
+                               "Examples:\n"
+                               "\n"
+                               "\tsgen-grep-binprot --all </tmp/binprot\n"
+                               "\tsgen-grep-binprot --input /tmp/binprot --color 0xdeadbeef\n"
+                               "\n"
+                               "Options:\n"
+                               "\n"
+                               "\t--all                    Print all entries.\n"
+                               "\t--color, -c              Highlight matches in color.\n"
+                               "\t--help                   You're looking at it.\n"
+                               "\t--input FILE, -i FILE    Read input from FILE instead of standard input.\n"
+                               "\t--pause-times            Print GC pause times.\n"
+                               "\t--start-at N, -s N       Begin filtering at the Nth entry.\n"
+                               "\t--vtable PTR, -v PTR     Search for vtable pointer PTR.\n"
+                               "\n");
+                       return 0;
+               } else {
+                       nums [num_nums++] = strtoul (arg, NULL, 16);
+               }
+       }
+
+       if (dump_all)
+               assert (!pause_times);
+       if (pause_times)
+               assert (!dump_all);
+
+       input_file = input_path ? open (input_path, O_RDONLY) : STDIN_FILENO;
+       init_stream (&stream, input_file);
+       for (i = 0; i < sizeof (grepers) / sizeof (GrepEntriesFunction); i++) {
+               if (grepers [i] (&stream, num_nums, nums, num_vtables, vtables, dump_all,
+                               pause_times, color_output, first_entry_to_consider)) {
+                       /* Success */
+                       break;
+               }
+               reset_stream (&stream);
+       }
+       close_stream (&stream);
+       if (input_path)
+               close (input_file);
+
+       return 0;
+}
index 49aa9506009e61411990764a262ad454eeeca8cf..4ca309f38eb6d3d8ef67ea96e4a2290bb0395b24 100644 (file)
@@ -1,13 +1,52 @@
+/*
+ * sgen-grep-binprot.c: Platform specific binary protocol entries reader
+ *
+ * Copyright (C) 2016 Xamarin Inc
+ *
+ * Licensed under the MIT license. See LICENSE file in the project root for full license information.
+ */
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <assert.h>
 #include <glib.h>
 #include <unistd.h>
 #include <fcntl.h>
-
-#define SGEN_BINARY_PROTOCOL
-#define MONO_INTERNAL
-
+#include <stdint.h>
+#include <inttypes.h>
+#include <config.h>
+#include "sgen-entry-stream.h"
+#include "sgen-grep-binprot.h"
+
+#ifdef BINPROT_HAS_HEADER
+#define PACKED_SUFFIX  p
+#else
+#define PROTOCOL_STRUCT_ATTR
+#define PACKED_SUFFIX
+#endif
+
+#ifndef BINPROT_SIZEOF_VOID_P
+#define BINPROT_SIZEOF_VOID_P SIZEOF_VOID_P
+#define ARCH_SUFFIX
+#endif
+
+#if BINPROT_SIZEOF_VOID_P == 4
+typedef int32_t mword;
+#define MWORD_FORMAT_SPEC_D PRId32
+#define MWORD_FORMAT_SPEC_P PRIx32
+#ifndef ARCH_SUFFIX
+#define ARCH_SUFFIX    32
+#endif
+#else
+typedef int64_t mword;
+#define MWORD_FORMAT_SPEC_D PRId64
+#define MWORD_FORMAT_SPEC_P PRIx64
+#ifndef ARCH_SUFFIX
+#define ARCH_SUFFIX    64
+#endif
+#endif
+#define TYPE_SIZE      mword
+#define TYPE_POINTER   mword
 #include <mono/sgen/sgen-protocol.h>
 
 #define SGEN_PROTOCOL_EOF      255
 #define WORKER(t)      ((t) & 0x80)
 
 #define MAX_ENTRY_SIZE (1 << 10)
-#define BUFFER_SIZE (1 << 20)
-
-typedef struct {
-       int file;
-       char *buffer;
-       const char *end;
-       const char *pos;
-} EntryStream;
-
-static void
-init_stream (EntryStream *stream, int file)
-{
-       stream->file = file;
-       stream->buffer = g_malloc0 (BUFFER_SIZE);
-       stream->end = stream->buffer + BUFFER_SIZE;
-       stream->pos = stream->end;
-}
-
-static void
-close_stream (EntryStream *stream)
-{
-       g_free (stream->buffer);
-}
-
-static gboolean
-refill_stream (EntryStream *in, size_t size)
-{
-       size_t remainder = in->end - in->pos;
-       ssize_t refilled;
-       g_assert (size > 0);
-       g_assert (in->pos >= in->buffer);
-       if (in->pos + size <= in->end)
-               return TRUE;
-       memmove (in->buffer, in->pos, remainder);
-       in->pos = in->buffer;
-       refilled = read (in->file, in->buffer + remainder, BUFFER_SIZE - remainder);
-       if (refilled < 0)
-               return FALSE;
-       g_assert (refilled + remainder <= BUFFER_SIZE);
-       in->end = in->buffer + refilled + remainder;
-       return in->end - in->buffer >= size;
-}
-
-static ssize_t
-read_stream (EntryStream *stream, void *out, size_t size)
-{
-       if (refill_stream (stream, size)) {
-               memcpy (out, stream->pos, size);
-               stream->pos += size;
-               return size;
-       }
-       return 0;
-}
 
 static int
 read_entry (EntryStream *stream, void *data)
@@ -224,10 +210,10 @@ print_entry_content (int entries_size, PrintEntry *entries, gboolean color_outpu
                        printf ("%lld", *(long long*) entries [i].data);
                        break;
                case TYPE_SIZE:
-                       printf ("%lu", *(size_t*) entries [i].data);
+                       printf ("%"MWORD_FORMAT_SPEC_D, *(mword*) entries [i].data);
                        break;
                case TYPE_POINTER:
-                       printf ("%p", *(gpointer*) entries [i].data);
+                       printf ("0x%"MWORD_FORMAT_SPEC_P, *(mword*) entries [i].data);
                        break;
                case TYPE_BOOL:
                        printf ("%s", *(gboolean*) entries [i].data ? "true" : "false");
@@ -431,13 +417,13 @@ print_entry (int type, void *data, int num_nums, int *match_indices, gboolean co
 
 #define TYPE_INT int
 #define TYPE_LONGLONG long long
-#define TYPE_SIZE size_t
-#define TYPE_POINTER gpointer
+#define TYPE_SIZE mword
+#define TYPE_POINTER mword
 
 static gboolean
-matches_interval (gpointer ptr, gpointer start, int size)
+matches_interval (mword ptr, mword start, int size)
 {
-       return ptr >= start && (char*)ptr < (char*)start + size;
+       return ptr >= start && ptr < start + size;
 }
 
 /* Returns the index of the field where a match was found,
@@ -445,7 +431,7 @@ matches_interval (gpointer ptr, gpointer start, int size)
  * BINARY_PROTOCOL_MATCH for a match with no index.
  */
 static int
-match_index (gpointer ptr, int type, void *data)
+match_index (mword ptr, int type, void *data)
 {
        switch (TYPE (type)) {
 
@@ -508,7 +494,7 @@ match_index (gpointer ptr, int type, void *data)
 }
 
 static gboolean
-is_vtable_match (gpointer ptr, int type, void *data)
+is_vtable_match (mword ptr, int type, void *data)
 {
        switch (TYPE (type)) {
 
@@ -575,85 +561,53 @@ is_vtable_match (gpointer ptr, int type, void *data)
 #undef TYPE_SIZE
 #undef TYPE_POINTER
 
-int
-main (int argc, char *argv[])
+static gboolean
+sgen_binary_protocol_read_header (EntryStream *stream)
+{
+#ifdef BINPROT_HAS_HEADER
+       char data [MAX_ENTRY_SIZE];
+       int type = read_entry (stream, data);
+       if (type == SGEN_PROTOCOL_EOF)
+               return FALSE;
+       if (type == PROTOCOL_ID (binary_protocol_header)) {
+               PROTOCOL_STRUCT (binary_protocol_header) * str = (PROTOCOL_STRUCT (binary_protocol_header) *) data;
+               if (str->check == PROTOCOL_HEADER_CHECK && str->ptr_size == BINPROT_SIZEOF_VOID_P)
+                       return TRUE;
+       }
+       return FALSE;
+#else
+       /*
+        * This implementation doesn't account for the presence of a header,
+        * reading all the entries with the default configuration of the host
+        * machine. It has to be used only after all other implementations
+        * fail to identify a header, for backward compatibility.
+        */
+       return TRUE;
+#endif
+}
+
+#define CONC(A, B) CONC_(A, B)
+#define CONC_(A, B) A##B
+#define GREP_ENTRIES_FUNCTION_NAME CONC(sgen_binary_protocol_grep_entries, CONC(ARCH_SUFFIX,PACKED_SUFFIX))
+
+gboolean
+GREP_ENTRIES_FUNCTION_NAME (EntryStream *stream, int num_nums, long nums [], int num_vtables, long vtables [],
+                       gboolean dump_all, gboolean pause_times, gboolean color_output, unsigned long long first_entry_to_consider)
 {
        int type;
        void *data = g_malloc0 (MAX_ENTRY_SIZE);
-       int num_args = argc - 1;
-       int num_nums = 0;
-       int num_vtables = 0;
        int i;
-       long nums [num_args];
-       long vtables [num_args];
-       gboolean dump_all = FALSE;
-       gboolean pause_times = FALSE;
        gboolean pause_times_stopped = FALSE;
        gboolean pause_times_concurrent = FALSE;
        gboolean pause_times_finish = FALSE;
-       gboolean color_output = FALSE;
        long long pause_times_ts = 0;
-       const char *input_path = NULL;
-       int input_file;
-       EntryStream stream;
        unsigned long long entry_index;
-       unsigned long long first_entry_to_consider = 0;
-
-       for (i = 0; i < num_args; ++i) {
-               char *arg = argv [i + 1];
-               char *next_arg = argv [i + 2];
-               if (!strcmp (arg, "--all")) {
-                       dump_all = TRUE;
-               } else if (!strcmp (arg, "--pause-times")) {
-                       pause_times = TRUE;
-               } else if (!strcmp (arg, "-v") || !strcmp (arg, "--vtable")) {
-                       vtables [num_vtables++] = strtoul (next_arg, NULL, 16);
-                       ++i;
-               } else if (!strcmp (arg, "-s") || !strcmp (arg, "--start-at")) {
-                       first_entry_to_consider = strtoull (next_arg, NULL, 10);
-                       ++i;
-               } else if (!strcmp (arg, "-c") || !strcmp (arg, "--color")) {
-                       color_output = TRUE;
-               } else if (!strcmp (arg, "-i") || !strcmp (arg, "--input")) {
-                       input_path = next_arg;
-                       ++i;
-               } else if (!strcmp (arg, "--help")) {
-                       printf (
-                               "\n"
-                               "Usage:\n"
-                               "\n"
-                               "\tsgen-grep-binprot [options] [pointer...]\n"
-                               "\n"
-                               "Examples:\n"
-                               "\n"
-                               "\tsgen-grep-binprot --all </tmp/binprot\n"
-                               "\tsgen-grep-binprot --input /tmp/binprot --color 0xdeadbeef\n"
-                               "\n"
-                               "Options:\n"
-                               "\n"
-                               "\t--all                    Print all entries.\n"
-                               "\t--color, -c              Highlight matches in color.\n"
-                               "\t--help                   You're looking at it.\n"
-                               "\t--input FILE, -i FILE    Read input from FILE instead of standard input.\n"
-                               "\t--pause-times            Print GC pause times.\n"
-                               "\t--start-at N, -s N       Begin filtering at the Nth entry.\n"
-                               "\t--vtable PTR, -v PTR     Search for vtable pointer PTR.\n"
-                               "\n");
-                       return 0;
-               } else {
-                       nums [num_nums++] = strtoul (arg, NULL, 16);
-               }
-       }
 
-       if (dump_all)
-               assert (!pause_times);
-       if (pause_times)
-               assert (!dump_all);
+       if (!sgen_binary_protocol_read_header (stream))
+               return FALSE;
 
-       input_file = input_path ? open (input_path, O_RDONLY) : STDIN_FILENO;
-       init_stream (&stream, input_file);
        entry_index = 0;
-       while ((type = read_entry (&stream, data)) != SGEN_PROTOCOL_EOF) {
+       while ((type = read_entry (stream, data)) != SGEN_PROTOCOL_EOF) {
                if (entry_index < first_entry_to_consider)
                        goto next_entry;
                if (pause_times) {
@@ -689,15 +643,15 @@ main (int argc, char *argv[])
                } else {
                        int match_indices [num_nums + 1];
                        gboolean match = is_always_match (type);
-                       match_indices [num_nums] = num_nums == 0 ? match_index (NULL, type, data) : BINARY_PROTOCOL_NO_MATCH;
+                       match_indices [num_nums] = num_nums == 0 ? match_index (0, type, data) : BINARY_PROTOCOL_NO_MATCH;
                        match = match_indices [num_nums] != BINARY_PROTOCOL_NO_MATCH;
                        for (i = 0; i < num_nums; ++i) {
-                               match_indices [i] = match_index ((gpointer) nums [i], type, data);
+                               match_indices [i] = match_index ((mword) nums [i], type, data);
                                match = match || match_indices [i] != BINARY_PROTOCOL_NO_MATCH;
                        }
                        if (!match) {
                                for (i = 0; i < num_vtables; ++i) {
-                                       if (is_vtable_match ((gpointer) vtables [i], type, data)) {
+                                       if (is_vtable_match ((mword) vtables [i], type, data)) {
                                                match = TRUE;
                                                break;
                                        }
@@ -713,10 +667,6 @@ main (int argc, char *argv[])
        next_entry:
                ++entry_index;
        }
-       close_stream (&stream);
-       if (input_path)
-               close (input_file);
        g_free (data);
-
-       return 0;
+       return TRUE;
 }
diff --git a/tools/sgen/sgen-grep-binprot.h b/tools/sgen/sgen-grep-binprot.h
new file mode 100644 (file)
index 0000000..9025c9a
--- /dev/null
@@ -0,0 +1,12 @@
+typedef gboolean (*GrepEntriesFunction) (EntryStream *stream, int num_nums, long nums [], int num_vtables, long vtables [],
+               gboolean dump_all, gboolean pause_times, gboolean color_output, unsigned long long first_entry_to_consider);
+
+gboolean
+sgen_binary_protocol_grep_entries (EntryStream *stream, int num_nums, long nums [], int num_vtables, long vtables [],
+                        gboolean dump_all, gboolean pause_times, gboolean color_output, unsigned long long first_entry_to_consider);
+gboolean
+sgen_binary_protocol_grep_entries32p (EntryStream *stream, int num_nums, long nums [], int num_vtables, long vtables [],
+                        gboolean dump_all, gboolean pause_times, gboolean color_output, unsigned long long first_entry_to_consider);
+gboolean
+sgen_binary_protocol_grep_entries64p (EntryStream *stream, int num_nums, long nums [], int num_vtables, long vtables [],
+                        gboolean dump_all, gboolean pause_times, gboolean color_output, unsigned long long first_entry_to_consider);
index 2a49fea8b19401abb058883d9ad6fe8b3a2b6d86..a6daf8b05286c8b10b8dabe416649fee9906b609 100644 (file)
 /* No GC support. */
 /* #undef HAVE_NULL_GC */
 
-/* Have oprofile support */
-/* #undef HAVE_OPROFILE */
-
 /* Define to 1 if you have the `poll' function. */
 /* #undef HAVE_POLL */